Documentation
      ¶
    
    
  
    
  
    Index ¶
Constants ¶
This section is empty.
Variables ¶
      View Source
      
  
var ( BufferSizeScale = int64(5) ReadBlockSize int64 = 64 * 1024 // LargestEntryLimit is the max size for reading file to buf LargestEntryLimit = 10 * 1024 * 1024 )
Functions ¶
func IndexAnyByte ¶
IndexAnyByte returns the byte index of the first occurrence in s of any in the byte points in chars. It returns -1 if there is no code point in common.
Types ¶
type CSVConfig ¶
type CSVConfig struct {
	// they can only be used by LOAD DATA
	// https://dev.mysql.com/doc/refman/8.0/en/load-data.html#load-data-field-line-handling
	LinesStartingBy   string
	LinesTerminatedBy string
	FieldsTerminatedBy string
	FieldsEnclosedBy   string
	FieldsEscapedBy    string
	Null              []string
	Header            bool
	HeaderSchemaMatch bool
	TrimLastSep       bool
	NotNull           bool
	AllowEmptyLine bool
	// For non-empty FieldsEnclosedBy (for example quotes), null elements inside quotes are not considered as null except for
	// `\N` (when escape-by is `\`). That is to say, `\N` is special for null because it always means null.
	QuotedNullIsText bool
	// ref https://dev.mysql.com/doc/refman/8.0/en/load-data.html
	// > If the field begins with the ENCLOSED BY character, instances of that character are recognized as terminating a
	// > field value only if followed by the field or line TERMINATED BY sequence.
	// This means we will meet unescaped quote in a quoted field
	// > The "BIG" boss      -> The "BIG" boss
	// This means we will meet unescaped quote in an unquoted field
	UnescapedQuote bool
	// see csv.Reader
	Comment byte
}
    type CSVParser ¶
type CSVParser struct {
	// contains filtered or unexported fields
}
    CSVParser is basically a copy of encoding/csv, but special-cased for MySQL-like input.
func NewCSVParser ¶
func NewCSVParser( cfg *CSVConfig, reader io.Reader, blockBufSize int64, shouldParseHeader bool, reuseRow bool, ) (*CSVParser, error)
NewCSVParser creates a CSV parser.
func (*CSVParser) SetColumns ¶
 Click to show internal directories. 
   Click to hide internal directories.