diff --git a/csv-parser.go b/csv-parser.go index 440c83a..00117d8 100644 --- a/csv-parser.go +++ b/csv-parser.go @@ -29,19 +29,19 @@ var EnclosersRunes = map[EncloserId]Encloser{ CurlyBrackets: Encloser{'{', '}'}, } -type CsvParser struct { +type Parser struct { Enclosers []EncloserId Delimiter string Fields []string Line string } -func (parser *CsvParser) Init() { +func (parser *Parser) Init() { parser.Enclosers = []EncloserId{DoubleQuotes, SquareBrackets} parser.Delimiter = " \t" } -func (parser *CsvParser) ExtractEnclosedFieldValue(endChar byte) error { +func (parser *Parser) ExtractEnclosedFieldValue(endChar byte) error { lineLen := len(parser.Line) for i := 1; i < lineLen; i++ { if parser.Line[i] == endChar && parser.Line[i-1] != '\\' { @@ -53,7 +53,7 @@ func (parser *CsvParser) ExtractEnclosedFieldValue(endChar byte) error { return errors.New("Encloser close not found") } -func (parser *CsvParser) Parse(CsvLine string) error { +func (parser *Parser) Parse(CsvLine string) error { var err error = nil parser.Fields = make([]string,0) diff --git a/csv-parser_test.go b/csv-parser_test.go index 987aabc..76fa165 100644 --- a/csv-parser_test.go +++ b/csv-parser_test.go @@ -6,7 +6,7 @@ import( func TestParse(t *testing.T) { - var parser CsvParser + var parser Parser var CsvTestValues = [...]string { "field1 field2 field3", // standard CSV @@ -38,7 +38,7 @@ func TestParse(t *testing.T) { } } func TestParseWithEscape(t *testing.T) { - var parser CsvParser + var parser Parser var CsvTestValues = [...]string { "\"\\\"field1 and more\" field2 [\\[field3] ", // Enclosed fields