Esempio n. 1
0
        /// <summary>
        /// Initializes a new instance of the <see cref="CsvParser"/> class.
        /// </summary>
        /// <param name="reader">The reader.</param>
        /// <param name="configuration">The configuration.</param>
        public CsvParser(TextReader reader, CsvConfiguration configuration)
        {
            this.reader   = reader;
            Configuration = configuration;
            Context       = new CsvContext(this);

            allowComments      = configuration.AllowComments;
            badDataFound       = configuration.BadDataFound;
            bufferSize         = configuration.BufferSize;
            cacheFields        = configuration.CacheFields;
            comment            = configuration.Comment;
            countBytes         = configuration.CountBytes;
            delimiter          = configuration.Delimiter;
            delimiterFirstChar = configuration.Delimiter[0];
            encoding           = configuration.Encoding;
            escape             = configuration.Escape;
            ignoreBlankLines   = configuration.IgnoreBlankLines;
            isNewLineSet       = configuration.IsNewLineSet;
            leaveOpen          = configuration.LeaveOpen;
            lineBreakInQuotedFieldIsBadData = configuration.LineBreakInQuotedFieldIsBadData;
            newLine                = configuration.NewLine;
            newLineFirstChar       = configuration.NewLine[0];
            mode                   = configuration.Mode;
            processFieldBufferSize = 1024;
            quote                  = configuration.Quote;
            whiteSpaceChars        = configuration.WhiteSpaceChars;
            trimOptions            = configuration.TrimOptions;

            buffer = ArrayPool <char> .Shared.Rent(bufferSize);

            processFieldBuffer = ArrayPool <char> .Shared.Rent(processFieldBufferSize);

            fields = new Field[128];
        }
Esempio n. 2
0
        /// <summary>
        /// Initializes a new instance of the <see cref="CsvParser"/> class.
        /// </summary>
        /// <param name="reader">The reader.</param>
        /// <param name="configuration">The configuration.</param>
        public CsvParser(TextReader reader, IParserConfiguration configuration)
        {
            configuration.Validate();

            this.reader        = reader;
            this.configuration = configuration;
            Context            = new CsvContext(this);

            allowComments      = configuration.AllowComments;
            badDataFound       = configuration.BadDataFound;
            bufferSize         = configuration.BufferSize;
            cacheFields        = configuration.CacheFields;
            comment            = configuration.Comment;
            countBytes         = configuration.CountBytes;
            delimiter          = configuration.Delimiter;
            delimiterFirstChar = configuration.Delimiter[0];
            delimiterValues    = configuration.DetectDelimiterValues;
            detectDelimiter    = configuration.DetectDelimiter;
            encoding           = configuration.Encoding;
            escape             = configuration.Escape;
            ignoreBlankLines   = configuration.IgnoreBlankLines;
            isNewLineSet       = configuration.IsNewLineSet;
            leaveOpen          = configuration.LeaveOpen;
            lineBreakInQuotedFieldIsBadData = configuration.LineBreakInQuotedFieldIsBadData;
            newLine                = configuration.NewLine;
            newLineFirstChar       = configuration.NewLine[0];
            mode                   = configuration.Mode;
            processFieldBufferSize = configuration.ProcessFieldBufferSize;
            quote                  = configuration.Quote;
            whiteSpaceChars        = configuration.WhiteSpaceChars;
            trimOptions            = configuration.TrimOptions;

            buffer             = new char[bufferSize];
            processFieldBuffer = new char[processFieldBufferSize];
            fields             = new Field[128];
            processedFields    = new string[128];
        }
Esempio n. 3
0
 public ParserMock(CsvConfiguration configuration)
 {
     Configuration = configuration;
     Context       = new CsvContext(this);
 }
 public AntlrToAstNodesGrammerTreeVisitor(IParserConfiguration configuration, string formulaText)
 {
     this.configuration = configuration;
     this.formulaText   = formulaText;
 }