public static Stream <T> Value <T>(Behavior <T> b) => OperationalInternal.ValueImpl(b);
public static Stream <T> Updates <T>(Behavior <T> b) => OperationalInternal.UpdatesImpl(b);
internal static Stream <T> UpdatesImpl <T>(Behavior <T> b) => TransactionInternal.Apply( (trans, _) => b.Updates().Coalesce(trans, (left, right) => right), false);
internal static Stream <T> ValueImpl <T>(Behavior <T> b) => TransactionInternal.Apply((trans, _) => b.Value(trans), false);
internal Stream <T> GateImpl(Behavior <bool> b) => this.SnapshotImpl(b, (a, pred) => pred ? MaybeInternal.Some(a) : MaybeInternal.None).FilterMaybeInternal();
internal Stream <TResult> SnapshotImpl <TResult>(Behavior <TResult> b) => this.SnapshotImpl(b, (_, a) => a);