internal Task ChooseAsync(BinaryChoice choice) { if (used) { throw new LinearityViolationException(); } else { used = true; return(communicator.ChooseAsync(choice)); } }
internal void Choose(BinaryChoice choice) { if (used) { throw new LinearityViolationException(); } else { used = true; communicator.Choose(choice); } }
public BinaryTransitionResult(BinaryChoice choice, string message) : this(choice, message, true) { }
public BinaryTransitionResult(BinaryChoice choice, string message, bool success) : base(message, success) { Choice = choice; }
public virtual Task ChooseAsync(BinaryChoice choice) { return(SendAsync(choice)); }
public virtual void Choose(BinaryChoice choice) { Send(choice); }