code: func (ab *AtomicBool) SetToIf(old, new bool) (set bool) {
  	var o, n int32
  	if old {
  		o = 1
  	}
  	if new {
  		n = 1
  	}
  	return atomic.CompareAndSwapInt32((*int32)(ab), o, n)
  }
docs: // SetToIf sets the Boolean to new only if the Boolean matches the old
  // Returns whether the set was done