internal MessagePipeOptions Without(MessagePipeFlags flags) => new MessagePipeOptions(TypeModel ?? TypeModel.DefaultModel, CancellationToken, Flags & ~flags, PipeOptions, UserState, MaxMessageSize #if DEBUG , Log #endif );
/// <summary> /// Create a new instance /// </summary> public MessagePipeOptions(TypeModel typeModel = default, CancellationToken cancellationToken = default, MessagePipeFlags flags = MessagePipeFlags.None, PipeOptions pipeOptions = default, object userState = default, long maxMessageSize = default #if DEBUG , Action <string> log = default #endif ) { TypeModel = typeModel; CancellationToken = cancellationToken; PipeOptions = pipeOptions; UserState = userState; MaxMessageSize = maxMessageSize; Flags = flags; #if DEBUG Log = log; #endif }
internal bool OmitsFlag(MessagePipeFlags flag) => (Flags & flag) == 0;
internal bool HasFlag(MessagePipeFlags flag) => (Flags & flag) != 0;