/// <summary> /// Set how to treat whitespace when parsing. /// </summary> public OptionsBuilder WithWhitespaceTreatment(WhitespaceTreatments whitespaceTreatment) { // WhitespaceTreatment not recognized if (!Utils.IsLegalFlagEnum(whitespaceTreatment)) { Throw.ArgumentException($"{nameof(WhitespaceTreatment)} has an unexpected value, '{WhitespaceTreatment}'", nameof(whitespaceTreatment)); } return(WithWhitespaceTreatmentInternal(whitespaceTreatment)); }
internal HeaderEnumerator(int count, ReadOnlyMemory <char> buffer, WhitespaceTreatments whitespaceTreatment) { IsDisposed = false; Count = count; Buffer = buffer; WhitespaceTreatment = whitespaceTreatment; _Current = default; NextHeaderIndex = 0; CurrentBufferIndex = 0; }
private HeadersReader( ReaderStateMachine stateMachine, BoundConfigurationBase <T> config, CharacterLookup charLookup, IReaderAdapter?inner, IAsyncReaderAdapter?innerAsync, BufferWithPushback buffer, ReadRowEnding rowEndingOverride ) { LogHelper.StateTransition_NewHeadersReader(); Configuration = config; Inner.SetAllowNull(inner); InnerAsync.SetAllowNull(innerAsync); var options = Configuration.Options; MemoryPool = Configuration.MemoryPool; BufferSizeHint = options.ReadBufferSizeHint; Columns = config.DeserializeColumns; StateMachine = stateMachine; stateMachine.Initialize( charLookup, options.EscapedValueStartAndEnd, options.EscapedValueEscapeCharacter, rowEndingOverride, // this can be something OTHER than what was provided, due to RowEnding.Detect ReadHeader.Never, false, options.WhitespaceTreatment.HasFlag(WhitespaceTreatments.TrimBeforeValues), options.WhitespaceTreatment.HasFlag(WhitespaceTreatments.TrimAfterValues) ); Buffer = buffer; HeaderCount = 0; PushBackLength = 0; WhitespaceTreatment = options.WhitespaceTreatment; }
internal OptionsBuilder WithWhitespaceTreatmentInternal(WhitespaceTreatments whitespaceTreatment) { WhitespaceTreatment = whitespaceTreatment; return(this); }