Represents a monix.execution.Cancelable that can be assigned only
once to another cancelable reference.
Similar to monix.execution.cancelables.MultiAssignmentCancelable,
except that in case of multi-assignment, it throws a
If the assignment happens after this cancelable has been canceled, then on
assignment the reference will get canceled too.
Useful in case you need a forward reference.
Sets the underlying cancelable reference with s.
In case this SingleAssignmentCancelable is already canceled,
then the reference value will also be canceled on assignment.
Throws IllegalStateException in case this cancelable has already
Cancels the unit of work represented by this reference.
Guaranteed idempotency - calling it multiple times should have the
same side-effect as calling it only once. Implementations
of this method should also be thread-safe.
true in case this cancelable hasn't been canceled,
or false otherwise.