public Logic(Task terminationSignal, UniqueKillSwitchStage <T> stage) : base(terminationSignal, stage.Shape) { _stage = stage; SetHandler(stage.In, this); SetHandler(stage.Out, this); }
public Logic(Task terminationSignal, UniqueKillSwitchStage <T> killSwitch) : base(terminationSignal, killSwitch.Shape) { SetHandler(killSwitch.In, onPush: () => Push(killSwitch.Out, Grab(killSwitch.In))); SetHandler(killSwitch.Out, onPull: () => Pull(killSwitch.In)); }