<?xml version="1.0"?>
<doc>
<assembly>
<name>LumenWorks.Framework.IO</name>
</assembly>
<members>
<member name="T:LumenWorks.Framework.IO.Csv.MissingFieldAction">
<summary>
Specifies the action to take when a field is missing.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.MissingFieldAction.ParseError">
<summary>
Treat as a parsing error.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.MissingFieldAction.ReplaceByEmpty">
<summary>
Replaces by an empty value.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.MissingFieldAction.ReplaceByNull">
<summary>
Replaces by a null value (<see langword="null"/>).
</summary>
</member>
<member name="T:LumenWorks.Framework.IO.Csv.MissingFieldCsvException">
<summary>
Represents the exception that is thrown when a there is a missing field in a record of the CSV file.
</summary>
<remarks>
MissingFieldException would have been a better name, but there is already a <see cref="T:System.MissingFieldException"/>.
</remarks>
</member>
<member name="T:LumenWorks.Framework.IO.Csv.MalformedCsvException">
<summary>
Represents the exception that is thrown when a CSV file is malformed.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.MalformedCsvException._message">
<summary>
Contains the message that describes the error.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.MalformedCsvException._rawData">
<summary>
Contains the raw data when the error occured.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.MalformedCsvException._currentFieldIndex">
<summary>
Contains the current field index.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.MalformedCsvException._currentRecordIndex">
<summary>
Contains the current record index.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.MalformedCsvException._currentPosition">
<summary>
Contains the current position in the raw data.
</summary>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.MalformedCsvException.#ctor">
<summary>
Initializes a new instance of the MalformedCsvException class.
</summary>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.MalformedCsvException.#ctor(System.String)">
<summary>
Initializes a new instance of the MalformedCsvException class.
</summary>
<param name="message">The message that describes the error.</param>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.MalformedCsvException.#ctor(System.String,System.Exception)">
<summary>
Initializes a new instance of the MalformedCsvException class.
</summary>
<param name="message">The message that describes the error.</param>
<param name="innerException">The exception that is the cause of the current exception.</param>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.MalformedCsvException.#ctor(System.String,System.Int32,System.Int64,System.Int32)">
<summary>
Initializes a new instance of the MalformedCsvException class.
</summary>
<param name="rawData">The raw data when the error occured.</param>
<param name="currentPosition">The current position in the raw data.</param>
<param name="currentRecordIndex">The current record index.</param>
<param name="currentFieldIndex">The current field index.</param>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.MalformedCsvException.#ctor(System.String,System.Int32,System.Int64,System.Int32,System.Exception)">
<summary>
Initializes a new instance of the MalformedCsvException class.
</summary>
<param name="rawData">The raw data when the error occured.</param>
<param name="currentPosition">The current position in the raw data.</param>
<param name="currentRecordIndex">The current record index.</param>
<param name="currentFieldIndex">The current field index.</param>
<param name="innerException">The exception that is the cause of the current exception.</param>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.MalformedCsvException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>
Initializes a new instance of the MalformedCsvException class with serialized data.
</summary>
<param name="info">The <see cref="T:SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
<param name="context">The <see cref="T:StreamingContext"/> that contains contextual information about the source or destination.</param>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.MalformedCsvException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>
When overridden in a derived class, sets the <see cref="T:SerializationInfo"/> with information about the exception.
</summary>
<param name="info">The <see cref="T:SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
<param name="context">The <see cref="T:StreamingContext"/> that contains contextual information about the source or destination.</param>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.MalformedCsvException.RawData">
<summary>
Gets the raw data when the error occured.
</summary>
<value>The raw data when the error occured.</value>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.MalformedCsvException.CurrentPosition">
<summary>
Gets the current position in the raw data.
</summary>
<value>The current position in the raw data.</value>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.MalformedCsvException.CurrentRecordIndex">
<summary>
Gets the current record index.
</summary>
<value>The current record index.</value>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.MalformedCsvException.CurrentFieldIndex">
<summary>
Gets the current field index.
</summary>
<value>The current record index.</value>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.MalformedCsvException.Message">
<summary>
Gets a message that describes the current exception.
</summary>
<value>A message that describes the current exception.</value>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.MissingFieldCsvException.#ctor">
<summary>
Initializes a new instance of the MissingFieldCsvException class.
</summary>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.MissingFieldCsvException.#ctor(System.String)">
<summary>
Initializes a new instance of the MissingFieldCsvException class.
</summary>
<param name="message">The message that describes the error.</param>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.MissingFieldCsvException.#ctor(System.String,System.Exception)">
<summary>
Initializes a new instance of the MissingFieldCsvException class.
</summary>
<param name="message">The message that describes the error.</param>
<param name="innerException">The exception that is the cause of the current exception.</param>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.MissingFieldCsvException.#ctor(System.String,System.Int32,System.Int64,System.Int32)">
<summary>
Initializes a new instance of the MissingFieldCsvException class.
</summary>
<param name="rawData">The raw data when the error occured.</param>
<param name="currentPosition">The current position in the raw data.</param>
<param name="currentRecordIndex">The current record index.</param>
<param name="currentFieldIndex">The current field index.</param>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.MissingFieldCsvException.#ctor(System.String,System.Int32,System.Int64,System.Int32,System.Exception)">
<summary>
Initializes a new instance of the MissingFieldCsvException class.
</summary>
<param name="rawData">The raw data when the error occured.</param>
<param name="currentPosition">The current position in the raw data.</param>
<param name="currentRecordIndex">The current record index.</param>
<param name="currentFieldIndex">The current field index.</param>
<param name="innerException">The exception that is the cause of the current exception.</param>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.MissingFieldCsvException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>
Initializes a new instance of the MissingFieldCsvException class with serialized data.
</summary>
<param name="info">The <see cref="T:SerializationInfo"/> that holds the serialized object data about the exception being thrown.</param>
<param name="context">The <see cref="T:StreamingContext"/> that contains contextual information about the source or destination.</param>
</member>
<member name="T:LumenWorks.Framework.IO.Csv.ParseErrorEventArgs">
<summary>
Provides data for the <see cref="M:CsvReader.ParseError"/> event.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.ParseErrorEventArgs._error">
<summary>
Contains the error that occured.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.ParseErrorEventArgs._action">
<summary>
Contains the action to take.
</summary>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.ParseErrorEventArgs.#ctor(LumenWorks.Framework.IO.Csv.MalformedCsvException,LumenWorks.Framework.IO.Csv.ParseErrorAction)">
<summary>
Initializes a new instance of the ParseErrorEventArgs class.
</summary>
<param name="error">The error that occured.</param>
<param name="defaultAction">The default action to take.</param>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.ParseErrorEventArgs.Error">
<summary>
Gets the error that occured.
</summary>
<value>The error that occured.</value>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.ParseErrorEventArgs.Action">
<summary>
Gets or sets the action to take.
</summary>
<value>The action to take.</value>
</member>
<member name="T:LumenWorks.Framework.IO.Csv.CachedCsvReader">
<summary>
Represents a reader that provides fast, cached, dynamic access to CSV data.
</summary>
<remarks>The number of records is limited to <see cref="F:System.Int32.MaxValue"/> - 1.</remarks>
</member>
<member name="T:LumenWorks.Framework.IO.Csv.CsvReader">
<summary>
Represents a reader that provides fast, non-cached, forward-only access to CSV data.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader.DefaultBufferSize">
<summary>
Defines the default buffer size.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader.DefaultDelimiter">
<summary>
Defines the default delimiter character separating each field.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader.DefaultQuote">
<summary>
Defines the default quote character wrapping every field.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader.DefaultEscape">
<summary>
Defines the default escape character letting insert quotation characters inside a quoted field.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader.DefaultComment">
<summary>
Defines the default comment character indicating that a line is commented out.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._fieldHeaderComparer">
<summary>
Contains the field header comparer.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._reader">
<summary>
Contains the <see cref="T:TextReader"/> pointing to the CSV file.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._bufferSize">
<summary>
Contains the buffer size.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._comment">
<summary>
Contains the comment character indicating that a line is commented out.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._escape">
<summary>
Contains the escape character letting insert quotation characters inside a quoted field.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._delimiter">
<summary>
Contains the delimiter character separating each field.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._quote">
<summary>
Contains the quotation character wrapping every field.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._trimSpaces">
<summary>
Indicates if spaces at the start and end of a field are trimmed.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._hasHeaders">
<summary>
Indicates if field names are located on the first non commented line.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._defaultParseErrorAction">
<summary>
Contains the default action to take when a parsing error has occured.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._missingFieldAction">
<summary>
Contains the action to take when a field is missing.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._supportsMultiline">
<summary>
Indicates if the reader supports multiline.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._skipEmptyLines">
<summary>
Indicates if the reader will skip empty lines.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._initialized">
<summary>
Indicates if the class is initialized.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._fieldHeaders">
<summary>
Contains the field headers.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._fieldHeaderIndexes">
<summary>
Contains the dictionary of field indexes by header. The key is the field name and the value is its index.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._currentRecordIndex">
<summary>
Contains the current record index in the CSV file.
A value of <see cref="M:Int32.MinValue"/> means that the reader has not been initialized yet.
Otherwise, a negative value means that no record has been read yet.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._nextFieldStart">
<summary>
Contains the starting position of the next unread field.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._nextFieldIndex">
<summary>
Contains the index of the next unread field.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._fields">
<summary>
Contains the array of the field values for the current record.
A null value indicates that the field have not been parsed.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._fieldCount">
<summary>
Contains the maximum number of fields to retrieve for each record.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._buffer">
<summary>
Contains the read buffer.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._bufferLength">
<summary>
Contains the current read buffer length.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._eof">
<summary>
Indicates if the end of the reader has been reached.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._firstRecordInCache">
<summary>
Indicates if the first record is in cache.
This can happen when initializing a reader with no headers
because one record must be read to get the field count automatically
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._missingFieldsFlag">
<summary>
Indicates if fields are missing for the current record.
Resets after each successful record read.
</summary>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.#ctor(System.IO.TextReader,System.Boolean)">
<summary>
Initializes a new instance of the CsvReader class.
</summary>
<param name="reader">A <see cref="T:TextReader"/> pointing to the CSV file.</param>
<param name="hasHeaders"><see langword="true"/> if field names are located on the first non commented line, otherwise, <see langword="false"/>.</param>
<exception cref="T:ArgumentNullException">
<paramref name="reader"/> is a <see langword="null"/>.
</exception>
<exception cref="T:ArgumentException">
Cannot read from <paramref name="reader"/>.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.#ctor(System.IO.TextReader,System.Boolean,System.Int32)">
<summary>
Initializes a new instance of the CsvReader class.
</summary>
<param name="reader">A <see cref="T:TextReader"/> pointing to the CSV file.</param>
<param name="hasHeaders"><see langword="true"/> if field names are located on the first non commented line, otherwise, <see langword="false"/>.</param>
<param name="bufferSize">The buffer size in bytes.</param>
<exception cref="T:ArgumentNullException">
<paramref name="reader"/> is a <see langword="null"/>.
</exception>
<exception cref="T:ArgumentException">
Cannot read from <paramref name="reader"/>.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.#ctor(System.IO.TextReader,System.Boolean,System.Char)">
<summary>
Initializes a new instance of the CsvReader class.
</summary>
<param name="reader">A <see cref="T:TextReader"/> pointing to the CSV file.</param>
<param name="hasHeaders"><see langword="true"/> if field names are located on the first non commented line, otherwise, <see langword="false"/>.</param>
<param name="delimiter">The delimiter character separating each field (default is ',').</param>
<exception cref="T:ArgumentNullException">
<paramref name="reader"/> is a <see langword="null"/>.
</exception>
<exception cref="T:ArgumentException">
Cannot read from <paramref name="reader"/>.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.#ctor(System.IO.TextReader,System.Boolean,System.Char,System.Int32)">
<summary>
Initializes a new instance of the CsvReader class.
</summary>
<param name="reader">A <see cref="T:TextReader"/> pointing to the CSV file.</param>
<param name="hasHeaders"><see langword="true"/> if field names are located on the first non commented line, otherwise, <see langword="false"/>.</param>
<param name="delimiter">The delimiter character separating each field (default is ',').</param>
<param name="bufferSize">The buffer size in bytes.</param>
<exception cref="T:ArgumentNullException">
<paramref name="reader"/> is a <see langword="null"/>.
</exception>
<exception cref="T:ArgumentException">
Cannot read from <paramref name="reader"/>.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.#ctor(System.IO.TextReader,System.Boolean,System.Char,System.Char,System.Char,System.Char,System.Boolean)">
<summary>
Initializes a new instance of the CsvReader class.
</summary>
<param name="reader">A <see cref="T:TextReader"/> pointing to the CSV file.</param>
<param name="hasHeaders"><see langword="true"/> if field names are located on the first non commented line, otherwise, <see langword="false"/>.</param>
<param name="delimiter">The delimiter character separating each field (default is ',').</param>
<param name="quote">The quotation character wrapping every field (default is ''').</param>
<param name="escape">
The escape character letting insert quotation characters inside a quoted field (default is '\').
If no escape character, set to '\0' to gain some performance.
</param>
<param name="comment">The comment character indicating that a line is commented out (default is '#').</param>
<param name="trimSpaces"><see langword="true"/> if spaces at the start and end of a field are trimmed, otherwise, <see langword="false"/>. Default is <see langword="true"/>.</param>
<exception cref="T:ArgumentNullException">
<paramref name="reader"/> is a <see langword="null"/>.
</exception>
<exception cref="T:ArgumentException">
Cannot read from <paramref name="reader"/>.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.#ctor(System.IO.TextReader,System.Boolean,System.Char,System.Char,System.Char,System.Char,System.Boolean,System.Int32)">
<summary>
Initializes a new instance of the CsvReader class.
</summary>
<param name="reader">A <see cref="T:TextReader"/> pointing to the CSV file.</param>
<param name="hasHeaders"><see langword="true"/> if field names are located on the first non commented line, otherwise, <see langword="false"/>.</param>
<param name="delimiter">The delimiter character separating each field (default is ',').</param>
<param name="quote">The quotation character wrapping every field (default is ''').</param>
<param name="escape">
The escape character letting insert quotation characters inside a quoted field (default is '\').
If no escape character, set to '\0' to gain some performance.
</param>
<param name="comment">The comment character indicating that a line is commented out (default is '#').</param>
<param name="trimSpaces"><see langword="true"/> if spaces at the start and end of a field are trimmed, otherwise, <see langword="false"/>. Default is <see langword="true"/>.</param>
<param name="bufferSize">The buffer size in bytes.</param>
<exception cref="T:ArgumentNullException">
<paramref name="reader"/> is a <see langword="null"/>.
</exception>
<exception cref="T:System.ArgumentOutOfRangeException">
<paramref name="bufferSize"/> must be 1 or more.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.OnParseError(LumenWorks.Framework.IO.Csv.ParseErrorEventArgs)">
<summary>
Raises the <see cref="M:ParseError"/> event.
</summary>
<param name="e">The <see cref="T:LumenWorks.Framework.IO.Csv.ParseErrorEventArgs"/> that contains the event data.</param>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.GetFieldHeaders">
<summary>
Gets the field headers.
</summary>
<returns>The field headers or an empty array if headers are not supported.</returns>
<exception cref="T:System.ComponentModel.ObjectDisposedException">
The instance has been disposed of.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.EnsureInitialize">
<summary>
Ensures that the reader is initialized.
</summary>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.GetFieldIndex(System.String)">
<summary>
Gets the field index for the provided header.
</summary>
<param name="header">The header to look for.</param>
<returns>The field index for the provided header. -1 if not found.</returns>
<exception cref="T:System.ComponentModel.ObjectDisposedException">
The instance has been disposed of.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.CopyCurrentRecordTo(System.String[])">
<summary>
Copies the field array of the current record to a one-dimensional array, starting at the beginning of the target array.
</summary>
<param name="array"> The one-dimensional <see cref="T:Array"/> that is the destination of the fields of the current record.</param>
<exception cref="T:ArgumentNullException">
<paramref name="array"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ArgumentException">
The number of fields in the record is greater than the available space from <paramref name="index"/> to the end of <paramref name="array"/>.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.CopyCurrentRecordTo(System.String[],System.Int32)">
<summary>
Copies the field array of the current record to a one-dimensional array, starting at the beginning of the target array.
</summary>
<param name="array"> The one-dimensional <see cref="T:Array"/> that is the destination of the fields of the current record.</param>
<param name="index">The zero-based index in <paramref name="array"/> at which copying begins.</param>
<exception cref="T:ArgumentNullException">
<paramref name="array"/> is <see langword="null"/>.
</exception>
<exception cref="T:ArgumentOutOfRangeException">
<paramref name="index"/> is les than zero or is equal to or greater than the length <paramref name="array"/>.
</exception>
<exception cref="T:System.InvalidOperationException">
No current record.
</exception>
<exception cref="T:System.ArgumentException">
The number of fields in the record is greater than the available space from <paramref name="index"/> to the end of <paramref name="array"/>.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.GetCurrentRawData">
<summary>
Gets the current raw CSV data.
</summary>
<remarks>Used for exception handling purpose.</remarks>
<returns>The current raw CSV data.</returns>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.IsWhiteSpace(System.Char)">
<summary>
Indicates whether the specified Unicode character is categorized as white space.
</summary>
<param name="c">A Unicode character.</param>
<returns><see langword="true"/> if <paramref name="c"/> is white space; otherwise, <see langword="false"/>.</returns>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.MoveTo(System.Int64)">
<summary>
Moves to the specified record index.
</summary>
<param name="record">The record index.</param>
<exception cref="T:ArgumentOutOfRangeException">
Record index must be > 0.
</exception>
<exception cref="T:InvalidOperationException">
Cannot move to a previous record in forward-only mode.
</exception>
<exception cref="T:System.ComponentModel.ObjectDisposedException">
The instance has been disposed of.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.ParseNewLine(System.Int32@)">
<summary>
Parses a new line delimiter.
</summary>
<param name="pos">The starting position of the parsing. Will contain the resulting end position.</param>
<returns><see langword="true"/> if a new line delimiter was found; otherwise, <see langword="false"/>.</returns>
<exception cref="T:System.ComponentModel.ObjectDisposedException">
The instance has been disposed of.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.IsNewLine(System.Int32)">
<summary>
Determines whether the character at the specified position is a new line delimiter.
</summary>
<param name="pos">The position of the character to verify.</param>
<returns>
<see langword="true"/> if the character at the specified position is a new line delimiter; otherwise, <see langword="false"/>.
</returns>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.ReadBuffer">
<summary>
Fills the buffer with data from the reader.
</summary>
<returns><see langword="true"/> if data was successfully read; otherwise, <see langword="false"/>.</returns>
<exception cref="T:System.ComponentModel.ObjectDisposedException">
The instance has been disposed of.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.ReadField(System.Int32,System.Boolean,System.Boolean)">
<summary>
Reads the field at the specified index.
Any unread fields with an inferior index will also be read as part of the required parsing.
</summary>
<param name="field">The field index.</param>
<param name="initializing">Indicates if the reader is currently initializing.</param>
<param name="discardValue">Indicates if the value(s) are discarded.</param>
<returns>
The field at the specified index.
A <see langword="null"/> indicates that an error occured or that the last field has been reached during initialization.
</returns>
<exception cref="T:System.ArgumentOutOfRangeException">
<paramref name="field"/> is out of range.
</exception>
<exception cref="T:System.InvalidOperationException">
There is no current record.
</exception>
<exception cref="T:LumenWorks.Framework.IO.Csv.MissingFieldCsvException">
The CSV data appears to be missing a field.
</exception>
<exception cref="T:LumenWorks.Framework.IO.Csv.MalformedCsvException">
The CSV data appears to be malformed.
</exception>
<exception cref="T:System.ComponentModel.ObjectDisposedException">
The instance has been disposed of.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.ReadNextRecord">
<summary>
Reads the next record.
</summary>
<returns><see langword="true"/> if a record has been successfully reads; otherwise, <see langword="false"/>.</returns>
<exception cref="T:System.ComponentModel.ObjectDisposedException">
The instance has been disposed of.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.ReadNextRecord(System.Boolean,System.Boolean)">
<summary>
Reads the next record.
</summary>
<param name="onlyReadHeaders">
Indicates if the reader will proceed to the next record after having read headers.
<see langword="true"/> if it stops after having read headers; otherwise, <see langword="false"/>.
</param>
<param name="skipToNextLine">
Indicates if the reader will skip directly to the next line without parsing the current one.
To be used when an error occurs.
</param>
<returns><see langword="true"/> if a record has been successfully reads; otherwise, <see langword="false"/>.</returns>
<exception cref="T:System.ComponentModel.ObjectDisposedException">
The instance has been disposed of.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.SkipEmptyAndCommentedLines(System.Int32@)">
<summary>
Skips empty and commented lines.
If the end of the buffer is reached, its content be discarded and filled again from the reader.
</summary>
<param name="pos">
The position in the buffer where to start parsing.
Will contains the resulting position after the operation.
</param>
<returns><see langword="true"/> if the end of the reader has not been reached; otherwise, <see langword="false"/>.</returns>
<exception cref="T:System.ComponentModel.ObjectDisposedException">
The instance has been disposed of.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.DoSkipEmptyAndCommentedLines(System.Int32@)">
<summary>
<para>Worker method.</para>
<para>Skips empty and commented lines.</para>
</summary>
<param name="pos">
The position in the buffer where to start parsing.
Will contains the resulting position after the operation.
</param>
<exception cref="T:System.ComponentModel.ObjectDisposedException">
The instance has been disposed of.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.SkipWhiteSpaces(System.Int32@)">
<summary>
Skips whitespace characters.
</summary>
<param name="pos">The starting position of the parsing. Will contain the resulting end position.</param>
<returns><see langword="true"/> if the end of the reader has not been reached; otherwise, <see langword="false"/>.</returns>
<exception cref="T:System.ComponentModel.ObjectDisposedException">
The instance has been disposed of.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.SkipToNextLine(System.Int32@)">
<summary>
Skips ahead to the next NewLine character.
If the end of the buffer is reached, its content be discarded and filled again from the reader.
</summary>
<param name="pos">
The position in the buffer where to start parsing.
Will contains the resulting position after the operation.
</param>
<returns><see langword="true"/> if the end of the reader has not been reached; otherwise, <see langword="false"/>.</returns>
<exception cref="T:System.ComponentModel.ObjectDisposedException">
The instance has been disposed of.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.HandleParseError(LumenWorks.Framework.IO.Csv.MalformedCsvException,System.Int32@)">
<summary>
Handles a parsing error.
</summary>
<param name="error">The parsing error that occured.</param>
<param name="pos">The current position in the buffer.</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="error"/> is <see langword="null"/>.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.HandleMissingField(System.String,System.Int32,System.Int32@)">
<summary>
Handles a missing field error.
</summary>
<param name="value">The partially parsed value, if available.</param>
<param name="fieldIndex">The missing field index.</param>
<param name="currentPosition">The current position in the raw data.</param>
<returns>
The resulting value according to <see cref="M:MissingFieldAction"/>.
If the action is set to <see cref="T:MissingFieldAction.TreatAsParseError"/>,
then the parse error will be handled according to <see cref="P:LumenWorks.Framework.IO.Csv.CsvReader.DefaultParseErrorAction"/>.
</returns>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.ValidateDataReader(LumenWorks.Framework.IO.Csv.CsvReader.DataReaderValidations)">
<summary>
Validates the state of the data reader.
</summary>
<param name="validations">The validations to accomplish.</param>
<exception cref="T:System.InvalidOperationException">
No current record.
</exception>
<exception cref="T:System.InvalidOperationException">
This operation is invalid when the reader is closed.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.CopyFieldToArray(System.Int32,System.Int64,System.Array,System.Int32,System.Int32)">
<summary>
Copy the value of the specified field to an array.
</summary>
<param name="field">The index of the field.</param>
<param name="fieldOffset">The offset in the field value.</param>
<param name="destinationArray">The destination array where the field value will be copied.</param>
<param name="destinationOffset">The destination array offset.</param>
<param name="length">The number of characters to copy from the field value.</param>
<returns></returns>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.GetEnumerator">
<summary>
Returns an <see cref="T:RecordEnumerator"/> that can iterate through CSV records.
</summary>
<returns>An <see cref="T:RecordEnumerator"/> that can iterate through CSV records.</returns>
<exception cref="T:System.ComponentModel.ObjectDisposedException">
The instance has been disposed of.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.System#Collections#Generic#IEnumerable{System#String[]}#GetEnumerator">
<summary>
Returns an <see cref="T:System.Collections.Generics.IEnumerator"/> that can iterate through CSV records.
</summary>
<returns>An <see cref="T:System.Collections.Generics.IEnumerator"/> that can iterate through CSV records.</returns>
<exception cref="T:System.ComponentModel.ObjectDisposedException">
The instance has been disposed of.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.System#Collections#IEnumerable#GetEnumerator">
<summary>
Returns an <see cref="T:System.Collections.IEnumerator"/> that can iterate through CSV records.
</summary>
<returns>An <see cref="T:System.Collections.IEnumerator"/> that can iterate through CSV records.</returns>
<exception cref="T:System.ComponentModel.ObjectDisposedException">
The instance has been disposed of.
</exception>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._isDisposed">
<summary>
Contains the disposed status flag.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader._lock">
<summary>
Contains the locking object for multi-threading purpose.
</summary>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.OnDisposed(System.EventArgs)">
<summary>
Raises the <see cref="M:Disposed"/> event.
</summary>
<param name="e">A <see cref="T:System.EventArgs"/> that contains the event data.</param>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.CheckDisposed">
<summary>
Checks if the instance has been disposed of, and if it has, throws an <see cref="T:System.ComponentModel.ObjectDisposedException"/>; otherwise, does nothing.
</summary>
<exception cref="T:System.ComponentModel.ObjectDisposedException">
The instance has been disposed of.
</exception>
<remarks>
Derived classes should call this method at the start of all methods and properties that should not be accessed after a call to <see cref="M:Dispose()"/>.
</remarks>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.Dispose">
<summary>
Releases all resources used by the instance.
</summary>
<remarks>
Calls <see cref="M:Dispose(Boolean)"/> with the disposing parameter set to <see langword="true"/> to free unmanaged and managed resources.
</remarks>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.Dispose(System.Boolean)">
<summary>
Releases the unmanaged resources used by this instance and optionally releases the managed resources.
</summary>
<param name="disposing">
<see langword="true"/> to release both managed and unmanaged resources; <see langword="false"/> to release only unmanaged resources.
</param>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.Finalize">
<summary>
Releases unmanaged resources and performs other cleanup operations before the instance is reclaimed by garbage collection.
</summary>
</member>
<member name="E:LumenWorks.Framework.IO.Csv.CsvReader.ParseError">
<summary>
Occurs when there is an error while parsing the CSV stream.
</summary>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.CsvReader.Comment">
<summary>
Gets the comment character indicating that a line is commented out.
</summary>
<value>The comment character indicating that a line is commented out.</value>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.CsvReader.Escape">
<summary>
Gets the escape character letting insert quotation characters inside a quoted field.
</summary>
<value>The escape character letting insert quotation characters inside a quoted field.</value>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.CsvReader.Delimiter">
<summary>
Gets the delimiter character separating each field.
</summary>
<value>The delimiter character separating each field.</value>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.CsvReader.Quote">
<summary>
Gets the quotation character wrapping every field.
</summary>
<value>The quotation character wrapping every field.</value>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.CsvReader.HasHeaders">
<summary>
Indicates if field names are located on the first non commented line.
</summary>
<value><see langword="true"/> if field names are located on the first non commented line, otherwise, <see langword="false"/>.</value>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.CsvReader.TrimSpaces">
<summary>
Indicates if spaces at the start and end of a field are trimmed.
</summary>
<value><see langword="true"/> if spaces at the start and end of a field are trimmed, otherwise, <see langword="false"/>.</value>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.CsvReader.BufferSize">
<summary>
Gets the buffer size.
</summary>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.CsvReader.DefaultParseErrorAction">
<summary>
Gets or sets the default action to take when a parsing error has occured.
</summary>
<value>The default action to take when a parsing error has occured.</value>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.CsvReader.MissingFieldAction">
<summary>
Gets or sets the action to take when a field is missing.
</summary>
<value>The action to take when a field is missing.</value>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.CsvReader.SupportsMultiline">
<summary>
Gets or sets a value indicating if the reader supports multiline fields.
</summary>
<value>A value indicating if the reader supports multiline field.</value>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.CsvReader.SkipEmptyLines">
<summary>
Gets or sets a value indicating if the reader will skip empty lines.
</summary>
<value>A value indicating if the reader will skip empty lines.</value>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.CsvReader.FieldCount">
<summary>
Gets the maximum number of fields to retrieve for each record.
</summary>
<value>The maximum number of fields to retrieve for each record.</value>
<exception cref="T:System.ComponentModel.ObjectDisposedException">
The instance has been disposed of.
</exception>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.CsvReader.EndOfStream">
<summary>
Gets a value that indicates whether the current stream position is at the end of the stream.
</summary>
<value><see langword="true"/> if the current stream position is at the end of the stream; otherwise <see langword="false"/>.</value>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.CsvReader.CurrentRecordIndex">
<summary>
Gets the current record index in the CSV file.
</summary>
<value>The current record index in the CSV file.</value>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.CsvReader.Item(System.Int32,System.String)">
<summary>
Gets the field with the specified name and record position. <see cref="M:hasHeaders"/> must be <see langword="true"/>.
</summary>
<value>
The field with the specified name and record position.
</value>
<exception cref="T:ArgumentNullException">
<paramref name="field"/> is <see langword="null"/> or an empty string.
</exception>
<exception cref="T:InvalidOperationException">
The CSV does not have headers (<see cref="M:HasHeaders"/> property is <see langword="false"/>).
</exception>
<exception cref="T:ArgumentException">
<paramref name="field"/> not found.
</exception>
<exception cref="T:ArgumentOutOfRangeException">
Record index must be > 0.
</exception>
<exception cref="T:InvalidOperationException">
Cannot move to a previous record in forward-only mode.
</exception>
<exception cref="T:EndOfStreamException">
Cannot read record at <paramref name="record"/>.
</exception>
<exception cref="T:MalformedCsvException">
The CSV appears to be corrupt at the current position.
</exception>
<exception cref="T:System.ComponentModel.ObjectDisposedException">
The instance has been disposed of.
</exception>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.CsvReader.Item(System.Int32,System.Int32)">
<summary>
Gets the field at the specified index and record position.
</summary>
<value>
The field at the specified index and record position.
A <see langword="null"/> is returned if the field cannot be found for the record.
</value>
<exception cref="T:ArgumentOutOfRangeException">
<paramref name="field"/> must be included in [0, <see cref="M:FieldCount"/>[.
</exception>
<exception cref="T:ArgumentOutOfRangeException">
Record index must be > 0.
</exception>
<exception cref="T:InvalidOperationException">
Cannot move to a previous record in forward-only mode.
</exception>
<exception cref="T:EndOfStreamException">
Cannot read record at <paramref name="record"/>.
</exception>
<exception cref="T:MalformedCsvException">
The CSV appears to be corrupt at the current position.
</exception>
<exception cref="T:System.ComponentModel.ObjectDisposedException">
The instance has been disposed of.
</exception>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.CsvReader.Item(System.String)">
<summary>
Gets the field with the specified name. <see cref="M:hasHeaders"/> must be <see langword="true"/>.
</summary>
<value>
The field with the specified name.
</value>
<exception cref="T:ArgumentNullException">
<paramref name="field"/> is <see langword="null"/> or an empty string.
</exception>
<exception cref="T:InvalidOperationException">
The CSV does not have headers (<see cref="M:HasHeaders"/> property is <see langword="false"/>).
</exception>
<exception cref="T:ArgumentException">
<paramref name="field"/> not found.
</exception>
<exception cref="T:MalformedCsvException">
The CSV appears to be corrupt at the current position.
</exception>
<exception cref="T:System.ComponentModel.ObjectDisposedException">
The instance has been disposed of.
</exception>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.CsvReader.Item(System.Int32)">
<summary>
Gets the field at the specified index.
</summary>
<value>The field at the specified index.</value>
<exception cref="T:ArgumentOutOfRangeException">
<paramref name="field"/> must be included in [0, <see cref="M:FieldCount"/>[.
</exception>
<exception cref="T:InvalidOperationException">
No record read yet. Call ReadLine() first.
</exception>
<exception cref="T:MalformedCsvException">
The CSV appears to be corrupt at the current position.
</exception>
<exception cref="T:System.ComponentModel.ObjectDisposedException">
The instance has been disposed of.
</exception>
</member>
<member name="E:LumenWorks.Framework.IO.Csv.CsvReader.Disposed">
<summary>
Occurs when the instance is disposed of.
</summary>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.CsvReader.IsDisposed">
<summary>
Gets a value indicating whether the instance has been disposed of.
</summary>
<value>
<see langword="true"/> if the instance has been disposed of; otherwise, <see langword="false"/>.
</value>
</member>
<member name="T:LumenWorks.Framework.IO.Csv.CsvReader.RecordEnumerator">
<summary>
Supports a simple iteration over the records of a <see cref="T:CsvReader"/>.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader.RecordEnumerator._reader">
<summary>
Contains the enumerated <see cref="T:CsvReader"/>.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader.RecordEnumerator._current">
<summary>
Contains the current record.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader.RecordEnumerator._currentRecordIndex">
<summary>
Contains the current record index.
</summary>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.RecordEnumerator.#ctor(LumenWorks.Framework.IO.Csv.CsvReader)">
<summary>
Initializes a new instance of the <see cref="T:RecordEnumerator"/> class.
</summary>
<param name="reader">The <see cref="T:CsvReader"/> to iterate over.</param>
<exception cref="T:ArgumentNullException">
<paramref name="reader"/> is a <see langword="null"/>.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.RecordEnumerator.MoveNext">
<summary>
Advances the enumerator to the next record of the CSV.
</summary>
<returns><see langword="true"/> if the enumerator was successfully advanced to the next record, <see langword="false"/> if the enumerator has passed the end of the CSV.</returns>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.RecordEnumerator.Reset">
<summary>
Sets the enumerator to its initial position, which is before the first record in the CSV.
</summary>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CsvReader.RecordEnumerator.Dispose">
<summary>
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
</summary>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.CsvReader.RecordEnumerator.Current">
<summary>
Gets the current record.
</summary>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.CsvReader.RecordEnumerator.System#Collections#IEnumerator#Current">
<summary>
Gets the current record.
</summary>
</member>
<member name="T:LumenWorks.Framework.IO.Csv.CsvReader.DataReaderValidations">
<summary>
Defines the data reader validations.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader.DataReaderValidations.None">
<summary>
No validation.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader.DataReaderValidations.IsInitialized">
<summary>
Validate that the data reader is initialized.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CsvReader.DataReaderValidations.IsNotClosed">
<summary>
Validate that the data reader is not closed.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CachedCsvReader._records">
<summary>
Contains the cached records.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CachedCsvReader._currentRecordIndex">
<summary>
Contains the current record index (inside the cached records array).
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CachedCsvReader._readingStream">
<summary>
Indicates if a new record is being read from the CSV stream.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CachedCsvReader._bindingList">
<summary>
Contains the binding list linked to this reader.
</summary>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CachedCsvReader.#ctor(System.IO.TextReader,System.Boolean)">
<summary>
Initializes a new instance of the CsvReader class.
</summary>
<param name="reader">A <see cref="T:TextReader"/> pointing to the CSV file.</param>
<param name="hasHeaders"><see langword="true"/> if field names are located on the first non commented line, otherwise, <see langword="false"/>.</param>
<exception cref="T:ArgumentNullException">
<paramref name="reader"/> is a <see langword="null"/>.
</exception>
<exception cref="T:ArgumentException">
Cannot read from <paramref name="reader"/>.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CachedCsvReader.#ctor(System.IO.TextReader,System.Boolean,System.Int32)">
<summary>
Initializes a new instance of the CsvReader class.
</summary>
<param name="reader">A <see cref="T:TextReader"/> pointing to the CSV file.</param>
<param name="hasHeaders"><see langword="true"/> if field names are located on the first non commented line, otherwise, <see langword="false"/>.</param>
<param name="bufferSize">The buffer size in bytes.</param>
<exception cref="T:ArgumentNullException">
<paramref name="reader"/> is a <see langword="null"/>.
</exception>
<exception cref="T:ArgumentException">
Cannot read from <paramref name="reader"/>.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CachedCsvReader.#ctor(System.IO.TextReader,System.Boolean,System.Char)">
<summary>
Initializes a new instance of the CsvReader class.
</summary>
<param name="reader">A <see cref="T:TextReader"/> pointing to the CSV file.</param>
<param name="hasHeaders"><see langword="true"/> if field names are located on the first non commented line, otherwise, <see langword="false"/>.</param>
<param name="delimiter">The delimiter character separating each field (default is ',').</param>
<exception cref="T:ArgumentNullException">
<paramref name="reader"/> is a <see langword="null"/>.
</exception>
<exception cref="T:ArgumentException">
Cannot read from <paramref name="reader"/>.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CachedCsvReader.#ctor(System.IO.TextReader,System.Boolean,System.Char,System.Int32)">
<summary>
Initializes a new instance of the CsvReader class.
</summary>
<param name="reader">A <see cref="T:TextReader"/> pointing to the CSV file.</param>
<param name="hasHeaders"><see langword="true"/> if field names are located on the first non commented line, otherwise, <see langword="false"/>.</param>
<param name="delimiter">The delimiter character separating each field (default is ',').</param>
<param name="bufferSize">The buffer size in bytes.</param>
<exception cref="T:ArgumentNullException">
<paramref name="reader"/> is a <see langword="null"/>.
</exception>
<exception cref="T:ArgumentException">
Cannot read from <paramref name="reader"/>.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CachedCsvReader.#ctor(System.IO.TextReader,System.Boolean,System.Char,System.Char,System.Char,System.Char,System.Boolean)">
<summary>
Initializes a new instance of the CsvReader class.
</summary>
<param name="reader">A <see cref="T:TextReader"/> pointing to the CSV file.</param>
<param name="hasHeaders"><see langword="true"/> if field names are located on the first non commented line, otherwise, <see langword="false"/>.</param>
<param name="delimiter">The delimiter character separating each field (default is ',').</param>
<param name="quote">The quotation character wrapping every field (default is ''').</param>
<param name="escape">
The escape character letting insert quotation characters inside a quoted field (default is '\').
If no escape character, set to '\0' to gain some performance.
</param>
<param name="comment">The comment character indicating that a line is commented out (default is '#').</param>
<param name="trimSpaces"><see langword="true"/> if spaces at the start and end of a field are trimmed, otherwise, <see langword="false"/>. Default is <see langword="true"/>.</param>
<exception cref="T:ArgumentNullException">
<paramref name="reader"/> is a <see langword="null"/>.
</exception>
<exception cref="T:ArgumentException">
Cannot read from <paramref name="reader"/>.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CachedCsvReader.#ctor(System.IO.TextReader,System.Boolean,System.Char,System.Char,System.Char,System.Char,System.Boolean,System.Int32)">
<summary>
Initializes a new instance of the CsvReader class.
</summary>
<param name="reader">A <see cref="T:TextReader"/> pointing to the CSV file.</param>
<param name="hasHeaders"><see langword="true"/> if field names are located on the first non commented line, otherwise, <see langword="false"/>.</param>
<param name="delimiter">The delimiter character separating each field (default is ',').</param>
<param name="quote">The quotation character wrapping every field (default is ''').</param>
<param name="escape">
The escape character letting insert quotation characters inside a quoted field (default is '\').
If no escape character, set to '\0' to gain some performance.
</param>
<param name="comment">The comment character indicating that a line is commented out (default is '#').</param>
<param name="trimSpaces"><see langword="true"/> if spaces at the start and end of a field are trimmed, otherwise, <see langword="false"/>. Default is <see langword="true"/>.</param>
<param name="bufferSize">The buffer size in bytes.</param>
<exception cref="T:ArgumentNullException">
<paramref name="reader"/> is a <see langword="null"/>.
</exception>
<exception cref="T:System.ArgumentOutOfRangeException">
<paramref name="bufferSize"/> must be 1 or more.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CachedCsvReader.ReadToEnd">
<summary>
Reads the CSV stream from the current position to the end of the stream.
</summary>
<exception cref="T:System.ComponentModel.ObjectDisposedException">
The instance has been disposed of.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CachedCsvReader.ReadNextRecord(System.Boolean,System.Boolean)">
<summary>
Reads the next record.
</summary>
<param name="onlyReadHeaders">
Indicates if the reader will proceed to the next record after having read headers.
<see langword="true"/> if it stops after having read headers; otherwise, <see langword="false"/>.
</param>
<param name="skipToNextLine">
Indicates if the reader will skip directly to the next line without parsing the current one.
To be used when an error occurs.
</param>
<returns><see langword="true"/> if a record has been successfully reads; otherwise, <see langword="false"/>.</returns>
<exception cref="T:System.ComponentModel.ObjectDisposedException">
The instance has been disposed of.
</exception>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CachedCsvReader.MoveToStart">
<summary>
Moves before the first record.
</summary>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CachedCsvReader.MoveToLastCachedRecord">
<summary>
Moves to the last record read so far.
</summary>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CachedCsvReader.MoveTo(System.Int64)">
<summary>
Moves to the specified record index.
</summary>
<param name="record">The record index.</param>
<exception cref="T:ArgumentOutOfRangeException">
Record index must be > 0.
</exception>
<exception cref="T:System.ComponentModel.ObjectDisposedException">
The instance has been disposed of.
</exception>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.CachedCsvReader.CurrentRecordIndex">
<summary>
Gets the current record index in the CSV file.
</summary>
<value>The current record index in the CSV file.</value>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.CachedCsvReader.EndOfStream">
<summary>
Gets a value that indicates whether the current stream position is at the end of the stream.
</summary>
<value><see langword="true"/> if the current stream position is at the end of the stream; otherwise <see langword="false"/>.</value>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.CachedCsvReader.Item(System.Int32)">
<summary>
Gets the field at the specified index.
</summary>
<value>The field at the specified index.</value>
<exception cref="T:ArgumentOutOfRangeException">
<paramref name="field"/> must be included in [0, <see cref="M:FieldCount"/>[.
</exception>
<exception cref="T:InvalidOperationException">
No record read yet. Call ReadLine() first.
</exception>
<exception cref="T:LumenWorks.Framework.IO.Csv.MissingFieldCsvException">
The CSV data appears to be missing a field.
</exception>
<exception cref="T:MalformedCsvException">
The CSV appears to be corrupt at the current position.
</exception>
<exception cref="T:System.ComponentModel.ObjectDisposedException">
The instance has been disposed of.
</exception>
</member>
<member name="T:LumenWorks.Framework.IO.Csv.CachedCsvReader.CsvRecordComparer">
<summary>
Represents a CSV record comparer.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CachedCsvReader.CsvRecordComparer._field">
<summary>
Contains the field index of the values to compare.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CachedCsvReader.CsvRecordComparer._direction">
<summary>
Contains the sort direction.
</summary>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CachedCsvReader.CsvRecordComparer.#ctor(System.Int32,System.ComponentModel.ListSortDirection)">
<summary>
Initializes a new instance of the CsvRecordComparer class.
</summary>
<param name="field">The field index of the values to compare.</param>
<param name="direction">The sort direction.</param>
</member>
<member name="T:LumenWorks.Framework.IO.Csv.CachedCsvReader.CsvBindingList">
<summary>
Represents a binding list wrapper for a CSV reader.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CachedCsvReader.CsvBindingList._csv">
<summary>
Contains the linked CSV reader.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CachedCsvReader.CsvBindingList._count">
<summary>
Contains the cached record count.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CachedCsvReader.CsvBindingList._properties">
<summary>
Contains the cached property descriptors.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CachedCsvReader.CsvBindingList._sort">
<summary>
Contains the current sort property.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CachedCsvReader.CsvBindingList._direction">
<summary>
Contains the current sort direction.
</summary>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CachedCsvReader.CsvBindingList.#ctor(LumenWorks.Framework.IO.Csv.CachedCsvReader)">
<summary>
Initializes a new instance of the CsvBindingList class.
</summary>
<param name="csv"></param>
</member>
<member name="T:LumenWorks.Framework.IO.Csv.CachedCsvReader.CsvPropertyDescriptor">
<summary>
Represents a CSV field property descriptor.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.CachedCsvReader.CsvPropertyDescriptor._index">
<summary>
Contains the field index.
</summary>
</member>
<member name="M:LumenWorks.Framework.IO.Csv.CachedCsvReader.CsvPropertyDescriptor.#ctor(System.String,System.Int32)">
<summary>
Initializes a new instance of the CsvPropertyDescriptor class.
</summary>
<param name="fieldName">The field name.</param>
<param name="index">The field index.</param>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.CachedCsvReader.CsvPropertyDescriptor.Index">
<summary>
Gets the field index.
</summary>
<value>The field index.</value>
</member>
<member name="T:LumenWorks.Framework.IO.Csv.Resources.ExceptionMessage">
<summary>
A strongly-typed resource class, for looking up localized strings, etc.
</summary>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.Resources.ExceptionMessage.ResourceManager">
<summary>
Returns the cached ResourceManager instance used by this class.
</summary>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.Resources.ExceptionMessage.Culture">
<summary>
Overrides the current thread's CurrentUICulture property for all
resource lookups using this strongly typed resource class.
</summary>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.Resources.ExceptionMessage.BufferSizeTooSmall">
<summary>
Looks up a localized string similar to Buffer size must be 1 or more..
</summary>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.Resources.ExceptionMessage.CannotMovePreviousRecordInForwardOnly">
<summary>
Looks up a localized string similar to Cannot move to a previous record in forward-only mode..
</summary>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.Resources.ExceptionMessage.CannotReadRecordAtIndex">
<summary>
Looks up a localized string similar to Cannot read record at index '{0}'..
</summary>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.Resources.ExceptionMessage.EnumerationFinishedOrNotStarted">
<summary>
Looks up a localized string similar to Enumeration has either not started or has already finished..
</summary>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.Resources.ExceptionMessage.EnumerationVersionCheckFailed">
<summary>
Looks up a localized string similar to Collection was modified; enumeration operation may not execute..
</summary>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.Resources.ExceptionMessage.FieldHeaderNotFound">
<summary>
Looks up a localized string similar to '{0}' field header not found..
</summary>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.Resources.ExceptionMessage.FieldIndexOutOfRange">
<summary>
Looks up a localized string similar to Field index must be included in [0, FieldCount[. Specified field index was : '{0}'..
</summary>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.Resources.ExceptionMessage.MalformedCsvException">
<summary>
Looks up a localized string similar to The CSV appears to be corrupt near record '{0}' field '{1} at position '{2}'. Current raw data : '{3}'..
</summary>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.Resources.ExceptionMessage.MissingFieldActionNotSupported">
<summary>
Looks up a localized string similar to '{0}' is not a supported missing field action..
</summary>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.Resources.ExceptionMessage.NoCurrentRecord">
<summary>
Looks up a localized string similar to No current record..
</summary>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.Resources.ExceptionMessage.NoHeaders">
<summary>
Looks up a localized string similar to The CSV does not have headers (CsvReader.HasHeaders property is false)..
</summary>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.Resources.ExceptionMessage.NotEnoughSpaceInArray">
<summary>
Looks up a localized string similar to The number of fields in the record is greater than the available space from index to the end of the destination array..
</summary>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.Resources.ExceptionMessage.ParseErrorActionInvalidInsideParseErrorEvent">
<summary>
Looks up a localized string similar to '{0}' is not a valid ParseErrorAction while inside a ParseError event..
</summary>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.Resources.ExceptionMessage.ParseErrorActionNotSupported">
<summary>
Looks up a localized string similar to '{0}' is not a supported ParseErrorAction..
</summary>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.Resources.ExceptionMessage.ReaderClosed">
<summary>
Looks up a localized string similar to This operation is invalid when the reader is closed..
</summary>
</member>
<member name="P:LumenWorks.Framework.IO.Csv.Resources.ExceptionMessage.RecordIndexLessThanZero">
<summary>
Looks up a localized string similar to Record index must be 0 or more..
</summary>
</member>
<member name="T:LumenWorks.Framework.IO.Csv.ParseErrorAction">
<summary>
Specifies the action to take when a parsing error has occured.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.ParseErrorAction.RaiseEvent">
<summary>
Raises the <see cref="M:CsvReader.ParseError"/> event.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.ParseErrorAction.AdvanceToNextLine">
<summary>
Tries to advance to next line.
</summary>
</member>
<member name="F:LumenWorks.Framework.IO.Csv.ParseErrorAction.ThrowException">
<summary>
Throws an exception.
</summary>
</member>
</members>
</doc>