Class OptionsBuilder
Builder for Options.
Options itself is immutable, but OptionsBuilder is chainable and mutable.
Inheritance
Namespace: Cesil
Assembly: Cesil.dll
Syntax
public sealed class OptionsBuilder : Object
Properties
CommentCharacter
Which character, if any, is used to indicate the start of a comment.
Typically not set, but when set often '#'.
Declaration
public Nullable<char> CommentCharacter { get; }
Property Value
| Type | Description |
|---|---|
| System.Nullable<System.Char> |
DynamicRowDisposal
When to dispose any dynamic rows returned by an IReader or IAsyncReader.
Declaration
public DynamicRowDisposal DynamicRowDisposal { get; }
Property Value
| Type | Description |
|---|---|
| DynamicRowDisposal |
EscapedValueEscapeCharacter
Character used to escape another character in an escaped value.
Typically a double quote, but can be null for some formats and MUST be null for formats without an EscapedValueStartAndEnd.
Declaration
public Nullable<char> EscapedValueEscapeCharacter { get; }
Property Value
| Type | Description |
|---|---|
| System.Nullable<System.Char> |
EscapedValueStartAndEnd
Character used to start an escaped value.
Typically a double quote, but can be null for some formats.
Declaration
public Nullable<char> EscapedValueStartAndEnd { get; }
Property Value
| Type | Description |
|---|---|
| System.Nullable<System.Char> |
ExtraColumnTreatment
How to handle extra colums encountered when reading a CSV.
Declaration
public ExtraColumnTreatment ExtraColumnTreatment { get; }
Property Value
| Type | Description |
|---|---|
| ExtraColumnTreatment |
MemoryPoolProvider
Provider for MemoryPools needed during reading or writing CSVs.
Declaration
public IMemoryPoolProvider MemoryPoolProvider { get; }
Property Value
| Type | Description |
|---|---|
| IMemoryPoolProvider |
ReadBufferSizeHint
How big a buffer to request from the MemoryPool for servicing read operations.
Set to 0 to use a default size.
Declaration
public int ReadBufferSizeHint { get; }
Property Value
| Type | Description |
|---|---|
| System.Int32 |
ReadHeader
Whether or not to read headers when reading a CSV.
Declaration
public ReadHeader ReadHeader { get; }
Property Value
| Type | Description |
|---|---|
| ReadHeader |
ReadRowEnding
The sequence of characters used to end a row when reading.
Declaration
public ReadRowEnding ReadRowEnding { get; }
Property Value
| Type | Description |
|---|---|
| ReadRowEnding |
TypeDescriber
The instance of ITypeDescriber that will be used to discover which columns to read or write, as well as the manner of their reading and writing.
Declaration
public ITypeDescriber TypeDescriber { get; }
Property Value
| Type | Description |
|---|---|
| ITypeDescriber |
ValueSeparator
Character used to separate two values in a row
Typically a comma.
Declaration
public string ValueSeparator { get; }
Property Value
| Type | Description |
|---|---|
| System.String |
WhitespaceTreatment
How to handle whitespace when encountered during parsing.
Declaration
public WhitespaceTreatments WhitespaceTreatment { get; }
Property Value
| Type | Description |
|---|---|
| WhitespaceTreatments |
WriteBufferSizeHint
How big a buffer to request from the MemoryPool for buffering write operations.
Set to 0 to disable buffering.
Set to null to use a default size.
Declaration
public Nullable<int> WriteBufferSizeHint { get; }
Property Value
| Type | Description |
|---|---|
| System.Nullable<System.Int32> |
WriteHeader
Whether or not to write headers when writing a CSV.
Declaration
public WriteHeader WriteHeader { get; }
Property Value
| Type | Description |
|---|---|
| WriteHeader |
WriteRowEnding
The sequence of characters used to end a row when writing.
Declaration
public WriteRowEnding WriteRowEnding { get; }
Property Value
| Type | Description |
|---|---|
| WriteRowEnding |
WriteTrailingRowEnding
Whether or not to write a row ending after the last row in a CSV.
Declaration
public WriteTrailingRowEnding WriteTrailingRowEnding { get; }
Property Value
| Type | Description |
|---|---|
| WriteTrailingRowEnding |
Methods
CreateBuilder()
Create a new, empty, OptionsBuilder.
Declaration
public static OptionsBuilder CreateBuilder()
Returns
| Type | Description |
|---|---|
| OptionsBuilder |
CreateBuilder(Options)
Create a new OptionsBuilder, copying defaults from the given Options.
Declaration
public static OptionsBuilder CreateBuilder(Options options)
Parameters
| Type | Name | Description |
|---|---|---|
| Options | options |
Returns
| Type | Description |
|---|---|
| OptionsBuilder |
ToOptions()
Create the Options object that has been configured by this builder.
Declaration
public Options ToOptions()
Returns
| Type | Description |
|---|---|
| Options |
ToString()
Returns a representation of this OptionsBuilder object.
Only for debugging, this value is not guaranteed to be stable.
Declaration
public override string ToString()
Returns
| Type | Description |
|---|---|
| System.String |
WithCommentCharacter(Nullable<Char>)
Set or clear the character that starts a row that is a comment.
Declaration
public OptionsBuilder WithCommentCharacter(Nullable<char> commentStart)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Nullable<System.Char> | commentStart |
Returns
| Type | Description |
|---|---|
| OptionsBuilder |
WithDynamicRowDisposal(DynamicRowDisposal)
Set when dynamic rows returned by a reader are disposed.
The options are either when the reader is disposed (the default) or when the row is explicitly disposed.
Declaration
public OptionsBuilder WithDynamicRowDisposal(DynamicRowDisposal dynamicRowDisposal)
Parameters
| Type | Name | Description |
|---|---|---|
| DynamicRowDisposal | dynamicRowDisposal |
Returns
| Type | Description |
|---|---|
| OptionsBuilder |
WithEscapedValueEscapeCharacter(Nullable<Char>)
Set the character used to escape another character in an escaped value.
If this is non-null, EscapedValueStartAndEnd must also be non-null.
Declaration
public OptionsBuilder WithEscapedValueEscapeCharacter(Nullable<char> escape)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Nullable<System.Char> | escape |
Returns
| Type | Description |
|---|---|
| OptionsBuilder |
WithEscapedValueStartAndEnd(Nullable<Char>)
Set the character used to start an escaped value.
If this is null, EscapedValueEscapeCharacter must also be null.
Declaration
public OptionsBuilder WithEscapedValueStartAndEnd(Nullable<char> escapeStart)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Nullable<System.Char> | escapeStart |
Returns
| Type | Description |
|---|---|
| OptionsBuilder |
WithExtraColumnTreatment(ExtraColumnTreatment)
Set how to treat extra columns when parsing.
Declaration
public OptionsBuilder WithExtraColumnTreatment(ExtraColumnTreatment extraColumnTreatment)
Parameters
| Type | Name | Description |
|---|---|---|
| ExtraColumnTreatment | extraColumnTreatment |
Returns
| Type | Description |
|---|---|
| OptionsBuilder |
WithMemoryPoolProvider(IMemoryPoolProvider)
Set the MemoryPoolProvider used during reading and writing.
Declaration
public OptionsBuilder WithMemoryPoolProvider(IMemoryPoolProvider memoryPoolProvider)
Parameters
| Type | Name | Description |
|---|---|---|
| IMemoryPoolProvider | memoryPoolProvider |
Returns
| Type | Description |
|---|---|
| OptionsBuilder |
WithReadBufferSizeHint(Int32)
Set the buffer size hint for read operations.
Setting to 0 will cause a default "best guess" size to be requested from the configured MemoryPool.
All values are treated as hints, it's up to the configured MemoryPool to satisfy the request.
Declaration
public OptionsBuilder WithReadBufferSizeHint(int sizeHint)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Int32 | sizeHint |
Returns
| Type | Description |
|---|---|
| OptionsBuilder |
WithReadHeader(ReadHeader)
Set whether or not to read headers.
Declaration
public OptionsBuilder WithReadHeader(ReadHeader readHeader)
Parameters
| Type | Name | Description |
|---|---|---|
| ReadHeader | readHeader |
Returns
| Type | Description |
|---|---|
| OptionsBuilder |
WithReadRowEnding(ReadRowEnding)
Set the sequence of characters that will end a row when reading.
Declaration
public OptionsBuilder WithReadRowEnding(ReadRowEnding readRowEnding)
Parameters
| Type | Name | Description |
|---|---|---|
| ReadRowEnding | readRowEnding |
Returns
| Type | Description |
|---|---|
| OptionsBuilder |
WithTypeDescriber(ITypeDescriber)
Set the ITypeDescriber used to discover and configure the columns that are read and written.
Declaration
public OptionsBuilder WithTypeDescriber(ITypeDescriber typeDescriber)
Parameters
| Type | Name | Description |
|---|---|---|
| ITypeDescriber | typeDescriber |
Returns
| Type | Description |
|---|---|
| OptionsBuilder |
WithValueSeparator(String)
Set the character used to separate two values in a row.
Declaration
public OptionsBuilder WithValueSeparator(string valueSeparator)
Parameters
| Type | Name | Description |
|---|---|---|
| System.String | valueSeparator |
Returns
| Type | Description |
|---|---|
| OptionsBuilder |
WithWhitespaceTreatment(WhitespaceTreatments)
Set how to treat whitespace when parsing.
Declaration
public OptionsBuilder WithWhitespaceTreatment(WhitespaceTreatments whitespaceTreatment)
Parameters
| Type | Name | Description |
|---|---|---|
| WhitespaceTreatments | whitespaceTreatment |
Returns
| Type | Description |
|---|---|
| OptionsBuilder |
WithWriteBufferSizeHint(Nullable<Int32>)
Set or clear the buffer size hint for write operations.
Setting it to null will cause a default "best guess" buffer to be requested from the configured MemoryPool.
Setting it to 0 will disable buffering.
All values are treated as hints, it's up to the configured MemoryPool to satisfy the request.
Declaration
public OptionsBuilder WithWriteBufferSizeHint(Nullable<int> sizeHint)
Parameters
| Type | Name | Description |
|---|---|---|
| System.Nullable<System.Int32> | sizeHint |
Returns
| Type | Description |
|---|---|
| OptionsBuilder |
WithWriteHeader(WriteHeader)
Set whether or not to write headers.
Declaration
public OptionsBuilder WithWriteHeader(WriteHeader writeHeader)
Parameters
| Type | Name | Description |
|---|---|---|
| WriteHeader | writeHeader |
Returns
| Type | Description |
|---|---|
| OptionsBuilder |
WithWriteRowEnding(WriteRowEnding)
Set the sequence of characters that will end a row when write.
Declaration
public OptionsBuilder WithWriteRowEnding(WriteRowEnding writeRowEnding)
Parameters
| Type | Name | Description |
|---|---|---|
| WriteRowEnding | writeRowEnding |
Returns
| Type | Description |
|---|---|
| OptionsBuilder |
WithWriteTrailingRowEnding(WriteTrailingRowEnding)
Set whether or not to end the last row with a new line.
Declaration
public OptionsBuilder WithWriteTrailingRowEnding(WriteTrailingRowEnding writeTrailingNewLine)
Parameters
| Type | Name | Description |
|---|---|---|
| WriteTrailingRowEnding | writeTrailingNewLine |
Returns
| Type | Description |
|---|---|
| OptionsBuilder |