From 3c8f4d7cc67bd6d13370b6ca0b385a193038cdb2 Mon Sep 17 00:00:00 2001 From: HuaiyuXu <391585975@qq.com> Date: Thu, 12 Mar 2020 18:04:55 +0800 Subject: [PATCH] lightning: split large csv file if possible (#272) * lightning: split large csv file if possible * gofmt * gofmt * unit test * add unit test * tiny change * tiny refine * fix ci * remove useless code * fix ci * fix ci * address comments * go fmt for all * address comment * correct the estimateChunkCount Co-authored-by: kennytm --- lightning/config/config.go | 5 + lightning/config/const.go | 1 + lightning/mydump/csv/split_large_file.csv | 4 + lightning/mydump/csv_parser.go | 22 + lightning/mydump/csv_parser_generated.go | 4647 +++++++++++---------- lightning/mydump/parser_generated.go | 4393 ++++++++++--------- lightning/mydump/region.go | 94 +- lightning/mydump/region_test.go | 59 +- lightning/restore/restore.go | 22 +- lightning/restore/restore_test.go | 4 +- 10 files changed, 4867 insertions(+), 4384 deletions(-) create mode 100644 lightning/mydump/csv/split_large_file.csv diff --git a/lightning/config/config.go b/lightning/config/config.go index 6792b5250..ec82aa43f 100644 --- a/lightning/config/config.go +++ b/lightning/config/config.go @@ -133,6 +133,7 @@ type CSVConfig struct { NotNull bool `toml:"not-null" json:"not-null"` Null string `toml:"null" json:"null"` BackslashEscape bool `toml:"backslash-escape" json:"backslash-escape"` + MaxRegionSize int64 `toml:"max-region-size" json:"max-region-size"` } type MydumperRuntime struct { @@ -144,6 +145,8 @@ type MydumperRuntime struct { CharacterSet string `toml:"character-set" json:"character-set"` CSV CSVConfig `toml:"csv" json:"csv"` CaseSensitive bool `toml:"case-sensitive" json:"case-sensitive"` + StrictFormat bool `toml:"strict-format" json:"strict-format"` + MaxRegionSize int64 `toml:"max-region-size" json:"max-region-size"` } type TikvImporter struct { @@ -244,6 +247,8 @@ func NewConfig() *Config { BackslashEscape: true, TrimLastSep: false, }, + StrictFormat: false, + MaxRegionSize: MaxRegionSize, }, TikvImporter: TikvImporter{ Backend: BackendImporter, diff --git a/lightning/config/const.go b/lightning/config/const.go index 5f7541458..8d24a13b4 100644 --- a/lightning/config/const.go +++ b/lightning/config/const.go @@ -21,6 +21,7 @@ const ( // mydumper ReadBlockSize int64 = 64 * _K MinRegionSize int64 = 256 * _M + MaxRegionSize int64 = 256 * _M BufferSizeScale = 5 diff --git a/lightning/mydump/csv/split_large_file.csv b/lightning/mydump/csv/split_large_file.csv new file mode 100644 index 000000000..5b7f8adbd --- /dev/null +++ b/lightning/mydump/csv/split_large_file.csv @@ -0,0 +1,4 @@ +1,1,2 +2,2,1 +3,2,2 +4,2,2 diff --git a/lightning/mydump/csv_parser.go b/lightning/mydump/csv_parser.go index 77f5266fc..e74f9a478 100644 --- a/lightning/mydump/csv_parser.go +++ b/lightning/mydump/csv_parser.go @@ -150,3 +150,25 @@ func (parser *CSVParser) ReadRow() error { } } } + +func (parser *CSVParser) ReadUntilTokNewLine() (pos int64, err error) { + hasField := false + for { + tok, _, err := parser.lex() + switch errors.Cause(err) { + case nil: + case io.EOF: + if hasField { + tok = csvTokNewLine + break + } + fallthrough + default: + return parser.pos, errors.Trace(err) + } + hasField = true + if tok == csvTokNewLine { + return parser.pos, nil + } + } +} diff --git a/lightning/mydump/csv_parser_generated.go b/lightning/mydump/csv_parser_generated.go index 8176aa308..9c348ca1f 100644 --- a/lightning/mydump/csv_parser_generated.go +++ b/lightning/mydump/csv_parser_generated.go @@ -16,11 +16,8 @@ import ( "github.com/pingcap/errors" ) - //.... lightning/mydump/csv_parser.rl:57 - - //.... tmp_parser.go:24 const csv_parser_start int = 8 const csv_parser_first_final int = 8 @@ -28,7 +25,6 @@ const csv_parser_error int = 0 const csv_parser_en_main int = 8 - //.... lightning/mydump/csv_parser.rl:60 func (parser *CSVParser) lex() (csvToken, []byte, error) { @@ -39,16 +35,16 @@ func (parser *CSVParser) lex() (csvToken, []byte, error) { sep := parser.cfg.Separator[0] var cs, ts, te, act, p int - -//.... tmp_parser.go:43 + + //.... tmp_parser.go:43 { - cs = csv_parser_start - ts = 0 - te = 0 - act = 0 + cs = csv_parser_start + ts = 0 + te = 0 + act = 0 } -//.... lightning/mydump/csv_parser.rl:70 + //.... lightning/mydump/csv_parser.rl:70 for { data := parser.buf @@ -59,2476 +55,2512 @@ func (parser *CSVParser) lex() (csvToken, []byte, error) { eof = pe } - -//.... tmp_parser.go:63 - { - var _widec int16 - if p == pe { - goto _test_eof - } - switch cs { - case 8: - goto st_case_8 - case 0: - goto st_case_0 - case 9: - goto st_case_9 - case 10: - goto st_case_10 - case 1: - goto st_case_1 - case 2: - goto st_case_2 - case 11: - goto st_case_11 - case 12: - goto st_case_12 - case 3: - goto st_case_3 - case 13: - goto st_case_13 - case 4: - goto st_case_4 - case 14: - goto st_case_14 - case 15: - goto st_case_15 - case 5: - goto st_case_5 - case 16: - goto st_case_16 - case 6: - goto st_case_6 - case 17: - goto st_case_17 - case 7: - goto st_case_7 - case 18: - goto st_case_18 - case 19: - goto st_case_19 - case 20: - goto st_case_20 - case 21: - goto st_case_21 - case 22: - goto st_case_22 - case 23: - goto st_case_23 - case 24: - goto st_case_24 - } - goto st_out -tr0: -//.... NONE:1 - switch act { - case 0: - {{goto st0 }} - case 1: - {p = (te) - 1 + //.... tmp_parser.go:63 + { + var _widec int16 + if p == pe { + goto _test_eof + } + switch cs { + case 8: + goto st_case_8 + case 0: + goto st_case_0 + case 9: + goto st_case_9 + case 10: + goto st_case_10 + case 1: + goto st_case_1 + case 2: + goto st_case_2 + case 11: + goto st_case_11 + case 12: + goto st_case_12 + case 3: + goto st_case_3 + case 13: + goto st_case_13 + case 4: + goto st_case_4 + case 14: + goto st_case_14 + case 15: + goto st_case_15 + case 5: + goto st_case_5 + case 16: + goto st_case_16 + case 6: + goto st_case_6 + case 17: + goto st_case_17 + case 7: + goto st_case_7 + case 18: + goto st_case_18 + case 19: + goto st_case_19 + case 20: + goto st_case_20 + case 21: + goto st_case_21 + case 22: + goto st_case_22 + case 23: + goto st_case_23 + case 24: + goto st_case_24 + } + goto st_out + tr0: + //.... NONE:1 + switch act { + case 0: + { + { + goto st0 + } + } + case 1: + { + p = (te) - 1 - consumedToken = csvTokSep - {p++; cs = 8; goto _out } - } - case 2: - {p = (te) - 1 + consumedToken = csvTokSep + { + p++ + cs = 8 + goto _out + } + } + case 2: + { + p = (te) - 1 - consumedToken = csvTokField - {p++; cs = 8; goto _out } - } - } - - goto st8 -tr14: -//.... lightning/mydump/csv_parser.rl:45 -p = (te) - 1 -{ - consumedToken = csvTokField - {p++; cs = 8; goto _out } - } - goto st8 -tr17: -//.... lightning/mydump/csv_parser.rl:40 -te = p+1 -{ - consumedToken = csvTokSep - {p++; cs = 8; goto _out } - } - goto st8 -tr23: -//.... lightning/mydump/csv_parser.rl:50 -te = p -p-- -{ - consumedToken = csvTokNewLine - {p++; cs = 8; goto _out } - } - goto st8 -tr24: -//.... lightning/mydump/csv_parser.rl:45 -te = p -p-- -{ - consumedToken = csvTokField - {p++; cs = 8; goto _out } - } - goto st8 -tr25: -//.... lightning/mydump/csv_parser.rl:40 -te = p -p-- -{ - consumedToken = csvTokSep - {p++; cs = 8; goto _out } - } - goto st8 - st8: -//.... NONE:1 -ts = 0 + consumedToken = csvTokField + { + p++ + cs = 8 + goto _out + } + } + } -//.... NONE:1 -act = 0 + goto st8 + tr14: + //.... lightning/mydump/csv_parser.rl:45 + p = (te) - 1 + { + consumedToken = csvTokField + { + p++ + cs = 8 + goto _out + } + } + goto st8 + tr17: + //.... lightning/mydump/csv_parser.rl:40 + te = p + 1 + { + consumedToken = csvTokSep + { + p++ + cs = 8 + goto _out + } + } + goto st8 + tr23: + //.... lightning/mydump/csv_parser.rl:50 + te = p + p-- + { + consumedToken = csvTokNewLine + { + p++ + cs = 8 + goto _out + } + } + goto st8 + tr24: + //.... lightning/mydump/csv_parser.rl:45 + te = p + p-- + { + consumedToken = csvTokField + { + p++ + cs = 8 + goto _out + } + } + goto st8 + tr25: + //.... lightning/mydump/csv_parser.rl:40 + te = p + p-- + { + consumedToken = csvTokSep + { + p++ + cs = 8 + goto _out + } + } + goto st8 + st8: + //.... NONE:1 + ts = 0 - if p++; p == pe { - goto _test_eof8 - } - st_case_8: -//.... NONE:1 -ts = p + //.... NONE:1 + act = 0 + + if p++; p == pe { + goto _test_eof8 + } + st_case_8: + //.... NONE:1 + ts = p -//.... tmp_parser.go:199 - _widec = int16(data[p]) - switch { - case data[p] < 14: + //.... tmp_parser.go:199 + _widec = int16(data[p]) switch { - case data[p] > 9: - if 11 <= data[p] && data[p] <= 12 { + case data[p] < 14: + switch { + case data[p] > 9: + if 11 <= data[p] && data[p] <= 12 { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + default: _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if data[p] == sep { _widec += 512 } } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if data[p] == sep { - _widec += 512 - } - } - case data[p] > 91: - switch { - case data[p] > 92: - if 93 <= data[p] { - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + case data[p] > 91: + switch { + case data[p] > 92: + if 93 <= data[p] { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + case data[p] >= 92: + _widec = 3840 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if parser.escFlavor != backslashEscapeFlavorNone { _widec += 512 } + if data[p] == sep { + _widec += 1024 + } } - case data[p] >= 92: - _widec = 3840 + (int16(data[p]) - 0) - if data[p] == delim { + default: + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if parser.escFlavor != backslashEscapeFlavorNone { + if data[p] == sep { _widec += 512 } - if data[p] == sep { - _widec += 1024 - } - } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 } - if data[p] == sep { - _widec += 512 + switch _widec { + case 10: + goto st9 + case 13: + goto st9 + case 3932: + goto tr1 + case 4188: + goto st2 + case 4444: + goto st1 + case 4700: + goto st5 + case 4956: + goto tr17 + case 5212: + goto tr18 + case 5468: + goto st23 + case 5724: + goto st24 } - } - switch _widec { - case 10: - goto st9 - case 13: - goto st9 - case 3932: - goto tr1 - case 4188: - goto st2 - case 4444: - goto st1 - case 4700: - goto st5 - case 4956: - goto tr17 - case 5212: - goto tr18 - case 5468: - goto st23 - case 5724: - goto st24 - } - switch { - case _widec < 3165: switch { - case _widec < 2909: + case _widec < 3165: switch { - case _widec < 2827: - if 2816 <= _widec && _widec <= 2825 { - goto tr1 - } - case _widec > 2828: - if 2830 <= _widec && _widec <= 2907 { + case _widec < 2909: + switch { + case _widec < 2827: + if 2816 <= _widec && _widec <= 2825 { + goto tr1 + } + case _widec > 2828: + if 2830 <= _widec && _widec <= 2907 { + goto tr1 + } + default: goto tr1 } - default: - goto tr1 - } - case _widec > 3071: - switch { - case _widec < 3083: - if 3072 <= _widec && _widec <= 3081 { - goto st2 - } - case _widec > 3084: - if 3086 <= _widec && _widec <= 3163 { + case _widec > 3071: + switch { + case _widec < 3083: + if 3072 <= _widec && _widec <= 3081 { + goto st2 + } + case _widec > 3084: + if 3086 <= _widec && _widec <= 3163 { + goto st2 + } + default: goto st2 } default: - goto st2 + goto tr1 } - default: - goto tr1 - } - case _widec > 3327: - switch { - case _widec < 3421: + case _widec > 3327: switch { - case _widec < 3339: - if 3328 <= _widec && _widec <= 3337 { - goto tr17 - } - case _widec > 3340: - if 3342 <= _widec && _widec <= 3419 { + case _widec < 3421: + switch { + case _widec < 3339: + if 3328 <= _widec && _widec <= 3337 { + goto tr17 + } + case _widec > 3340: + if 3342 <= _widec && _widec <= 3419 { + goto tr17 + } + default: goto tr17 } - default: - goto tr17 - } - case _widec > 3583: - switch { - case _widec < 3595: - if 3584 <= _widec && _widec <= 3593 { - goto tr18 - } - case _widec > 3596: + case _widec > 3583: switch { - case _widec > 3675: - if 3677 <= _widec && _widec <= 3839 { + case _widec < 3595: + if 3584 <= _widec && _widec <= 3593 { + goto tr18 + } + case _widec > 3596: + switch { + case _widec > 3675: + if 3677 <= _widec && _widec <= 3839 { + goto tr18 + } + case _widec >= 3598: goto tr18 } - case _widec >= 3598: + default: goto tr18 } default: - goto tr18 + goto tr17 } default: - goto tr17 + goto st2 } - default: - goto st2 - } - goto st0 -st_case_0: - st0: - cs = 0 - goto _out - st9: - if p++; p == pe { - goto _test_eof9 - } - st_case_9: - switch data[p] { - case 10: - goto st9 - case 13: - goto st9 - } - goto tr23 -tr1: -//.... NONE:1 -te = p+1 + goto st0 + st_case_0: + st0: + cs = 0 + goto _out + st9: + if p++; p == pe { + goto _test_eof9 + } + st_case_9: + switch data[p] { + case 10: + goto st9 + case 13: + goto st9 + } + goto tr23 + tr1: + //.... NONE:1 + te = p + 1 -//.... lightning/mydump/csv_parser.rl:45 -act = 2; - goto st10 - st10: - if p++; p == pe { - goto _test_eof10 - } - st_case_10: -//.... tmp_parser.go:378 - _widec = int16(data[p]) - switch { - case data[p] < 14: - switch { - case data[p] > 9: - if 11 <= data[p] && data[p] <= 12 { + //.... lightning/mydump/csv_parser.rl:45 + act = 2 + goto st10 + st10: + if p++; p == pe { + goto _test_eof10 + } + st_case_10: + //.... tmp_parser.go:378 + _widec = int16(data[p]) + switch { + case data[p] < 14: + switch { + case data[p] > 9: + if 11 <= data[p] && data[p] <= 12 { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + default: _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if data[p] == sep { _widec += 512 } } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if data[p] == sep { - _widec += 512 - } - } - case data[p] > 91: - switch { - case data[p] > 92: - if 93 <= data[p] { - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + case data[p] > 91: + switch { + case data[p] > 92: + if 93 <= data[p] { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + case data[p] >= 92: + _widec = 3840 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if parser.escFlavor != backslashEscapeFlavorNone { _widec += 512 } + if data[p] == sep { + _widec += 1024 + } } - case data[p] >= 92: - _widec = 3840 + (int16(data[p]) - 0) - if data[p] == delim { + default: + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if parser.escFlavor != backslashEscapeFlavorNone { + if data[p] == sep { _widec += 512 } - if data[p] == sep { - _widec += 1024 - } } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if data[p] == sep { - _widec += 512 - } - } - switch _widec { - case 3932: - goto tr1 - case 4444: - goto st1 - case 4700: - goto st1 - case 5468: - goto st1 - case 5724: - goto st1 - } - switch { - case _widec < 2827: - if 2816 <= _widec && _widec <= 2825 { + switch _widec { + case 3932: goto tr1 - } - case _widec > 2828: - switch { - case _widec > 2907: - if 2909 <= _widec && _widec <= 3071 { + case 4444: + goto st1 + case 4700: + goto st1 + case 5468: + goto st1 + case 5724: + goto st1 + } + switch { + case _widec < 2827: + if 2816 <= _widec && _widec <= 2825 { + goto tr1 + } + case _widec > 2828: + switch { + case _widec > 2907: + if 2909 <= _widec && _widec <= 3071 { + goto tr1 + } + case _widec >= 2830: goto tr1 } - case _widec >= 2830: + default: goto tr1 } - default: + goto tr24 + st1: + if p++; p == pe { + goto _test_eof1 + } + st_case_1: goto tr1 - } - goto tr24 - st1: - if p++; p == pe { - goto _test_eof1 - } - st_case_1: - goto tr1 - st2: - if p++; p == pe { - goto _test_eof2 - } - st_case_2: - _widec = int16(data[p]) - switch { - case data[p] < 14: + st2: + if p++; p == pe { + goto _test_eof2 + } + st_case_2: + _widec = int16(data[p]) switch { - case data[p] > 9: - if 11 <= data[p] && data[p] <= 12 { + case data[p] < 14: + switch { + case data[p] > 9: + if 11 <= data[p] && data[p] <= 12 { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + default: _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if data[p] == sep { _widec += 512 } } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if data[p] == sep { - _widec += 512 - } - } - case data[p] > 91: - switch { - case data[p] > 92: - if 93 <= data[p] { - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + case data[p] > 91: + switch { + case data[p] > 92: + if 93 <= data[p] { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + case data[p] >= 92: + _widec = 3840 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if parser.escFlavor != backslashEscapeFlavorNone { _widec += 512 } + if data[p] == sep { + _widec += 1024 + } } - case data[p] >= 92: - _widec = 3840 + (int16(data[p]) - 0) - if data[p] == delim { + default: + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if parser.escFlavor != backslashEscapeFlavorNone { + if data[p] == sep { _widec += 512 } - if data[p] == sep { - _widec += 1024 - } - } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if data[p] == sep { - _widec += 512 } - } - switch _widec { - case 10: - goto st2 - case 13: - goto st2 - case 3932: - goto st2 - case 4188: - goto tr3 - case 4444: - goto st3 - case 4700: - goto tr6 - case 4956: - goto st2 - case 5212: - goto tr4 - case 5468: - goto st4 - case 5724: - goto tr8 - } - switch { - case _widec < 3165: - switch { - case _widec < 2909: - switch { - case _widec < 2827: - if 2816 <= _widec && _widec <= 2825 { - goto st2 - } - case _widec > 2828: - if 2830 <= _widec && _widec <= 2907 { - goto st2 - } - default: - goto st2 - } - case _widec > 3071: - switch { - case _widec < 3083: - if 3072 <= _widec && _widec <= 3081 { - goto tr3 - } - case _widec > 3084: - if 3086 <= _widec && _widec <= 3163 { - goto tr3 - } - default: - goto tr3 - } - default: + switch _widec { + case 10: + goto st2 + case 13: goto st2 + case 3932: + goto st2 + case 4188: + goto tr3 + case 4444: + goto st3 + case 4700: + goto tr6 + case 4956: + goto st2 + case 5212: + goto tr4 + case 5468: + goto st4 + case 5724: + goto tr8 } - case _widec > 3327: switch { - case _widec < 3421: + case _widec < 3165: switch { - case _widec < 3339: - if 3328 <= _widec && _widec <= 3337 { + case _widec < 2909: + switch { + case _widec < 2827: + if 2816 <= _widec && _widec <= 2825 { + goto st2 + } + case _widec > 2828: + if 2830 <= _widec && _widec <= 2907 { + goto st2 + } + default: goto st2 } - case _widec > 3340: - if 3342 <= _widec && _widec <= 3419 { - goto st2 + case _widec > 3071: + switch { + case _widec < 3083: + if 3072 <= _widec && _widec <= 3081 { + goto tr3 + } + case _widec > 3084: + if 3086 <= _widec && _widec <= 3163 { + goto tr3 + } + default: + goto tr3 } default: goto st2 } - case _widec > 3583: + case _widec > 3327: switch { - case _widec < 3595: - if 3584 <= _widec && _widec <= 3593 { - goto tr4 + case _widec < 3421: + switch { + case _widec < 3339: + if 3328 <= _widec && _widec <= 3337 { + goto st2 + } + case _widec > 3340: + if 3342 <= _widec && _widec <= 3419 { + goto st2 + } + default: + goto st2 } - case _widec > 3596: + case _widec > 3583: switch { - case _widec > 3675: - if 3677 <= _widec && _widec <= 3839 { + case _widec < 3595: + if 3584 <= _widec && _widec <= 3593 { + goto tr4 + } + case _widec > 3596: + switch { + case _widec > 3675: + if 3677 <= _widec && _widec <= 3839 { + goto tr4 + } + case _widec >= 3598: goto tr4 } - case _widec >= 3598: + default: goto tr4 } default: - goto tr4 + goto st2 } default: - goto st2 + goto tr3 } - default: - goto tr3 - } - goto tr0 -tr3: -//.... NONE:1 -te = p+1 + goto tr0 + tr3: + //.... NONE:1 + te = p + 1 -//.... lightning/mydump/csv_parser.rl:45 -act = 2; - goto st11 - st11: - if p++; p == pe { - goto _test_eof11 - } - st_case_11: -//.... tmp_parser.go:638 - _widec = int16(data[p]) - switch { - case data[p] < 11: - if data[p] <= 9 { - _widec = 768 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 + //.... lightning/mydump/csv_parser.rl:45 + act = 2 + goto st11 + st11: + if p++; p == pe { + goto _test_eof11 + } + st_case_11: + //.... tmp_parser.go:638 + _widec = int16(data[p]) + switch { + case data[p] < 11: + if data[p] <= 9 { + _widec = 768 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } } - } - case data[p] > 12: - if 14 <= data[p] { + case data[p] > 12: + if 14 <= data[p] { + _widec = 768 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + } + default: _widec = 768 + (int16(data[p]) - 0) - if data[p] == delim { + if data[p] == delim { _widec += 256 } } - default: - _widec = 768 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - } - switch { - case _widec < 1035: - if 1024 <= _widec && _widec <= 1033 { - goto st2 - } - case _widec > 1036: - if 1038 <= _widec && _widec <= 1279 { + switch { + case _widec < 1035: + if 1024 <= _widec && _widec <= 1033 { + goto st2 + } + case _widec > 1036: + if 1038 <= _widec && _widec <= 1279 { + goto st2 + } + default: goto st2 } - default: - goto st2 - } - goto tr24 -tr4: -//.... NONE:1 -te = p+1 + goto tr24 + tr4: + //.... NONE:1 + te = p + 1 -//.... lightning/mydump/csv_parser.rl:45 -act = 2; - goto st12 - st12: - if p++; p == pe { - goto _test_eof12 - } - st_case_12: -//.... tmp_parser.go:686 - _widec = int16(data[p]) - switch { - case data[p] < 14: - switch { - case data[p] > 9: - if 11 <= data[p] && data[p] <= 12 { + //.... lightning/mydump/csv_parser.rl:45 + act = 2 + goto st12 + st12: + if p++; p == pe { + goto _test_eof12 + } + st_case_12: + //.... tmp_parser.go:686 + _widec = int16(data[p]) + switch { + case data[p] < 14: + switch { + case data[p] > 9: + if 11 <= data[p] && data[p] <= 12 { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + default: _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if data[p] == sep { _widec += 512 } } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if data[p] == sep { - _widec += 512 - } - } - case data[p] > 91: - switch { - case data[p] > 92: - if 93 <= data[p] { - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + case data[p] > 91: + switch { + case data[p] > 92: + if 93 <= data[p] { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + case data[p] >= 92: + _widec = 3840 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if parser.escFlavor != backslashEscapeFlavorNone { _widec += 512 } + if data[p] == sep { + _widec += 1024 + } } - case data[p] >= 92: - _widec = 3840 + (int16(data[p]) - 0) - if data[p] == delim { + default: + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if parser.escFlavor != backslashEscapeFlavorNone { + if data[p] == sep { _widec += 512 } - if data[p] == sep { - _widec += 1024 - } - } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 } - if data[p] == sep { - _widec += 512 + switch _widec { + case 10: + goto st2 + case 13: + goto st2 + case 3932: + goto st2 + case 4188: + goto tr4 + case 4444: + goto st3 + case 4700: + goto tr8 + case 4956: + goto st2 + case 5212: + goto tr4 + case 5468: + goto st4 + case 5724: + goto tr8 } - } - switch _widec { - case 10: - goto st2 - case 13: - goto st2 - case 3932: - goto st2 - case 4188: - goto tr4 - case 4444: - goto st3 - case 4700: - goto tr8 - case 4956: - goto st2 - case 5212: - goto tr4 - case 5468: - goto st4 - case 5724: - goto tr8 - } - switch { - case _widec < 3165: switch { - case _widec < 2909: + case _widec < 3165: switch { - case _widec < 2827: - if 2816 <= _widec && _widec <= 2825 { + case _widec < 2909: + switch { + case _widec < 2827: + if 2816 <= _widec && _widec <= 2825 { + goto st2 + } + case _widec > 2828: + if 2830 <= _widec && _widec <= 2907 { + goto st2 + } + default: goto st2 } - case _widec > 2828: - if 2830 <= _widec && _widec <= 2907 { - goto st2 + case _widec > 3071: + switch { + case _widec < 3083: + if 3072 <= _widec && _widec <= 3081 { + goto tr4 + } + case _widec > 3084: + if 3086 <= _widec && _widec <= 3163 { + goto tr4 + } + default: + goto tr4 } default: goto st2 } - case _widec > 3071: + case _widec > 3327: switch { - case _widec < 3083: - if 3072 <= _widec && _widec <= 3081 { - goto tr4 + case _widec < 3421: + switch { + case _widec < 3339: + if 3328 <= _widec && _widec <= 3337 { + goto st2 + } + case _widec > 3340: + if 3342 <= _widec && _widec <= 3419 { + goto st2 + } + default: + goto st2 } - case _widec > 3084: - if 3086 <= _widec && _widec <= 3163 { + case _widec > 3583: + switch { + case _widec < 3595: + if 3584 <= _widec && _widec <= 3593 { + goto tr4 + } + case _widec > 3596: + switch { + case _widec > 3675: + if 3677 <= _widec && _widec <= 3839 { + goto tr4 + } + case _widec >= 3598: + goto tr4 + } + default: goto tr4 } default: - goto tr4 + goto st2 + } + default: + goto tr4 + } + goto tr24 + st3: + if p++; p == pe { + goto _test_eof3 + } + st_case_3: + goto st2 + tr8: + //.... NONE:1 + te = p + 1 + + //.... lightning/mydump/csv_parser.rl:45 + act = 2 + goto st13 + st13: + if p++; p == pe { + goto _test_eof13 + } + st_case_13: + //.... tmp_parser.go:855 + _widec = int16(data[p]) + switch { + case data[p] < 14: + switch { + case data[p] > 9: + if 11 <= data[p] && data[p] <= 12 { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + default: + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + case data[p] > 91: + switch { + case data[p] > 92: + if 93 <= data[p] { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + case data[p] >= 92: + _widec = 3840 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if parser.escFlavor != backslashEscapeFlavorNone { + _widec += 512 + } + if data[p] == sep { + _widec += 1024 + } } default: + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + switch _widec { + case 10: + goto st2 + case 13: goto st2 + case 3932: + goto st2 + case 4188: + goto tr4 + case 4444: + goto st4 + case 4700: + goto tr8 + case 4956: + goto st2 + case 5212: + goto tr4 + case 5468: + goto st4 + case 5724: + goto tr8 } - case _widec > 3327: switch { - case _widec < 3421: + case _widec < 3165: switch { - case _widec < 3339: - if 3328 <= _widec && _widec <= 3337 { + case _widec < 2909: + switch { + case _widec < 2827: + if 2816 <= _widec && _widec <= 2825 { + goto st2 + } + case _widec > 2828: + if 2830 <= _widec && _widec <= 2907 { + goto st2 + } + default: goto st2 } - case _widec > 3340: - if 3342 <= _widec && _widec <= 3419 { - goto st2 + case _widec > 3071: + switch { + case _widec < 3083: + if 3072 <= _widec && _widec <= 3081 { + goto tr4 + } + case _widec > 3084: + if 3086 <= _widec && _widec <= 3163 { + goto tr4 + } + default: + goto tr4 } default: goto st2 } - case _widec > 3583: + case _widec > 3327: switch { - case _widec < 3595: - if 3584 <= _widec && _widec <= 3593 { - goto tr4 + case _widec < 3421: + switch { + case _widec < 3339: + if 3328 <= _widec && _widec <= 3337 { + goto st2 + } + case _widec > 3340: + if 3342 <= _widec && _widec <= 3419 { + goto st2 + } + default: + goto st2 } - case _widec > 3596: + case _widec > 3583: switch { - case _widec > 3675: - if 3677 <= _widec && _widec <= 3839 { + case _widec < 3595: + if 3584 <= _widec && _widec <= 3593 { goto tr4 } - case _widec >= 3598: + case _widec > 3596: + switch { + case _widec > 3675: + if 3677 <= _widec && _widec <= 3839 { + goto tr4 + } + case _widec >= 3598: + goto tr4 + } + default: goto tr4 } default: - goto tr4 + goto st2 } default: - goto st2 + goto tr4 } - default: - goto tr4 - } - goto tr24 - st3: - if p++; p == pe { - goto _test_eof3 - } - st_case_3: - goto st2 -tr8: -//.... NONE:1 -te = p+1 - -//.... lightning/mydump/csv_parser.rl:45 -act = 2; - goto st13 - st13: - if p++; p == pe { - goto _test_eof13 - } - st_case_13: -//.... tmp_parser.go:855 - _widec = int16(data[p]) - switch { - case data[p] < 14: + goto tr24 + st4: + if p++; p == pe { + goto _test_eof4 + } + st_case_4: + _widec = int16(data[p]) switch { - case data[p] > 9: - if 11 <= data[p] && data[p] <= 12 { + case data[p] < 14: + switch { + case data[p] > 9: + if 11 <= data[p] && data[p] <= 12 { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + default: _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if data[p] == sep { _widec += 512 } } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if data[p] == sep { - _widec += 512 - } - } - case data[p] > 91: - switch { - case data[p] > 92: - if 93 <= data[p] { - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + case data[p] > 91: + switch { + case data[p] > 92: + if 93 <= data[p] { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + case data[p] >= 92: + _widec = 3840 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if parser.escFlavor != backslashEscapeFlavorNone { _widec += 512 } + if data[p] == sep { + _widec += 1024 + } } - case data[p] >= 92: - _widec = 3840 + (int16(data[p]) - 0) - if data[p] == delim { + default: + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if parser.escFlavor != backslashEscapeFlavorNone { + if data[p] == sep { _widec += 512 } - if data[p] == sep { - _widec += 1024 - } } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if data[p] == sep { - _widec += 512 + switch _widec { + case 10: + goto st2 + case 13: + goto st2 + case 3932: + goto st2 + case 4188: + goto tr4 + case 4444: + goto st4 + case 4700: + goto tr8 + case 4956: + goto st2 + case 5212: + goto tr4 + case 5468: + goto st4 + case 5724: + goto tr8 } - } - switch _widec { - case 10: - goto st2 - case 13: - goto st2 - case 3932: - goto st2 - case 4188: - goto tr4 - case 4444: - goto st4 - case 4700: - goto tr8 - case 4956: - goto st2 - case 5212: - goto tr4 - case 5468: - goto st4 - case 5724: - goto tr8 - } - switch { - case _widec < 3165: switch { - case _widec < 2909: + case _widec < 3165: switch { - case _widec < 2827: - if 2816 <= _widec && _widec <= 2825 { + case _widec < 2909: + switch { + case _widec < 2827: + if 2816 <= _widec && _widec <= 2825 { + goto st2 + } + case _widec > 2828: + if 2830 <= _widec && _widec <= 2907 { + goto st2 + } + default: goto st2 } - case _widec > 2828: - if 2830 <= _widec && _widec <= 2907 { - goto st2 + case _widec > 3071: + switch { + case _widec < 3083: + if 3072 <= _widec && _widec <= 3081 { + goto tr4 + } + case _widec > 3084: + if 3086 <= _widec && _widec <= 3163 { + goto tr4 + } + default: + goto tr4 } default: goto st2 } - case _widec > 3071: + case _widec > 3327: switch { - case _widec < 3083: - if 3072 <= _widec && _widec <= 3081 { - goto tr4 + case _widec < 3421: + switch { + case _widec < 3339: + if 3328 <= _widec && _widec <= 3337 { + goto st2 + } + case _widec > 3340: + if 3342 <= _widec && _widec <= 3419 { + goto st2 + } + default: + goto st2 } - case _widec > 3084: - if 3086 <= _widec && _widec <= 3163 { + case _widec > 3583: + switch { + case _widec < 3595: + if 3584 <= _widec && _widec <= 3593 { + goto tr4 + } + case _widec > 3596: + switch { + case _widec > 3675: + if 3677 <= _widec && _widec <= 3839 { + goto tr4 + } + case _widec >= 3598: + goto tr4 + } + default: goto tr4 } default: - goto tr4 + goto st2 + } + default: + goto tr4 + } + goto tr0 + tr6: + //.... NONE:1 + te = p + 1 + + //.... lightning/mydump/csv_parser.rl:45 + act = 2 + goto st14 + st14: + if p++; p == pe { + goto _test_eof14 + } + st_case_14: + //.... tmp_parser.go:1173 + _widec = int16(data[p]) + switch { + case data[p] < 11: + if data[p] <= 9 { + _widec = 768 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + } + case data[p] > 12: + if 14 <= data[p] { + _widec = 768 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } } default: + _widec = 768 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + } + switch _widec { + case 10: + goto st2 + case 13: goto st2 } - case _widec > 3327: switch { - case _widec < 3421: + case _widec < 782: switch { - case _widec < 3339: - if 3328 <= _widec && _widec <= 3337 { + case _widec > 777: + if 779 <= _widec && _widec <= 780 { goto st2 } - case _widec > 3340: - if 3342 <= _widec && _widec <= 3419 { - goto st2 - } - default: + case _widec >= 768: goto st2 } - case _widec > 3583: + case _widec > 1033: switch { - case _widec < 3595: - if 3584 <= _widec && _widec <= 3593 { - goto tr4 - } - case _widec > 3596: - switch { - case _widec > 3675: - if 3677 <= _widec && _widec <= 3839 { - goto tr4 - } - case _widec >= 3598: - goto tr4 + case _widec > 1036: + if 1038 <= _widec && _widec <= 1279 { + goto st2 } - default: - goto tr4 + case _widec >= 1035: + goto st2 } default: goto st2 } - default: - goto tr4 - } - goto tr24 - st4: - if p++; p == pe { - goto _test_eof4 - } - st_case_4: - _widec = int16(data[p]) - switch { - case data[p] < 14: - switch { - case data[p] > 9: - if 11 <= data[p] && data[p] <= 12 { + goto tr24 + tr18: + //.... NONE:1 + te = p + 1 + + //.... lightning/mydump/csv_parser.rl:40 + act = 1 + goto st15 + st15: + if p++; p == pe { + goto _test_eof15 + } + st_case_15: + //.... tmp_parser.go:1237 + _widec = int16(data[p]) + switch { + case data[p] < 14: + switch { + case data[p] > 9: + if 11 <= data[p] && data[p] <= 12 { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + default: _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if data[p] == sep { _widec += 512 } } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if data[p] == sep { - _widec += 512 - } - } - case data[p] > 91: - switch { - case data[p] > 92: - if 93 <= data[p] { - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + case data[p] > 91: + switch { + case data[p] > 92: + if 93 <= data[p] { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + case data[p] >= 92: + _widec = 3840 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if parser.escFlavor != backslashEscapeFlavorNone { _widec += 512 } + if data[p] == sep { + _widec += 1024 + } } - case data[p] >= 92: - _widec = 3840 + (int16(data[p]) - 0) - if data[p] == delim { + default: + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if parser.escFlavor != backslashEscapeFlavorNone { + if data[p] == sep { _widec += 512 } - if data[p] == sep { - _widec += 1024 - } - } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 } - if data[p] == sep { - _widec += 512 + switch _widec { + case 10: + goto st2 + case 13: + goto st2 + case 3932: + goto st2 + case 4188: + goto tr3 + case 4444: + goto st3 + case 4700: + goto tr6 + case 4956: + goto st2 + case 5212: + goto tr4 + case 5468: + goto st4 + case 5724: + goto tr8 } - } - switch _widec { - case 10: - goto st2 - case 13: - goto st2 - case 3932: - goto st2 - case 4188: - goto tr4 - case 4444: - goto st4 - case 4700: - goto tr8 - case 4956: - goto st2 - case 5212: - goto tr4 - case 5468: - goto st4 - case 5724: - goto tr8 - } - switch { - case _widec < 3165: switch { - case _widec < 2909: + case _widec < 3165: switch { - case _widec < 2827: - if 2816 <= _widec && _widec <= 2825 { + case _widec < 2909: + switch { + case _widec < 2827: + if 2816 <= _widec && _widec <= 2825 { + goto st2 + } + case _widec > 2828: + if 2830 <= _widec && _widec <= 2907 { + goto st2 + } + default: goto st2 } - case _widec > 2828: - if 2830 <= _widec && _widec <= 2907 { - goto st2 + case _widec > 3071: + switch { + case _widec < 3083: + if 3072 <= _widec && _widec <= 3081 { + goto tr3 + } + case _widec > 3084: + if 3086 <= _widec && _widec <= 3163 { + goto tr3 + } + default: + goto tr3 } default: goto st2 } - case _widec > 3071: + case _widec > 3327: switch { - case _widec < 3083: - if 3072 <= _widec && _widec <= 3081 { - goto tr4 + case _widec < 3421: + switch { + case _widec < 3339: + if 3328 <= _widec && _widec <= 3337 { + goto st2 + } + case _widec > 3340: + if 3342 <= _widec && _widec <= 3419 { + goto st2 + } + default: + goto st2 } - case _widec > 3084: - if 3086 <= _widec && _widec <= 3163 { + case _widec > 3583: + switch { + case _widec < 3595: + if 3584 <= _widec && _widec <= 3593 { + goto tr4 + } + case _widec > 3596: + switch { + case _widec > 3675: + if 3677 <= _widec && _widec <= 3839 { + goto tr4 + } + case _widec >= 3598: + goto tr4 + } + default: goto tr4 } default: - goto tr4 + goto st2 } default: - goto st2 + goto tr3 + } + goto tr25 + st5: + if p++; p == pe { + goto _test_eof5 } - case _widec > 3327: + st_case_5: + _widec = int16(data[p]) switch { - case _widec < 3421: + case data[p] < 14: switch { - case _widec < 3339: - if 3328 <= _widec && _widec <= 3337 { - goto st2 - } - case _widec > 3340: - if 3342 <= _widec && _widec <= 3419 { - goto st2 + case data[p] > 9: + if 11 <= data[p] && data[p] <= 12 { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } } default: - goto st2 - } - case _widec > 3583: - switch { - case _widec < 3595: - if 3584 <= _widec && _widec <= 3593 { - goto tr4 - } - case _widec > 3596: - switch { - case _widec > 3675: - if 3677 <= _widec && _widec <= 3839 { - goto tr4 - } - case _widec >= 3598: - goto tr4 - } - default: - goto tr4 - } - default: - goto st2 - } - default: - goto tr4 - } - goto tr0 -tr6: -//.... NONE:1 -te = p+1 - -//.... lightning/mydump/csv_parser.rl:45 -act = 2; - goto st14 - st14: - if p++; p == pe { - goto _test_eof14 - } - st_case_14: -//.... tmp_parser.go:1173 - _widec = int16(data[p]) - switch { - case data[p] < 11: - if data[p] <= 9 { - _widec = 768 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - } - case data[p] > 12: - if 14 <= data[p] { - _widec = 768 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - } - default: - _widec = 768 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - } - switch _widec { - case 10: - goto st2 - case 13: - goto st2 - } - switch { - case _widec < 782: - switch { - case _widec > 777: - if 779 <= _widec && _widec <= 780 { - goto st2 - } - case _widec >= 768: - goto st2 - } - case _widec > 1033: - switch { - case _widec > 1036: - if 1038 <= _widec && _widec <= 1279 { - goto st2 - } - case _widec >= 1035: - goto st2 - } - default: - goto st2 - } - goto tr24 -tr18: -//.... NONE:1 -te = p+1 - -//.... lightning/mydump/csv_parser.rl:40 -act = 1; - goto st15 - st15: - if p++; p == pe { - goto _test_eof15 - } - st_case_15: -//.... tmp_parser.go:1237 - _widec = int16(data[p]) - switch { - case data[p] < 14: - switch { - case data[p] > 9: - if 11 <= data[p] && data[p] <= 12 { _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if data[p] == sep { _widec += 512 } } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if data[p] == sep { - _widec += 512 - } - } - case data[p] > 91: - switch { - case data[p] > 92: - if 93 <= data[p] { - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + case data[p] > 91: + switch { + case data[p] > 92: + if 93 <= data[p] { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + case data[p] >= 92: + _widec = 3840 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if parser.escFlavor != backslashEscapeFlavorNone { _widec += 512 } + if data[p] == sep { + _widec += 1024 + } } - case data[p] >= 92: - _widec = 3840 + (int16(data[p]) - 0) - if data[p] == delim { + default: + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if parser.escFlavor != backslashEscapeFlavorNone { + if data[p] == sep { _widec += 512 } - if data[p] == sep { - _widec += 1024 - } } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if data[p] == sep { - _widec += 512 + switch _widec { + case 10: + goto tr9 + case 13: + goto tr9 + case 3932: + goto tr9 + case 4188: + goto tr10 + case 4444: + goto tr12 + case 4700: + goto tr12 + case 4956: + goto tr9 + case 5212: + goto tr11 + case 5468: + goto tr13 + case 5724: + goto tr13 } - } - switch _widec { - case 10: - goto st2 - case 13: - goto st2 - case 3932: - goto st2 - case 4188: - goto tr3 - case 4444: - goto st3 - case 4700: - goto tr6 - case 4956: - goto st2 - case 5212: - goto tr4 - case 5468: - goto st4 - case 5724: - goto tr8 - } - switch { - case _widec < 3165: switch { - case _widec < 2909: + case _widec < 3165: switch { - case _widec < 2827: - if 2816 <= _widec && _widec <= 2825 { - goto st2 + case _widec < 2909: + switch { + case _widec < 2827: + if 2816 <= _widec && _widec <= 2825 { + goto tr9 + } + case _widec > 2828: + if 2830 <= _widec && _widec <= 2907 { + goto tr9 + } + default: + goto tr9 } - case _widec > 2828: - if 2830 <= _widec && _widec <= 2907 { - goto st2 + case _widec > 3071: + switch { + case _widec < 3083: + if 3072 <= _widec && _widec <= 3081 { + goto tr10 + } + case _widec > 3084: + if 3086 <= _widec && _widec <= 3163 { + goto tr10 + } + default: + goto tr10 } default: - goto st2 + goto tr9 } - case _widec > 3071: + case _widec > 3327: switch { - case _widec < 3083: - if 3072 <= _widec && _widec <= 3081 { - goto tr3 + case _widec < 3421: + switch { + case _widec < 3339: + if 3328 <= _widec && _widec <= 3337 { + goto tr9 + } + case _widec > 3340: + if 3342 <= _widec && _widec <= 3419 { + goto tr9 + } + default: + goto tr9 } - case _widec > 3084: - if 3086 <= _widec && _widec <= 3163 { - goto tr3 + case _widec > 3583: + switch { + case _widec < 3595: + if 3584 <= _widec && _widec <= 3593 { + goto tr11 + } + case _widec > 3596: + switch { + case _widec > 3675: + if 3677 <= _widec && _widec <= 3839 { + goto tr11 + } + case _widec >= 3598: + goto tr11 + } + default: + goto tr11 } default: - goto tr3 + goto tr9 } default: - goto st2 + goto tr10 } - case _widec > 3327: - switch { - case _widec < 3421: - switch { - case _widec < 3339: - if 3328 <= _widec && _widec <= 3337 { - goto st2 - } - case _widec > 3340: - if 3342 <= _widec && _widec <= 3419 { - goto st2 - } - default: - goto st2 - } - case _widec > 3583: + goto tr0 + tr9: + //.... NONE:1 + te = p + 1 + + //.... lightning/mydump/csv_parser.rl:45 + act = 2 + goto st16 + st16: + if p++; p == pe { + goto _test_eof16 + } + st_case_16: + //.... tmp_parser.go:1555 + _widec = int16(data[p]) + switch { + case data[p] < 14: switch { - case _widec < 3595: - if 3584 <= _widec && _widec <= 3593 { - goto tr4 - } - case _widec > 3596: - switch { - case _widec > 3675: - if 3677 <= _widec && _widec <= 3839 { - goto tr4 + case data[p] > 9: + if 11 <= data[p] && data[p] <= 12 { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 } - case _widec >= 3598: - goto tr4 } default: - goto tr4 - } - default: - goto st2 - } - default: - goto tr3 - } - goto tr25 - st5: - if p++; p == pe { - goto _test_eof5 - } - st_case_5: - _widec = int16(data[p]) - switch { - case data[p] < 14: - switch { - case data[p] > 9: - if 11 <= data[p] && data[p] <= 12 { _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if data[p] == sep { _widec += 512 } } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if data[p] == sep { - _widec += 512 - } - } - case data[p] > 91: - switch { - case data[p] > 92: - if 93 <= data[p] { - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + case data[p] > 91: + switch { + case data[p] > 92: + if 93 <= data[p] { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + case data[p] >= 92: + _widec = 3840 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if parser.escFlavor != backslashEscapeFlavorNone { _widec += 512 } + if data[p] == sep { + _widec += 1024 + } } - case data[p] >= 92: - _widec = 3840 + (int16(data[p]) - 0) - if data[p] == delim { + default: + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if parser.escFlavor != backslashEscapeFlavorNone { + if data[p] == sep { _widec += 512 } - if data[p] == sep { - _widec += 1024 - } } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if data[p] == sep { - _widec += 512 - } - } - switch _widec { - case 10: - goto tr9 - case 13: - goto tr9 - case 3932: - goto tr9 - case 4188: - goto tr10 - case 4444: - goto tr12 - case 4700: - goto tr12 - case 4956: - goto tr9 - case 5212: - goto tr11 - case 5468: - goto tr13 - case 5724: - goto tr13 - } - switch { - case _widec < 3165: - switch { - case _widec < 2909: - switch { - case _widec < 2827: - if 2816 <= _widec && _widec <= 2825 { - goto tr9 - } - case _widec > 2828: - if 2830 <= _widec && _widec <= 2907 { - goto tr9 - } - default: - goto tr9 - } - case _widec > 3071: - switch { - case _widec < 3083: - if 3072 <= _widec && _widec <= 3081 { - goto tr10 - } - case _widec > 3084: - if 3086 <= _widec && _widec <= 3163 { - goto tr10 - } - default: - goto tr10 - } - default: + switch _widec { + case 10: + goto st2 + case 13: + goto st2 + case 3932: goto tr9 + case 4188: + goto tr3 + case 4444: + goto st6 + case 4700: + goto st17 + case 4956: + goto st2 + case 5212: + goto tr4 + case 5468: + goto st7 + case 5724: + goto st19 } - case _widec > 3327: switch { - case _widec < 3421: + case _widec < 3165: switch { - case _widec < 3339: - if 3328 <= _widec && _widec <= 3337 { + case _widec < 2909: + switch { + case _widec < 2827: + if 2816 <= _widec && _widec <= 2825 { + goto tr9 + } + case _widec > 2828: + if 2830 <= _widec && _widec <= 2907 { + goto tr9 + } + default: goto tr9 } - case _widec > 3340: - if 3342 <= _widec && _widec <= 3419 { - goto tr9 + case _widec > 3071: + switch { + case _widec < 3083: + if 3072 <= _widec && _widec <= 3081 { + goto tr3 + } + case _widec > 3084: + if 3086 <= _widec && _widec <= 3163 { + goto tr3 + } + default: + goto tr3 } default: goto tr9 } - case _widec > 3583: + case _widec > 3327: switch { - case _widec < 3595: - if 3584 <= _widec && _widec <= 3593 { - goto tr11 + case _widec < 3421: + switch { + case _widec < 3339: + if 3328 <= _widec && _widec <= 3337 { + goto st2 + } + case _widec > 3340: + if 3342 <= _widec && _widec <= 3419 { + goto st2 + } + default: + goto st2 } - case _widec > 3596: + case _widec > 3583: switch { - case _widec > 3675: - if 3677 <= _widec && _widec <= 3839 { - goto tr11 + case _widec < 3595: + if 3584 <= _widec && _widec <= 3593 { + goto tr4 } - case _widec >= 3598: - goto tr11 + case _widec > 3596: + switch { + case _widec > 3675: + if 3677 <= _widec && _widec <= 3839 { + goto tr4 + } + case _widec >= 3598: + goto tr4 + } + default: + goto tr4 } default: - goto tr11 + goto st2 } default: - goto tr9 + goto tr3 } - default: - goto tr10 - } - goto tr0 -tr9: -//.... NONE:1 -te = p+1 - -//.... lightning/mydump/csv_parser.rl:45 -act = 2; - goto st16 - st16: - if p++; p == pe { - goto _test_eof16 - } - st_case_16: -//.... tmp_parser.go:1555 - _widec = int16(data[p]) - switch { - case data[p] < 14: + goto tr24 + st6: + if p++; p == pe { + goto _test_eof6 + } + st_case_6: + goto tr9 + st17: + if p++; p == pe { + goto _test_eof17 + } + st_case_17: + _widec = int16(data[p]) switch { - case data[p] > 9: - if 11 <= data[p] && data[p] <= 12 { - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + case data[p] < 11: + if data[p] <= 9 { + _widec = 768 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if data[p] == sep { - _widec += 512 - } } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if data[p] == sep { - _widec += 512 - } - } - case data[p] > 91: - switch { - case data[p] > 92: - if 93 <= data[p] { - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + case data[p] > 12: + if 14 <= data[p] { + _widec = 768 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if data[p] == sep { - _widec += 512 - } } - case data[p] >= 92: - _widec = 3840 + (int16(data[p]) - 0) - if data[p] == delim { + default: + _widec = 768 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if parser.escFlavor != backslashEscapeFlavorNone { - _widec += 512 - } - if data[p] == sep { - _widec += 1024 - } } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if data[p] == sep { - _widec += 512 + switch _widec { + case 10: + goto tr9 + case 13: + goto tr9 } - } - switch _widec { - case 10: - goto st2 - case 13: - goto st2 - case 3932: - goto tr9 - case 4188: - goto tr3 - case 4444: - goto st6 - case 4700: - goto st17 - case 4956: - goto st2 - case 5212: - goto tr4 - case 5468: - goto st7 - case 5724: - goto st19 - } - switch { - case _widec < 3165: switch { - case _widec < 2909: + case _widec < 782: switch { - case _widec < 2827: - if 2816 <= _widec && _widec <= 2825 { - goto tr9 - } - case _widec > 2828: - if 2830 <= _widec && _widec <= 2907 { + case _widec > 777: + if 779 <= _widec && _widec <= 780 { goto tr9 } - default: + case _widec >= 768: goto tr9 } - case _widec > 3071: + case _widec > 1033: switch { - case _widec < 3083: - if 3072 <= _widec && _widec <= 3081 { - goto tr3 - } - case _widec > 3084: - if 3086 <= _widec && _widec <= 3163 { - goto tr3 + case _widec > 1036: + if 1038 <= _widec && _widec <= 1279 { + goto tr9 } - default: - goto tr3 + case _widec >= 1035: + goto tr9 } default: goto tr9 } - case _widec > 3327: + goto tr24 + st7: + if p++; p == pe { + goto _test_eof7 + } + st_case_7: + _widec = int16(data[p]) switch { - case _widec < 3421: - switch { - case _widec < 3339: - if 3328 <= _widec && _widec <= 3337 { - goto st2 - } - case _widec > 3340: - if 3342 <= _widec && _widec <= 3419 { - goto st2 - } - default: - goto st2 - } - case _widec > 3583: + case data[p] < 14: switch { - case _widec < 3595: - if 3584 <= _widec && _widec <= 3593 { - goto tr4 - } - case _widec > 3596: - switch { - case _widec > 3675: - if 3677 <= _widec && _widec <= 3839 { - goto tr4 + case data[p] > 9: + if 11 <= data[p] && data[p] <= 12 { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 } - case _widec >= 3598: - goto tr4 } default: - goto tr4 - } - default: - goto st2 - } - default: - goto tr3 - } - goto tr24 - st6: - if p++; p == pe { - goto _test_eof6 - } - st_case_6: - goto tr9 - st17: - if p++; p == pe { - goto _test_eof17 - } - st_case_17: - _widec = int16(data[p]) - switch { - case data[p] < 11: - if data[p] <= 9 { - _widec = 768 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - } - case data[p] > 12: - if 14 <= data[p] { - _widec = 768 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - } - default: - _widec = 768 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - } - switch _widec { - case 10: - goto tr9 - case 13: - goto tr9 - } - switch { - case _widec < 782: - switch { - case _widec > 777: - if 779 <= _widec && _widec <= 780 { - goto tr9 - } - case _widec >= 768: - goto tr9 - } - case _widec > 1033: - switch { - case _widec > 1036: - if 1038 <= _widec && _widec <= 1279 { - goto tr9 - } - case _widec >= 1035: - goto tr9 - } - default: - goto tr9 - } - goto tr24 - st7: - if p++; p == pe { - goto _test_eof7 - } - st_case_7: - _widec = int16(data[p]) - switch { - case data[p] < 14: - switch { - case data[p] > 9: - if 11 <= data[p] && data[p] <= 12 { _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if data[p] == sep { _widec += 512 } } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if data[p] == sep { - _widec += 512 - } - } - case data[p] > 91: - switch { - case data[p] > 92: - if 93 <= data[p] { - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if data[p] == sep { - _widec += 512 - } - } - case data[p] >= 92: - _widec = 3840 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if parser.escFlavor != backslashEscapeFlavorNone { - _widec += 512 - } - if data[p] == sep { - _widec += 1024 - } - } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if data[p] == sep { - _widec += 512 - } - } - switch _widec { - case 10: - goto tr9 - case 13: - goto tr9 - case 3932: - goto tr9 - case 4188: - goto tr11 - case 4444: - goto tr13 - case 4700: - goto tr13 - case 4956: - goto tr9 - case 5212: - goto tr11 - case 5468: - goto tr13 - case 5724: - goto tr13 - } - switch { - case _widec < 3165: - switch { - case _widec < 2909: + case data[p] > 91: switch { - case _widec < 2827: - if 2816 <= _widec && _widec <= 2825 { - goto tr9 - } - case _widec > 2828: - if 2830 <= _widec && _widec <= 2907 { - goto tr9 + case data[p] > 92: + if 93 <= data[p] { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } } - default: - goto tr9 - } - case _widec > 3071: - switch { - case _widec < 3083: - if 3072 <= _widec && _widec <= 3081 { - goto tr11 + case data[p] >= 92: + _widec = 3840 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 } - case _widec > 3084: - if 3086 <= _widec && _widec <= 3163 { - goto tr11 + if parser.escFlavor != backslashEscapeFlavorNone { + _widec += 512 + } + if data[p] == sep { + _widec += 1024 } - default: - goto tr11 } default: + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + switch _widec { + case 10: + goto tr9 + case 13: + goto tr9 + case 3932: goto tr9 + case 4188: + goto tr11 + case 4444: + goto tr13 + case 4700: + goto tr13 + case 4956: + goto tr9 + case 5212: + goto tr11 + case 5468: + goto tr13 + case 5724: + goto tr13 } - case _widec > 3327: switch { - case _widec < 3421: + case _widec < 3165: switch { - case _widec < 3339: - if 3328 <= _widec && _widec <= 3337 { + case _widec < 2909: + switch { + case _widec < 2827: + if 2816 <= _widec && _widec <= 2825 { + goto tr9 + } + case _widec > 2828: + if 2830 <= _widec && _widec <= 2907 { + goto tr9 + } + default: goto tr9 } - case _widec > 3340: - if 3342 <= _widec && _widec <= 3419 { - goto tr9 + case _widec > 3071: + switch { + case _widec < 3083: + if 3072 <= _widec && _widec <= 3081 { + goto tr11 + } + case _widec > 3084: + if 3086 <= _widec && _widec <= 3163 { + goto tr11 + } + default: + goto tr11 } default: goto tr9 } - case _widec > 3583: + case _widec > 3327: switch { - case _widec < 3595: - if 3584 <= _widec && _widec <= 3593 { - goto tr11 + case _widec < 3421: + switch { + case _widec < 3339: + if 3328 <= _widec && _widec <= 3337 { + goto tr9 + } + case _widec > 3340: + if 3342 <= _widec && _widec <= 3419 { + goto tr9 + } + default: + goto tr9 } - case _widec > 3596: + case _widec > 3583: switch { - case _widec > 3675: - if 3677 <= _widec && _widec <= 3839 { + case _widec < 3595: + if 3584 <= _widec && _widec <= 3593 { + goto tr11 + } + case _widec > 3596: + switch { + case _widec > 3675: + if 3677 <= _widec && _widec <= 3839 { + goto tr11 + } + case _widec >= 3598: goto tr11 } - case _widec >= 3598: + default: goto tr11 } default: - goto tr11 + goto tr9 } default: - goto tr9 + goto tr11 } - default: - goto tr11 - } - goto tr14 -tr11: -//.... NONE:1 -te = p+1 + goto tr14 + tr11: + //.... NONE:1 + te = p + 1 -//.... lightning/mydump/csv_parser.rl:45 -act = 2; - goto st18 - st18: - if p++; p == pe { - goto _test_eof18 - } - st_case_18: -//.... tmp_parser.go:1935 - _widec = int16(data[p]) - switch { - case data[p] < 14: - switch { - case data[p] > 9: - if 11 <= data[p] && data[p] <= 12 { + //.... lightning/mydump/csv_parser.rl:45 + act = 2 + goto st18 + st18: + if p++; p == pe { + goto _test_eof18 + } + st_case_18: + //.... tmp_parser.go:1935 + _widec = int16(data[p]) + switch { + case data[p] < 14: + switch { + case data[p] > 9: + if 11 <= data[p] && data[p] <= 12 { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + default: _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if data[p] == sep { _widec += 512 } } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if data[p] == sep { - _widec += 512 - } - } - case data[p] > 91: - switch { - case data[p] > 92: - if 93 <= data[p] { - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + case data[p] > 91: + switch { + case data[p] > 92: + if 93 <= data[p] { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + case data[p] >= 92: + _widec = 3840 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if parser.escFlavor != backslashEscapeFlavorNone { _widec += 512 } + if data[p] == sep { + _widec += 1024 + } } - case data[p] >= 92: - _widec = 3840 + (int16(data[p]) - 0) - if data[p] == delim { + default: + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if parser.escFlavor != backslashEscapeFlavorNone { + if data[p] == sep { _widec += 512 } - if data[p] == sep { - _widec += 1024 - } - } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 } - if data[p] == sep { - _widec += 512 + switch _widec { + case 10: + goto st2 + case 13: + goto st2 + case 3932: + goto tr9 + case 4188: + goto tr4 + case 4444: + goto st6 + case 4700: + goto st19 + case 4956: + goto st2 + case 5212: + goto tr4 + case 5468: + goto st7 + case 5724: + goto st19 } - } - switch _widec { - case 10: - goto st2 - case 13: - goto st2 - case 3932: - goto tr9 - case 4188: - goto tr4 - case 4444: - goto st6 - case 4700: - goto st19 - case 4956: - goto st2 - case 5212: - goto tr4 - case 5468: - goto st7 - case 5724: - goto st19 - } - switch { - case _widec < 3165: switch { - case _widec < 2909: + case _widec < 3165: switch { - case _widec < 2827: - if 2816 <= _widec && _widec <= 2825 { - goto tr9 - } - case _widec > 2828: - if 2830 <= _widec && _widec <= 2907 { + case _widec < 2909: + switch { + case _widec < 2827: + if 2816 <= _widec && _widec <= 2825 { + goto tr9 + } + case _widec > 2828: + if 2830 <= _widec && _widec <= 2907 { + goto tr9 + } + default: goto tr9 } - default: - goto tr9 - } - case _widec > 3071: - switch { - case _widec < 3083: - if 3072 <= _widec && _widec <= 3081 { - goto tr4 - } - case _widec > 3084: - if 3086 <= _widec && _widec <= 3163 { + case _widec > 3071: + switch { + case _widec < 3083: + if 3072 <= _widec && _widec <= 3081 { + goto tr4 + } + case _widec > 3084: + if 3086 <= _widec && _widec <= 3163 { + goto tr4 + } + default: goto tr4 } default: - goto tr4 + goto tr9 } - default: - goto tr9 - } - case _widec > 3327: - switch { - case _widec < 3421: + case _widec > 3327: switch { - case _widec < 3339: - if 3328 <= _widec && _widec <= 3337 { - goto st2 - } - case _widec > 3340: - if 3342 <= _widec && _widec <= 3419 { + case _widec < 3421: + switch { + case _widec < 3339: + if 3328 <= _widec && _widec <= 3337 { + goto st2 + } + case _widec > 3340: + if 3342 <= _widec && _widec <= 3419 { + goto st2 + } + default: goto st2 } - default: - goto st2 - } - case _widec > 3583: - switch { - case _widec < 3595: - if 3584 <= _widec && _widec <= 3593 { - goto tr4 - } - case _widec > 3596: + case _widec > 3583: switch { - case _widec > 3675: - if 3677 <= _widec && _widec <= 3839 { + case _widec < 3595: + if 3584 <= _widec && _widec <= 3593 { + goto tr4 + } + case _widec > 3596: + switch { + case _widec > 3675: + if 3677 <= _widec && _widec <= 3839 { + goto tr4 + } + case _widec >= 3598: goto tr4 } - case _widec >= 3598: + default: goto tr4 } default: - goto tr4 + goto st2 } default: - goto st2 + goto tr4 } - default: - goto tr4 - } - goto tr24 - st19: - if p++; p == pe { - goto _test_eof19 - } - st_case_19: - _widec = int16(data[p]) - switch { - case data[p] < 14: + goto tr24 + st19: + if p++; p == pe { + goto _test_eof19 + } + st_case_19: + _widec = int16(data[p]) switch { - case data[p] > 9: - if 11 <= data[p] && data[p] <= 12 { + case data[p] < 14: + switch { + case data[p] > 9: + if 11 <= data[p] && data[p] <= 12 { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + default: _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if data[p] == sep { _widec += 512 } } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if data[p] == sep { - _widec += 512 - } - } - case data[p] > 91: - switch { - case data[p] > 92: - if 93 <= data[p] { - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + case data[p] > 91: + switch { + case data[p] > 92: + if 93 <= data[p] { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + case data[p] >= 92: + _widec = 3840 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if parser.escFlavor != backslashEscapeFlavorNone { _widec += 512 } + if data[p] == sep { + _widec += 1024 + } } - case data[p] >= 92: - _widec = 3840 + (int16(data[p]) - 0) - if data[p] == delim { + default: + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if parser.escFlavor != backslashEscapeFlavorNone { + if data[p] == sep { _widec += 512 } - if data[p] == sep { - _widec += 1024 - } - } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 } - if data[p] == sep { - _widec += 512 - } - } - switch _widec { - case 10: - goto tr9 - case 13: - goto tr9 - case 3932: - goto tr9 - case 4188: - goto tr11 - case 4444: - goto tr13 - case 4700: - goto tr13 - case 4956: - goto tr9 - case 5212: - goto tr11 - case 5468: - goto tr13 - case 5724: - goto tr13 - } - switch { - case _widec < 3165: - switch { - case _widec < 2909: - switch { - case _widec < 2827: - if 2816 <= _widec && _widec <= 2825 { - goto tr9 - } - case _widec > 2828: - if 2830 <= _widec && _widec <= 2907 { - goto tr9 - } - default: - goto tr9 - } - case _widec > 3071: - switch { - case _widec < 3083: - if 3072 <= _widec && _widec <= 3081 { - goto tr11 - } - case _widec > 3084: - if 3086 <= _widec && _widec <= 3163 { - goto tr11 - } - default: - goto tr11 - } - default: + switch _widec { + case 10: + goto tr9 + case 13: + goto tr9 + case 3932: goto tr9 + case 4188: + goto tr11 + case 4444: + goto tr13 + case 4700: + goto tr13 + case 4956: + goto tr9 + case 5212: + goto tr11 + case 5468: + goto tr13 + case 5724: + goto tr13 } - case _widec > 3327: switch { - case _widec < 3421: + case _widec < 3165: switch { - case _widec < 3339: - if 3328 <= _widec && _widec <= 3337 { + case _widec < 2909: + switch { + case _widec < 2827: + if 2816 <= _widec && _widec <= 2825 { + goto tr9 + } + case _widec > 2828: + if 2830 <= _widec && _widec <= 2907 { + goto tr9 + } + default: goto tr9 } - case _widec > 3340: - if 3342 <= _widec && _widec <= 3419 { - goto tr9 + case _widec > 3071: + switch { + case _widec < 3083: + if 3072 <= _widec && _widec <= 3081 { + goto tr11 + } + case _widec > 3084: + if 3086 <= _widec && _widec <= 3163 { + goto tr11 + } + default: + goto tr11 } default: goto tr9 } - case _widec > 3583: + case _widec > 3327: switch { - case _widec < 3595: - if 3584 <= _widec && _widec <= 3593 { - goto tr11 + case _widec < 3421: + switch { + case _widec < 3339: + if 3328 <= _widec && _widec <= 3337 { + goto tr9 + } + case _widec > 3340: + if 3342 <= _widec && _widec <= 3419 { + goto tr9 + } + default: + goto tr9 } - case _widec > 3596: + case _widec > 3583: switch { - case _widec > 3675: - if 3677 <= _widec && _widec <= 3839 { + case _widec < 3595: + if 3584 <= _widec && _widec <= 3593 { + goto tr11 + } + case _widec > 3596: + switch { + case _widec > 3675: + if 3677 <= _widec && _widec <= 3839 { + goto tr11 + } + case _widec >= 3598: goto tr11 } - case _widec >= 3598: + default: goto tr11 } default: - goto tr11 + goto tr9 } default: - goto tr9 + goto tr11 } - default: - goto tr11 - } - goto tr24 -tr13: -//.... NONE:1 -te = p+1 + goto tr24 + tr13: + //.... NONE:1 + te = p + 1 -//.... lightning/mydump/csv_parser.rl:45 -act = 2; - goto st20 - st20: - if p++; p == pe { - goto _test_eof20 - } - st_case_20: -//.... tmp_parser.go:2253 - _widec = int16(data[p]) - switch { - case data[p] < 14: - switch { - case data[p] > 9: - if 11 <= data[p] && data[p] <= 12 { + //.... lightning/mydump/csv_parser.rl:45 + act = 2 + goto st20 + st20: + if p++; p == pe { + goto _test_eof20 + } + st_case_20: + //.... tmp_parser.go:2253 + _widec = int16(data[p]) + switch { + case data[p] < 14: + switch { + case data[p] > 9: + if 11 <= data[p] && data[p] <= 12 { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + default: _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if data[p] == sep { _widec += 512 } } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if data[p] == sep { - _widec += 512 - } - } - case data[p] > 91: - switch { - case data[p] > 92: - if 93 <= data[p] { - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + case data[p] > 91: + switch { + case data[p] > 92: + if 93 <= data[p] { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + case data[p] >= 92: + _widec = 3840 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if parser.escFlavor != backslashEscapeFlavorNone { _widec += 512 } + if data[p] == sep { + _widec += 1024 + } } - case data[p] >= 92: - _widec = 3840 + (int16(data[p]) - 0) - if data[p] == delim { + default: + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if parser.escFlavor != backslashEscapeFlavorNone { + if data[p] == sep { _widec += 512 } - if data[p] == sep { - _widec += 1024 - } - } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 } - if data[p] == sep { - _widec += 512 + switch _widec { + case 10: + goto st2 + case 13: + goto st2 + case 3932: + goto tr9 + case 4188: + goto tr4 + case 4444: + goto st7 + case 4700: + goto st19 + case 4956: + goto st2 + case 5212: + goto tr4 + case 5468: + goto st7 + case 5724: + goto st19 } - } - switch _widec { - case 10: - goto st2 - case 13: - goto st2 - case 3932: - goto tr9 - case 4188: - goto tr4 - case 4444: - goto st7 - case 4700: - goto st19 - case 4956: - goto st2 - case 5212: - goto tr4 - case 5468: - goto st7 - case 5724: - goto st19 - } - switch { - case _widec < 3165: switch { - case _widec < 2909: + case _widec < 3165: switch { - case _widec < 2827: - if 2816 <= _widec && _widec <= 2825 { - goto tr9 - } - case _widec > 2828: - if 2830 <= _widec && _widec <= 2907 { + case _widec < 2909: + switch { + case _widec < 2827: + if 2816 <= _widec && _widec <= 2825 { + goto tr9 + } + case _widec > 2828: + if 2830 <= _widec && _widec <= 2907 { + goto tr9 + } + default: goto tr9 } - default: - goto tr9 - } - case _widec > 3071: - switch { - case _widec < 3083: - if 3072 <= _widec && _widec <= 3081 { - goto tr4 - } - case _widec > 3084: - if 3086 <= _widec && _widec <= 3163 { + case _widec > 3071: + switch { + case _widec < 3083: + if 3072 <= _widec && _widec <= 3081 { + goto tr4 + } + case _widec > 3084: + if 3086 <= _widec && _widec <= 3163 { + goto tr4 + } + default: goto tr4 } default: - goto tr4 - } - default: - goto tr9 - } - case _widec > 3327: - switch { - case _widec < 3421: - switch { - case _widec < 3339: - if 3328 <= _widec && _widec <= 3337 { - goto st2 - } - case _widec > 3340: - if 3342 <= _widec && _widec <= 3419 { - goto st2 - } - default: - goto st2 + goto tr9 } - case _widec > 3583: + case _widec > 3327: switch { - case _widec < 3595: - if 3584 <= _widec && _widec <= 3593 { - goto tr4 + case _widec < 3421: + switch { + case _widec < 3339: + if 3328 <= _widec && _widec <= 3337 { + goto st2 + } + case _widec > 3340: + if 3342 <= _widec && _widec <= 3419 { + goto st2 + } + default: + goto st2 } - case _widec > 3596: + case _widec > 3583: switch { - case _widec > 3675: - if 3677 <= _widec && _widec <= 3839 { + case _widec < 3595: + if 3584 <= _widec && _widec <= 3593 { + goto tr4 + } + case _widec > 3596: + switch { + case _widec > 3675: + if 3677 <= _widec && _widec <= 3839 { + goto tr4 + } + case _widec >= 3598: goto tr4 } - case _widec >= 3598: + default: goto tr4 } default: - goto tr4 + goto st2 } default: - goto st2 + goto tr4 } - default: - goto tr4 - } - goto tr24 -tr10: -//.... NONE:1 -te = p+1 + goto tr24 + tr10: + //.... NONE:1 + te = p + 1 -//.... lightning/mydump/csv_parser.rl:45 -act = 2; - goto st21 - st21: - if p++; p == pe { - goto _test_eof21 - } - st_case_21: -//.... tmp_parser.go:2416 - _widec = int16(data[p]) - switch { - case data[p] < 14: - switch { - case data[p] > 9: - if 11 <= data[p] && data[p] <= 12 { + //.... lightning/mydump/csv_parser.rl:45 + act = 2 + goto st21 + st21: + if p++; p == pe { + goto _test_eof21 + } + st_case_21: + //.... tmp_parser.go:2416 + _widec = int16(data[p]) + switch { + case data[p] < 14: + switch { + case data[p] > 9: + if 11 <= data[p] && data[p] <= 12 { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + default: _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if data[p] == sep { _widec += 512 } } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if data[p] == sep { - _widec += 512 - } - } - case data[p] > 91: - switch { - case data[p] > 92: - if 93 <= data[p] { - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + case data[p] > 91: + switch { + case data[p] > 92: + if 93 <= data[p] { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + case data[p] >= 92: + _widec = 3840 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if parser.escFlavor != backslashEscapeFlavorNone { _widec += 512 } + if data[p] == sep { + _widec += 1024 + } } - case data[p] >= 92: - _widec = 3840 + (int16(data[p]) - 0) - if data[p] == delim { + default: + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if parser.escFlavor != backslashEscapeFlavorNone { + if data[p] == sep { _widec += 512 } - if data[p] == sep { - _widec += 1024 - } - } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 } - if data[p] == sep { - _widec += 512 + switch _widec { + case 3932: + goto tr1 + case 4188: + goto st2 + case 4444: + goto st1 + case 4700: + goto st5 + case 5212: + goto st2 + case 5468: + goto st1 + case 5724: + goto st5 } - } - switch _widec { - case 3932: - goto tr1 - case 4188: - goto st2 - case 4444: - goto st1 - case 4700: - goto st5 - case 5212: - goto st2 - case 5468: - goto st1 - case 5724: - goto st5 - } - switch { - case _widec < 3083: switch { - case _widec < 2830: + case _widec < 3083: switch { - case _widec > 2825: - if 2827 <= _widec && _widec <= 2828 { + case _widec < 2830: + switch { + case _widec > 2825: + if 2827 <= _widec && _widec <= 2828 { + goto tr1 + } + case _widec >= 2816: goto tr1 } - case _widec >= 2816: - goto tr1 - } - case _widec > 2907: - switch { - case _widec > 3071: - if 3072 <= _widec && _widec <= 3081 { - goto st2 + case _widec > 2907: + switch { + case _widec > 3071: + if 3072 <= _widec && _widec <= 3081 { + goto st2 + } + case _widec >= 2909: + goto tr1 } - case _widec >= 2909: + default: goto tr1 } - default: - goto tr1 - } - case _widec > 3084: - switch { - case _widec < 3584: - switch { - case _widec > 3163: - if 3165 <= _widec && _widec <= 3327 { - goto st2 - } - case _widec >= 3086: - goto st2 - } - case _widec > 3593: + case _widec > 3084: switch { - case _widec < 3598: - if 3595 <= _widec && _widec <= 3596 { + case _widec < 3584: + switch { + case _widec > 3163: + if 3165 <= _widec && _widec <= 3327 { + goto st2 + } + case _widec >= 3086: goto st2 } - case _widec > 3675: - if 3677 <= _widec && _widec <= 3839 { + case _widec > 3593: + switch { + case _widec < 3598: + if 3595 <= _widec && _widec <= 3596 { + goto st2 + } + case _widec > 3675: + if 3677 <= _widec && _widec <= 3839 { + goto st2 + } + default: goto st2 } default: @@ -2537,152 +2569,152 @@ act = 2; default: goto st2 } - default: - goto st2 - } - goto tr24 -tr12: -//.... NONE:1 -te = p+1 + goto tr24 + tr12: + //.... NONE:1 + te = p + 1 -//.... lightning/mydump/csv_parser.rl:45 -act = 2; - goto st22 - st22: - if p++; p == pe { - goto _test_eof22 - } - st_case_22: -//.... tmp_parser.go:2556 - _widec = int16(data[p]) - switch { - case data[p] < 14: - switch { - case data[p] > 9: - if 11 <= data[p] && data[p] <= 12 { + //.... lightning/mydump/csv_parser.rl:45 + act = 2 + goto st22 + st22: + if p++; p == pe { + goto _test_eof22 + } + st_case_22: + //.... tmp_parser.go:2556 + _widec = int16(data[p]) + switch { + case data[p] < 14: + switch { + case data[p] > 9: + if 11 <= data[p] && data[p] <= 12 { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + default: _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if data[p] == sep { _widec += 512 } } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if data[p] == sep { - _widec += 512 - } - } - case data[p] > 91: - switch { - case data[p] > 92: - if 93 <= data[p] { - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + case data[p] > 91: + switch { + case data[p] > 92: + if 93 <= data[p] { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + case data[p] >= 92: + _widec = 3840 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if parser.escFlavor != backslashEscapeFlavorNone { _widec += 512 } + if data[p] == sep { + _widec += 1024 + } } - case data[p] >= 92: - _widec = 3840 + (int16(data[p]) - 0) - if data[p] == delim { + default: + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if parser.escFlavor != backslashEscapeFlavorNone { + if data[p] == sep { _widec += 512 } - if data[p] == sep { - _widec += 1024 - } - } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if data[p] == sep { - _widec += 512 } - } - switch _widec { - case 10: - goto st2 - case 13: - goto st2 - case 3932: - goto tr9 - case 4188: - goto st2 - case 4444: - goto st5 - case 4700: - goto st5 - case 4956: - goto st2 - case 5212: - goto st2 - case 5468: - goto st5 - case 5724: - goto st5 - } - switch { - case _widec < 3086: - switch { - case _widec < 2830: - switch { - case _widec > 2825: - if 2827 <= _widec && _widec <= 2828 { - goto tr9 - } - case _widec >= 2816: - goto tr9 - } - case _widec > 2907: - switch { - case _widec < 3072: - if 2909 <= _widec && _widec <= 3071 { - goto tr9 - } - case _widec > 3081: - if 3083 <= _widec && _widec <= 3084 { - goto st2 - } - default: - goto st2 - } - default: + switch _widec { + case 10: + goto st2 + case 13: + goto st2 + case 3932: goto tr9 + case 4188: + goto st2 + case 4444: + goto st5 + case 4700: + goto st5 + case 4956: + goto st2 + case 5212: + goto st2 + case 5468: + goto st5 + case 5724: + goto st5 } - case _widec > 3163: switch { - case _widec < 3421: + case _widec < 3086: switch { - case _widec < 3339: - if 3165 <= _widec && _widec <= 3337 { - goto st2 + case _widec < 2830: + switch { + case _widec > 2825: + if 2827 <= _widec && _widec <= 2828 { + goto tr9 + } + case _widec >= 2816: + goto tr9 } - case _widec > 3340: - if 3342 <= _widec && _widec <= 3419 { + case _widec > 2907: + switch { + case _widec < 3072: + if 2909 <= _widec && _widec <= 3071 { + goto tr9 + } + case _widec > 3081: + if 3083 <= _widec && _widec <= 3084 { + goto st2 + } + default: goto st2 } default: - goto st2 + goto tr9 } - case _widec > 3593: + case _widec > 3163: switch { - case _widec < 3598: - if 3595 <= _widec && _widec <= 3596 { + case _widec < 3421: + switch { + case _widec < 3339: + if 3165 <= _widec && _widec <= 3337 { + goto st2 + } + case _widec > 3340: + if 3342 <= _widec && _widec <= 3419 { + goto st2 + } + default: goto st2 } - case _widec > 3675: - if 3677 <= _widec && _widec <= 3839 { + case _widec > 3593: + switch { + case _widec < 3598: + if 3595 <= _widec && _widec <= 3596 { + goto st2 + } + case _widec > 3675: + if 3677 <= _widec && _widec <= 3839 { + goto st2 + } + default: goto st2 } default: @@ -2691,253 +2723,302 @@ act = 2; default: goto st2 } - default: - goto st2 - } - goto tr24 - st23: - if p++; p == pe { - goto _test_eof23 - } - st_case_23: - goto tr1 - st24: - if p++; p == pe { - goto _test_eof24 - } - st_case_24: - _widec = int16(data[p]) - switch { - case data[p] < 14: + goto tr24 + st23: + if p++; p == pe { + goto _test_eof23 + } + st_case_23: + goto tr1 + st24: + if p++; p == pe { + goto _test_eof24 + } + st_case_24: + _widec = int16(data[p]) switch { - case data[p] > 9: - if 11 <= data[p] && data[p] <= 12 { + case data[p] < 14: + switch { + case data[p] > 9: + if 11 <= data[p] && data[p] <= 12 { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + default: _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if data[p] == sep { _widec += 512 } } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if data[p] == sep { - _widec += 512 - } - } - case data[p] > 91: - switch { - case data[p] > 92: - if 93 <= data[p] { - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { + case data[p] > 91: + switch { + case data[p] > 92: + if 93 <= data[p] { + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { + _widec += 256 + } + if data[p] == sep { + _widec += 512 + } + } + case data[p] >= 92: + _widec = 3840 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if data[p] == sep { + if parser.escFlavor != backslashEscapeFlavorNone { _widec += 512 } + if data[p] == sep { + _widec += 1024 + } } - case data[p] >= 92: - _widec = 3840 + (int16(data[p]) - 0) - if data[p] == delim { + default: + _widec = 2816 + (int16(data[p]) - 0) + if data[p] == delim { _widec += 256 } - if parser.escFlavor != backslashEscapeFlavorNone { + if data[p] == sep { _widec += 512 } - if data[p] == sep { - _widec += 1024 - } } - default: - _widec = 2816 + (int16(data[p]) - 0) - if data[p] == delim { - _widec += 256 - } - if data[p] == sep { - _widec += 512 - } - } - switch _widec { - case 10: - goto tr9 - case 13: - goto tr9 - case 3932: - goto tr9 - case 4188: - goto tr10 - case 4444: - goto tr12 - case 4700: - goto tr12 - case 4956: - goto tr9 - case 5212: - goto tr11 - case 5468: - goto tr13 - case 5724: - goto tr13 - } - switch { - case _widec < 3165: - switch { - case _widec < 2909: - switch { - case _widec < 2827: - if 2816 <= _widec && _widec <= 2825 { - goto tr9 - } - case _widec > 2828: - if 2830 <= _widec && _widec <= 2907 { - goto tr9 - } - default: - goto tr9 - } - case _widec > 3071: - switch { - case _widec < 3083: - if 3072 <= _widec && _widec <= 3081 { - goto tr10 - } - case _widec > 3084: - if 3086 <= _widec && _widec <= 3163 { - goto tr10 - } - default: - goto tr10 - } - default: + switch _widec { + case 10: + goto tr9 + case 13: + goto tr9 + case 3932: + goto tr9 + case 4188: + goto tr10 + case 4444: + goto tr12 + case 4700: + goto tr12 + case 4956: goto tr9 + case 5212: + goto tr11 + case 5468: + goto tr13 + case 5724: + goto tr13 } - case _widec > 3327: switch { - case _widec < 3421: + case _widec < 3165: switch { - case _widec < 3339: - if 3328 <= _widec && _widec <= 3337 { + case _widec < 2909: + switch { + case _widec < 2827: + if 2816 <= _widec && _widec <= 2825 { + goto tr9 + } + case _widec > 2828: + if 2830 <= _widec && _widec <= 2907 { + goto tr9 + } + default: goto tr9 } - case _widec > 3340: - if 3342 <= _widec && _widec <= 3419 { - goto tr9 + case _widec > 3071: + switch { + case _widec < 3083: + if 3072 <= _widec && _widec <= 3081 { + goto tr10 + } + case _widec > 3084: + if 3086 <= _widec && _widec <= 3163 { + goto tr10 + } + default: + goto tr10 } default: goto tr9 } - case _widec > 3583: + case _widec > 3327: switch { - case _widec < 3595: - if 3584 <= _widec && _widec <= 3593 { - goto tr11 + case _widec < 3421: + switch { + case _widec < 3339: + if 3328 <= _widec && _widec <= 3337 { + goto tr9 + } + case _widec > 3340: + if 3342 <= _widec && _widec <= 3419 { + goto tr9 + } + default: + goto tr9 } - case _widec > 3596: + case _widec > 3583: switch { - case _widec > 3675: - if 3677 <= _widec && _widec <= 3839 { + case _widec < 3595: + if 3584 <= _widec && _widec <= 3593 { goto tr11 } - case _widec >= 3598: + case _widec > 3596: + switch { + case _widec > 3675: + if 3677 <= _widec && _widec <= 3839 { + goto tr11 + } + case _widec >= 3598: + goto tr11 + } + default: goto tr11 } default: - goto tr11 + goto tr9 } default: - goto tr9 + goto tr10 } - default: - goto tr10 - } - goto tr25 - st_out: - _test_eof8: cs = 8; goto _test_eof - _test_eof9: cs = 9; goto _test_eof - _test_eof10: cs = 10; goto _test_eof - _test_eof1: cs = 1; goto _test_eof - _test_eof2: cs = 2; goto _test_eof - _test_eof11: cs = 11; goto _test_eof - _test_eof12: cs = 12; goto _test_eof - _test_eof3: cs = 3; goto _test_eof - _test_eof13: cs = 13; goto _test_eof - _test_eof4: cs = 4; goto _test_eof - _test_eof14: cs = 14; goto _test_eof - _test_eof15: cs = 15; goto _test_eof - _test_eof5: cs = 5; goto _test_eof - _test_eof16: cs = 16; goto _test_eof - _test_eof6: cs = 6; goto _test_eof - _test_eof17: cs = 17; goto _test_eof - _test_eof7: cs = 7; goto _test_eof - _test_eof18: cs = 18; goto _test_eof - _test_eof19: cs = 19; goto _test_eof - _test_eof20: cs = 20; goto _test_eof - _test_eof21: cs = 21; goto _test_eof - _test_eof22: cs = 22; goto _test_eof - _test_eof23: cs = 23; goto _test_eof - _test_eof24: cs = 24; goto _test_eof - - _test_eof: {} - if p == eof { - switch cs { - case 9: - goto tr23 - case 10: - goto tr24 - case 1: - goto tr0 - case 2: - goto tr0 - case 11: - goto tr24 - case 12: - goto tr24 - case 3: - goto tr0 - case 13: - goto tr24 - case 4: - goto tr0 - case 14: - goto tr24 - case 15: - goto tr25 - case 5: - goto tr0 - case 16: - goto tr24 - case 6: - goto tr14 - case 17: - goto tr24 - case 7: - goto tr14 - case 18: - goto tr24 - case 19: - goto tr24 - case 20: - goto tr24 - case 21: - goto tr24 - case 22: - goto tr24 - case 23: - goto tr25 - case 24: goto tr25 - } - } + st_out: + _test_eof8: + cs = 8 + goto _test_eof + _test_eof9: + cs = 9 + goto _test_eof + _test_eof10: + cs = 10 + goto _test_eof + _test_eof1: + cs = 1 + goto _test_eof + _test_eof2: + cs = 2 + goto _test_eof + _test_eof11: + cs = 11 + goto _test_eof + _test_eof12: + cs = 12 + goto _test_eof + _test_eof3: + cs = 3 + goto _test_eof + _test_eof13: + cs = 13 + goto _test_eof + _test_eof4: + cs = 4 + goto _test_eof + _test_eof14: + cs = 14 + goto _test_eof + _test_eof15: + cs = 15 + goto _test_eof + _test_eof5: + cs = 5 + goto _test_eof + _test_eof16: + cs = 16 + goto _test_eof + _test_eof6: + cs = 6 + goto _test_eof + _test_eof17: + cs = 17 + goto _test_eof + _test_eof7: + cs = 7 + goto _test_eof + _test_eof18: + cs = 18 + goto _test_eof + _test_eof19: + cs = 19 + goto _test_eof + _test_eof20: + cs = 20 + goto _test_eof + _test_eof21: + cs = 21 + goto _test_eof + _test_eof22: + cs = 22 + goto _test_eof + _test_eof23: + cs = 23 + goto _test_eof + _test_eof24: + cs = 24 + goto _test_eof - _out: {} - } + _test_eof: + { + } + if p == eof { + switch cs { + case 9: + goto tr23 + case 10: + goto tr24 + case 1: + goto tr0 + case 2: + goto tr0 + case 11: + goto tr24 + case 12: + goto tr24 + case 3: + goto tr0 + case 13: + goto tr24 + case 4: + goto tr0 + case 14: + goto tr24 + case 15: + goto tr25 + case 5: + goto tr0 + case 16: + goto tr24 + case 6: + goto tr14 + case 17: + goto tr24 + case 7: + goto tr14 + case 18: + goto tr24 + case 19: + goto tr24 + case 20: + goto tr24 + case 21: + goto tr24 + case 22: + goto tr24 + case 23: + goto tr25 + case 24: + goto tr25 + } + } + + _out: + { + } + } -//.... lightning/mydump/csv_parser.rl:81 + //.... lightning/mydump/csv_parser.rl:81 if cs == 0 { parser.logSyntaxError() diff --git a/lightning/mydump/parser_generated.go b/lightning/mydump/parser_generated.go index 0d20eecfc..6b446cc66 100644 --- a/lightning/mydump/parser_generated.go +++ b/lightning/mydump/parser_generated.go @@ -29,11 +29,8 @@ import ( "github.com/pingcap/errors" ) - //.... lightning/mydump/parser.rl:137 - - //.... tmp_parser.go:37 const chunk_parser_start int = 21 const chunk_parser_first_final int = 21 @@ -41,21 +38,20 @@ const chunk_parser_error int = 0 const chunk_parser_en_main int = 21 - //.... lightning/mydump/parser.rl:140 func (parser *ChunkParser) lex() (token, []byte, error) { var cs, ts, te, act, p int - -//.... tmp_parser.go:50 + + //.... tmp_parser.go:50 { - cs = chunk_parser_start - ts = 0 - te = 0 - act = 0 + cs = chunk_parser_start + ts = 0 + te = 0 + act = 0 } -//.... lightning/mydump/parser.rl:144 + //.... lightning/mydump/parser.rl:144 for { data := parser.buf @@ -66,2203 +62,2422 @@ func (parser *ChunkParser) lex() (token, []byte, error) { eof = pe } - -//.... tmp_parser.go:70 - { - var _widec int16 - if p == pe { - goto _test_eof - } - switch cs { - case 21: - goto st_case_21 - case 22: - goto st_case_22 - case 1: - goto st_case_1 - case 2: - goto st_case_2 - case 23: - goto st_case_23 - case 3: - goto st_case_3 - case 0: - goto st_case_0 - case 4: - goto st_case_4 - case 5: - goto st_case_5 - case 24: - goto st_case_24 - case 6: - goto st_case_6 - case 25: - goto st_case_25 - case 26: - goto st_case_26 - case 27: - goto st_case_27 - case 28: - goto st_case_28 - case 7: - goto st_case_7 - case 8: - goto st_case_8 - case 9: - goto st_case_9 - case 29: - goto st_case_29 - case 30: - goto st_case_30 - case 31: - goto st_case_31 - case 32: - goto st_case_32 - case 10: - goto st_case_10 - case 33: - goto st_case_33 - case 34: - goto st_case_34 - case 35: - goto st_case_35 - case 36: - goto st_case_36 - case 37: - goto st_case_37 - case 38: - goto st_case_38 - case 39: - goto st_case_39 - case 40: - goto st_case_40 - case 41: - goto st_case_41 - case 42: - goto st_case_42 - case 43: - goto st_case_43 - case 44: - goto st_case_44 - case 45: - goto st_case_45 - case 46: - goto st_case_46 - case 47: - goto st_case_47 - case 48: - goto st_case_48 - case 49: - goto st_case_49 - case 50: - goto st_case_50 - case 51: - goto st_case_51 - case 52: - goto st_case_52 - case 53: - goto st_case_53 - case 54: - goto st_case_54 - case 11: - goto st_case_11 - case 12: - goto st_case_12 - case 13: - goto st_case_13 - case 14: - goto st_case_14 - case 15: - goto st_case_15 - case 16: - goto st_case_16 - case 17: - goto st_case_17 - case 18: - goto st_case_18 - case 55: - goto st_case_55 - case 56: - goto st_case_56 - case 57: - goto st_case_57 - case 58: - goto st_case_58 - case 59: - goto st_case_59 - case 60: - goto st_case_60 - case 19: - goto st_case_19 - case 20: - goto st_case_20 - case 61: - goto st_case_61 - } - goto st_out -tr4: -//.... NONE:1 - switch act { - case 0: - {{goto st0 }} - case 4: - {p = (te) - 1 + //.... tmp_parser.go:70 + { + var _widec int16 + if p == pe { + goto _test_eof + } + switch cs { + case 21: + goto st_case_21 + case 22: + goto st_case_22 + case 1: + goto st_case_1 + case 2: + goto st_case_2 + case 23: + goto st_case_23 + case 3: + goto st_case_3 + case 0: + goto st_case_0 + case 4: + goto st_case_4 + case 5: + goto st_case_5 + case 24: + goto st_case_24 + case 6: + goto st_case_6 + case 25: + goto st_case_25 + case 26: + goto st_case_26 + case 27: + goto st_case_27 + case 28: + goto st_case_28 + case 7: + goto st_case_7 + case 8: + goto st_case_8 + case 9: + goto st_case_9 + case 29: + goto st_case_29 + case 30: + goto st_case_30 + case 31: + goto st_case_31 + case 32: + goto st_case_32 + case 10: + goto st_case_10 + case 33: + goto st_case_33 + case 34: + goto st_case_34 + case 35: + goto st_case_35 + case 36: + goto st_case_36 + case 37: + goto st_case_37 + case 38: + goto st_case_38 + case 39: + goto st_case_39 + case 40: + goto st_case_40 + case 41: + goto st_case_41 + case 42: + goto st_case_42 + case 43: + goto st_case_43 + case 44: + goto st_case_44 + case 45: + goto st_case_45 + case 46: + goto st_case_46 + case 47: + goto st_case_47 + case 48: + goto st_case_48 + case 49: + goto st_case_49 + case 50: + goto st_case_50 + case 51: + goto st_case_51 + case 52: + goto st_case_52 + case 53: + goto st_case_53 + case 54: + goto st_case_54 + case 11: + goto st_case_11 + case 12: + goto st_case_12 + case 13: + goto st_case_13 + case 14: + goto st_case_14 + case 15: + goto st_case_15 + case 16: + goto st_case_16 + case 17: + goto st_case_17 + case 18: + goto st_case_18 + case 55: + goto st_case_55 + case 56: + goto st_case_56 + case 57: + goto st_case_57 + case 58: + goto st_case_58 + case 59: + goto st_case_59 + case 60: + goto st_case_60 + case 19: + goto st_case_19 + case 20: + goto st_case_20 + case 61: + goto st_case_61 + } + goto st_out + tr4: + //.... NONE:1 + switch act { + case 0: + { + { + goto st0 + } + } + case 4: + { + p = (te) - 1 - consumedToken = tokValues - {p++; cs = 21; goto _out } - } - case 5: - {p = (te) - 1 + consumedToken = tokValues + { + p++ + cs = 21 + goto _out + } + } + case 5: + { + p = (te) - 1 - consumedToken = tokNull - {p++; cs = 21; goto _out } - } - case 6: - {p = (te) - 1 + consumedToken = tokNull + { + p++ + cs = 21 + goto _out + } + } + case 6: + { + p = (te) - 1 - consumedToken = tokTrue - {p++; cs = 21; goto _out } - } - case 7: - {p = (te) - 1 + consumedToken = tokTrue + { + p++ + cs = 21 + goto _out + } + } + case 7: + { + p = (te) - 1 - consumedToken = tokFalse - {p++; cs = 21; goto _out } - } - case 9: - {p = (te) - 1 + consumedToken = tokFalse + { + p++ + cs = 21 + goto _out + } + } + case 9: + { + p = (te) - 1 - consumedToken = tokHexString - {p++; cs = 21; goto _out } - } - case 10: - {p = (te) - 1 + consumedToken = tokHexString + { + p++ + cs = 21 + goto _out + } + } + case 10: + { + p = (te) - 1 - consumedToken = tokBinString - {p++; cs = 21; goto _out } - } - case 11: - {p = (te) - 1 + consumedToken = tokBinString + { + p++ + cs = 21 + goto _out + } + } + case 11: + { + p = (te) - 1 - consumedToken = tokSingleQuoted - {p++; cs = 21; goto _out } - } - case 12: - {p = (te) - 1 + consumedToken = tokSingleQuoted + { + p++ + cs = 21 + goto _out + } + } + case 12: + { + p = (te) - 1 - consumedToken = tokDoubleQuoted - {p++; cs = 21; goto _out } - } - case 13: - {p = (te) - 1 + consumedToken = tokDoubleQuoted + { + p++ + cs = 21 + goto _out + } + } + case 13: + { + p = (te) - 1 - consumedToken = tokBackQuoted - {p++; cs = 21; goto _out } - } - case 14: - {p = (te) - 1 + consumedToken = tokBackQuoted + { + p++ + cs = 21 + goto _out + } + } + case 14: + { + p = (te) - 1 - consumedToken = tokUnquoted - {p++; cs = 21; goto _out } - } - } - - goto st21 -tr10: -//.... lightning/mydump/parser.rl:68 -te = p+1 + consumedToken = tokUnquoted + { + p++ + cs = 21 + goto _out + } + } + } - goto st21 -tr11: -//.... lightning/mydump/parser.rl:130 -p = (te) - 1 -{ - consumedToken = tokUnquoted - {p++; cs = 21; goto _out } - } - goto st21 -tr12: -//.... lightning/mydump/parser.rl:110 -te = p+1 -{ - consumedToken = tokBinString - {p++; cs = 21; goto _out } - } - goto st21 -tr21: -//.... lightning/mydump/parser.rl:105 -te = p+1 -{ - consumedToken = tokHexString - {p++; cs = 21; goto _out } - } - goto st21 -tr28: -//.... lightning/mydump/parser.rl:70 -te = p+1 -{ - consumedToken = tokRowBegin - {p++; cs = 21; goto _out } - } - goto st21 -tr29: -//.... lightning/mydump/parser.rl:75 -te = p+1 -{ - consumedToken = tokRowEnd - {p++; cs = 21; goto _out } - } - goto st21 -tr42: -//.... lightning/mydump/parser.rl:120 -te = p -p-- -{ - consumedToken = tokDoubleQuoted - {p++; cs = 21; goto _out } - } - goto st21 -tr43: -//.... lightning/mydump/parser.rl:115 -te = p -p-- -{ - consumedToken = tokSingleQuoted - {p++; cs = 21; goto _out } - } - goto st21 -tr44: -//.... lightning/mydump/parser.rl:130 -te = p -p-- -{ - consumedToken = tokUnquoted - {p++; cs = 21; goto _out } - } - goto st21 -tr46: -//.... lightning/mydump/parser.rl:68 -te = p -p-- + goto st21 + tr10: + //.... lightning/mydump/parser.rl:68 + te = p + 1 - goto st21 -tr48: -//.... lightning/mydump/parser.rl:100 -te = p -p-- -{ - consumedToken = tokInteger - {p++; cs = 21; goto _out } - } - goto st21 -tr79: -//.... lightning/mydump/parser.rl:125 -te = p -p-- -{ - consumedToken = tokBackQuoted - {p++; cs = 21; goto _out } - } - goto st21 - st21: -//.... NONE:1 -ts = 0 + goto st21 + tr11: + //.... lightning/mydump/parser.rl:130 + p = (te) - 1 + { + consumedToken = tokUnquoted + { + p++ + cs = 21 + goto _out + } + } + goto st21 + tr12: + //.... lightning/mydump/parser.rl:110 + te = p + 1 + { + consumedToken = tokBinString + { + p++ + cs = 21 + goto _out + } + } + goto st21 + tr21: + //.... lightning/mydump/parser.rl:105 + te = p + 1 + { + consumedToken = tokHexString + { + p++ + cs = 21 + goto _out + } + } + goto st21 + tr28: + //.... lightning/mydump/parser.rl:70 + te = p + 1 + { + consumedToken = tokRowBegin + { + p++ + cs = 21 + goto _out + } + } + goto st21 + tr29: + //.... lightning/mydump/parser.rl:75 + te = p + 1 + { + consumedToken = tokRowEnd + { + p++ + cs = 21 + goto _out + } + } + goto st21 + tr42: + //.... lightning/mydump/parser.rl:120 + te = p + p-- + { + consumedToken = tokDoubleQuoted + { + p++ + cs = 21 + goto _out + } + } + goto st21 + tr43: + //.... lightning/mydump/parser.rl:115 + te = p + p-- + { + consumedToken = tokSingleQuoted + { + p++ + cs = 21 + goto _out + } + } + goto st21 + tr44: + //.... lightning/mydump/parser.rl:130 + te = p + p-- + { + consumedToken = tokUnquoted + { + p++ + cs = 21 + goto _out + } + } + goto st21 + tr46: + //.... lightning/mydump/parser.rl:68 + te = p + p-- + + goto st21 + tr48: + //.... lightning/mydump/parser.rl:100 + te = p + p-- + { + consumedToken = tokInteger + { + p++ + cs = 21 + goto _out + } + } + goto st21 + tr79: + //.... lightning/mydump/parser.rl:125 + te = p + p-- + { + consumedToken = tokBackQuoted + { + p++ + cs = 21 + goto _out + } + } + goto st21 + st21: + //.... NONE:1 + ts = 0 -//.... NONE:1 -act = 0 + //.... NONE:1 + act = 0 - if p++; p == pe { - goto _test_eof21 - } - st_case_21: -//.... NONE:1 -ts = p + if p++; p == pe { + goto _test_eof21 + } + st_case_21: + //.... NONE:1 + ts = p -//.... tmp_parser.go:381 - switch data[p] { - case 32: - goto tr10 - case 34: - goto st1 - case 39: - goto st4 - case 40: - goto tr28 - case 41: - goto tr29 - case 42: - goto st0 - case 44: - goto tr10 - case 45: - goto st25 - case 47: - goto st7 - case 48: - goto st29 - case 59: - goto tr10 - case 66: - goto tr34 - case 67: - goto st33 - case 70: - goto st40 - case 78: - goto st44 - case 84: - goto st47 - case 85: - goto st50 - case 86: - goto st55 - case 88: - goto tr41 - case 96: - goto st20 - case 98: - goto tr34 - case 99: - goto st33 - case 102: - goto st40 - case 110: - goto st44 - case 116: - goto st47 - case 117: - goto st50 - case 118: - goto st55 - case 120: - goto tr41 - } - switch { - case data[p] > 13: - if 49 <= data[p] && data[p] <= 57 { - goto st28 + //.... tmp_parser.go:381 + switch data[p] { + case 32: + goto tr10 + case 34: + goto st1 + case 39: + goto st4 + case 40: + goto tr28 + case 41: + goto tr29 + case 42: + goto st0 + case 44: + goto tr10 + case 45: + goto st25 + case 47: + goto st7 + case 48: + goto st29 + case 59: + goto tr10 + case 66: + goto tr34 + case 67: + goto st33 + case 70: + goto st40 + case 78: + goto st44 + case 84: + goto st47 + case 85: + goto st50 + case 86: + goto st55 + case 88: + goto tr41 + case 96: + goto st20 + case 98: + goto tr34 + case 99: + goto st33 + case 102: + goto st40 + case 110: + goto st44 + case 116: + goto st47 + case 117: + goto st50 + case 118: + goto st55 + case 120: + goto tr41 } - case data[p] >= 9: - goto tr10 - } - goto tr25 -tr25: -//.... NONE:1 -te = p+1 + switch { + case data[p] > 13: + if 49 <= data[p] && data[p] <= 57 { + goto st28 + } + case data[p] >= 9: + goto tr10 + } + goto tr25 + tr25: + //.... NONE:1 + te = p + 1 -//.... lightning/mydump/parser.rl:130 -act = 14; - goto st22 -tr62: -//.... NONE:1 -te = p+1 + //.... lightning/mydump/parser.rl:130 + act = 14 + goto st22 + tr62: + //.... NONE:1 + te = p + 1 -//.... lightning/mydump/parser.rl:95 -act = 7; - goto st22 -tr65: -//.... NONE:1 -te = p+1 + //.... lightning/mydump/parser.rl:95 + act = 7 + goto st22 + tr65: + //.... NONE:1 + te = p + 1 -//.... lightning/mydump/parser.rl:85 -act = 5; - goto st22 -tr68: -//.... NONE:1 -te = p+1 + //.... lightning/mydump/parser.rl:85 + act = 5 + goto st22 + tr68: + //.... NONE:1 + te = p + 1 -//.... lightning/mydump/parser.rl:90 -act = 6; - goto st22 -tr78: -//.... NONE:1 -te = p+1 + //.... lightning/mydump/parser.rl:90 + act = 6 + goto st22 + tr78: + //.... NONE:1 + te = p + 1 -//.... lightning/mydump/parser.rl:80 -act = 4; - goto st22 - st22: - if p++; p == pe { - goto _test_eof22 - } - st_case_22: -//.... tmp_parser.go:489 - switch data[p] { - case 32: - goto tr4 - case 34: - goto tr4 - case 44: - goto tr4 - case 47: - goto tr4 - case 59: - goto tr4 - case 96: - goto tr4 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { + //.... lightning/mydump/parser.rl:80 + act = 4 + goto st22 + st22: + if p++; p == pe { + goto _test_eof22 + } + st_case_22: + //.... tmp_parser.go:489 + switch data[p] { + case 32: + goto tr4 + case 34: + goto tr4 + case 44: + goto tr4 + case 47: + goto tr4 + case 59: + goto tr4 + case 96: goto tr4 } - case data[p] >= 9: - goto tr4 - } - goto tr25 - st1: - if p++; p == pe { - goto _test_eof1 - } - st_case_1: - _widec = int16(data[p]) - if 92 <= data[p] && data[p] <= 92 { - _widec = 256 + (int16(data[p]) - 0) - if parser.escFlavor != backslashEscapeFlavorNone { - _widec += 256 + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr4 + } + case data[p] >= 9: + goto tr4 } - } - switch _widec { - case 34: - goto tr1 - case 348: - goto st2 - case 604: - goto st3 - } - switch { - case _widec > 91: - if 93 <= _widec { + goto tr25 + st1: + if p++; p == pe { + goto _test_eof1 + } + st_case_1: + _widec = int16(data[p]) + if 92 <= data[p] && data[p] <= 92 { + _widec = 256 + (int16(data[p]) - 0) + if parser.escFlavor != backslashEscapeFlavorNone { + _widec += 256 + } + } + switch _widec { + case 34: + goto tr1 + case 348: goto st2 + case 604: + goto st3 } - default: - goto st2 - } - goto st0 - st2: - if p++; p == pe { - goto _test_eof2 - } - st_case_2: - _widec = int16(data[p]) - if 92 <= data[p] && data[p] <= 92 { - _widec = 256 + (int16(data[p]) - 0) - if parser.escFlavor != backslashEscapeFlavorNone { - _widec += 256 + switch { + case _widec > 91: + if 93 <= _widec { + goto st2 + } + default: + goto st2 } - } - switch _widec { - case 34: - goto tr1 - case 348: - goto st2 - case 604: - goto st3 - } - switch { - case _widec > 91: - if 93 <= _widec { + goto st0 + st2: + if p++; p == pe { + goto _test_eof2 + } + st_case_2: + _widec = int16(data[p]) + if 92 <= data[p] && data[p] <= 92 { + _widec = 256 + (int16(data[p]) - 0) + if parser.escFlavor != backslashEscapeFlavorNone { + _widec += 256 + } + } + switch _widec { + case 34: + goto tr1 + case 348: goto st2 + case 604: + goto st3 } - default: - goto st2 - } - goto tr4 -tr1: -//.... NONE:1 -te = p+1 + switch { + case _widec > 91: + if 93 <= _widec { + goto st2 + } + default: + goto st2 + } + goto tr4 + tr1: + //.... NONE:1 + te = p + 1 -//.... lightning/mydump/parser.rl:120 -act = 12; - goto st23 - st23: - if p++; p == pe { - goto _test_eof23 - } - st_case_23: -//.... tmp_parser.go:583 - if data[p] == 34 { - goto st2 - } - goto tr42 - st3: - if p++; p == pe { - goto _test_eof3 - } - st_case_3: - _widec = int16(data[p]) - if 92 <= data[p] && data[p] <= 92 { - _widec = 256 + (int16(data[p]) - 0) - if parser.escFlavor != backslashEscapeFlavorNone { - _widec += 256 + //.... lightning/mydump/parser.rl:120 + act = 12 + goto st23 + st23: + if p++; p == pe { + goto _test_eof23 } - } - switch _widec { - case 348: - goto st2 - case 604: - goto st2 - } - switch { - case _widec > 91: - if 93 <= _widec { + st_case_23: + //.... tmp_parser.go:583 + if data[p] == 34 { goto st2 } - default: - goto st2 - } - goto tr4 -st_case_0: - st0: - cs = 0 - goto _out - st4: - if p++; p == pe { - goto _test_eof4 - } - st_case_4: - _widec = int16(data[p]) - if 92 <= data[p] && data[p] <= 92 { - _widec = 256 + (int16(data[p]) - 0) - if parser.escFlavor != backslashEscapeFlavorNone { - _widec += 256 + goto tr42 + st3: + if p++; p == pe { + goto _test_eof3 } - } - switch _widec { - case 39: - goto tr6 - case 348: - goto st5 - case 604: - goto st6 - } - switch { - case _widec > 91: - if 93 <= _widec { + st_case_3: + _widec = int16(data[p]) + if 92 <= data[p] && data[p] <= 92 { + _widec = 256 + (int16(data[p]) - 0) + if parser.escFlavor != backslashEscapeFlavorNone { + _widec += 256 + } + } + switch _widec { + case 348: + goto st2 + case 604: + goto st2 + } + switch { + case _widec > 91: + if 93 <= _widec { + goto st2 + } + default: + goto st2 + } + goto tr4 + st_case_0: + st0: + cs = 0 + goto _out + st4: + if p++; p == pe { + goto _test_eof4 + } + st_case_4: + _widec = int16(data[p]) + if 92 <= data[p] && data[p] <= 92 { + _widec = 256 + (int16(data[p]) - 0) + if parser.escFlavor != backslashEscapeFlavorNone { + _widec += 256 + } + } + switch _widec { + case 39: + goto tr6 + case 348: goto st5 + case 604: + goto st6 } - default: - goto st5 - } - goto st0 - st5: - if p++; p == pe { - goto _test_eof5 - } - st_case_5: - _widec = int16(data[p]) - if 92 <= data[p] && data[p] <= 92 { - _widec = 256 + (int16(data[p]) - 0) - if parser.escFlavor != backslashEscapeFlavorNone { - _widec += 256 + switch { + case _widec > 91: + if 93 <= _widec { + goto st5 + } + default: + goto st5 } - } - switch _widec { - case 39: - goto tr6 - case 348: - goto st5 - case 604: - goto st6 - } - switch { - case _widec > 91: - if 93 <= _widec { + goto st0 + st5: + if p++; p == pe { + goto _test_eof5 + } + st_case_5: + _widec = int16(data[p]) + if 92 <= data[p] && data[p] <= 92 { + _widec = 256 + (int16(data[p]) - 0) + if parser.escFlavor != backslashEscapeFlavorNone { + _widec += 256 + } + } + switch _widec { + case 39: + goto tr6 + case 348: goto st5 + case 604: + goto st6 } - default: - goto st5 - } - goto tr4 -tr6: -//.... NONE:1 -te = p+1 + switch { + case _widec > 91: + if 93 <= _widec { + goto st5 + } + default: + goto st5 + } + goto tr4 + tr6: + //.... NONE:1 + te = p + 1 -//.... lightning/mydump/parser.rl:115 -act = 11; - goto st24 - st24: - if p++; p == pe { - goto _test_eof24 - } - st_case_24: -//.... tmp_parser.go:689 - if data[p] == 39 { - goto st5 - } - goto tr43 - st6: - if p++; p == pe { - goto _test_eof6 - } - st_case_6: - _widec = int16(data[p]) - if 92 <= data[p] && data[p] <= 92 { - _widec = 256 + (int16(data[p]) - 0) - if parser.escFlavor != backslashEscapeFlavorNone { - _widec += 256 + //.... lightning/mydump/parser.rl:115 + act = 11 + goto st24 + st24: + if p++; p == pe { + goto _test_eof24 } - } - switch _widec { - case 348: - goto st5 - case 604: - goto st5 - } - switch { - case _widec > 91: - if 93 <= _widec { + st_case_24: + //.... tmp_parser.go:689 + if data[p] == 39 { goto st5 } - default: - goto st5 - } - goto tr4 - st25: - if p++; p == pe { - goto _test_eof25 - } - st_case_25: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 44: - goto tr44 - case 45: - goto st26 - case 47: - goto tr44 - case 59: - goto tr44 - case 96: - goto tr44 - } - switch { - case data[p] < 39: - if 9 <= data[p] && data[p] <= 13 { - goto tr44 + goto tr43 + st6: + if p++; p == pe { + goto _test_eof6 } - case data[p] > 42: - if 48 <= data[p] && data[p] <= 57 { - goto st28 + st_case_6: + _widec = int16(data[p]) + if 92 <= data[p] && data[p] <= 92 { + _widec = 256 + (int16(data[p]) - 0) + if parser.escFlavor != backslashEscapeFlavorNone { + _widec += 256 + } } - default: - goto tr44 - } - goto tr25 - st26: - if p++; p == pe { - goto _test_eof26 - } - st_case_26: - switch data[p] { - case 10: - goto tr46 - case 13: - goto tr46 - case 32: - goto st27 - case 34: - goto st27 - case 44: - goto st27 - case 47: - goto st27 - case 59: - goto st27 - case 96: - goto st27 - } - switch { - case data[p] > 12: - if 39 <= data[p] && data[p] <= 42 { - goto st27 + switch _widec { + case 348: + goto st5 + case 604: + goto st5 } - case data[p] >= 9: - goto st27 - } - goto st26 - st27: - if p++; p == pe { - goto _test_eof27 - } - st_case_27: - switch data[p] { - case 10: - goto tr46 - case 13: - goto tr46 - } - goto st27 - st28: - if p++; p == pe { - goto _test_eof28 - } - st_case_28: - switch data[p] { - case 32: - goto tr48 - case 34: - goto tr48 - case 44: - goto tr48 - case 47: - goto tr48 - case 59: - goto tr48 - case 96: - goto tr48 - } - switch { - case data[p] < 39: - if 9 <= data[p] && data[p] <= 13 { - goto tr48 + switch { + case _widec > 91: + if 93 <= _widec { + goto st5 + } + default: + goto st5 } - case data[p] > 42: - if 48 <= data[p] && data[p] <= 57 { - goto st28 + goto tr4 + st25: + if p++; p == pe { + goto _test_eof25 } - default: - goto tr48 - } - goto tr25 - st7: - if p++; p == pe { - goto _test_eof7 - } - st_case_7: - if data[p] == 42 { - goto st8 - } - goto st0 - st8: - if p++; p == pe { - goto _test_eof8 - } - st_case_8: - if data[p] == 42 { - goto st9 - } - goto st8 - st9: - if p++; p == pe { - goto _test_eof9 - } - st_case_9: - switch data[p] { - case 42: - goto st9 - case 47: - goto tr10 - } - goto st8 - st29: - if p++; p == pe { - goto _test_eof29 - } - st_case_29: - switch data[p] { - case 32: - goto tr48 - case 34: - goto tr48 - case 44: - goto tr48 - case 47: - goto tr48 - case 59: - goto tr48 - case 96: - goto tr48 - case 98: - goto tr49 - case 120: - goto tr50 - } - switch { - case data[p] < 39: - if 9 <= data[p] && data[p] <= 13 { - goto tr48 + st_case_25: + switch data[p] { + case 32: + goto tr44 + case 34: + goto tr44 + case 44: + goto tr44 + case 45: + goto st26 + case 47: + goto tr44 + case 59: + goto tr44 + case 96: + goto tr44 } - case data[p] > 42: - if 48 <= data[p] && data[p] <= 57 { - goto st28 + switch { + case data[p] < 39: + if 9 <= data[p] && data[p] <= 13 { + goto tr44 + } + case data[p] > 42: + if 48 <= data[p] && data[p] <= 57 { + goto st28 + } + default: + goto tr44 } - default: - goto tr48 - } - goto tr25 -tr49: -//.... NONE:1 -te = p+1 - -//.... lightning/mydump/parser.rl:130 -act = 14; - goto st30 -tr51: -//.... NONE:1 -te = p+1 - -//.... lightning/mydump/parser.rl:110 -act = 10; - goto st30 - st30: - if p++; p == pe { - goto _test_eof30 - } - st_case_30: -//.... tmp_parser.go:916 - switch data[p] { - case 32: - goto tr4 - case 34: - goto tr4 - case 44: - goto tr4 - case 47: - goto tr4 - case 59: - goto tr4 - case 96: - goto tr4 - } - switch { - case data[p] < 39: - if 9 <= data[p] && data[p] <= 13 { - goto tr4 + goto tr25 + st26: + if p++; p == pe { + goto _test_eof26 } - case data[p] > 42: - if 48 <= data[p] && data[p] <= 49 { - goto tr51 + st_case_26: + switch data[p] { + case 10: + goto tr46 + case 13: + goto tr46 + case 32: + goto st27 + case 34: + goto st27 + case 44: + goto st27 + case 47: + goto st27 + case 59: + goto st27 + case 96: + goto st27 } - default: - goto tr4 - } - goto tr25 -tr50: -//.... NONE:1 -te = p+1 - -//.... lightning/mydump/parser.rl:130 -act = 14; - goto st31 -tr52: -//.... NONE:1 -te = p+1 - -//.... lightning/mydump/parser.rl:105 -act = 9; - goto st31 - st31: - if p++; p == pe { - goto _test_eof31 - } - st_case_31: -//.... tmp_parser.go:963 - switch data[p] { - case 32: - goto tr4 - case 34: - goto tr4 - case 44: - goto tr4 - case 47: - goto tr4 - case 59: - goto tr4 - case 96: - goto tr4 - } - switch { - case data[p] < 48: switch { - case data[p] > 13: + case data[p] > 12: if 39 <= data[p] && data[p] <= 42 { - goto tr4 + goto st27 } case data[p] >= 9: - goto tr4 + goto st27 } - case data[p] > 57: - switch { - case data[p] > 70: - if 97 <= data[p] && data[p] <= 102 { + goto st26 + st27: + if p++; p == pe { + goto _test_eof27 + } + st_case_27: + switch data[p] { + case 10: + goto tr46 + case 13: + goto tr46 + } + goto st27 + st28: + if p++; p == pe { + goto _test_eof28 + } + st_case_28: + switch data[p] { + case 32: + goto tr48 + case 34: + goto tr48 + case 44: + goto tr48 + case 47: + goto tr48 + case 59: + goto tr48 + case 96: + goto tr48 + } + switch { + case data[p] < 39: + if 9 <= data[p] && data[p] <= 13 { + goto tr48 + } + case data[p] > 42: + if 48 <= data[p] && data[p] <= 57 { + goto st28 + } + default: + goto tr48 + } + goto tr25 + st7: + if p++; p == pe { + goto _test_eof7 + } + st_case_7: + if data[p] == 42 { + goto st8 + } + goto st0 + st8: + if p++; p == pe { + goto _test_eof8 + } + st_case_8: + if data[p] == 42 { + goto st9 + } + goto st8 + st9: + if p++; p == pe { + goto _test_eof9 + } + st_case_9: + switch data[p] { + case 42: + goto st9 + case 47: + goto tr10 + } + goto st8 + st29: + if p++; p == pe { + goto _test_eof29 + } + st_case_29: + switch data[p] { + case 32: + goto tr48 + case 34: + goto tr48 + case 44: + goto tr48 + case 47: + goto tr48 + case 59: + goto tr48 + case 96: + goto tr48 + case 98: + goto tr49 + case 120: + goto tr50 + } + switch { + case data[p] < 39: + if 9 <= data[p] && data[p] <= 13 { + goto tr48 + } + case data[p] > 42: + if 48 <= data[p] && data[p] <= 57 { + goto st28 + } + default: + goto tr48 + } + goto tr25 + tr49: + //.... NONE:1 + te = p + 1 + + //.... lightning/mydump/parser.rl:130 + act = 14 + goto st30 + tr51: + //.... NONE:1 + te = p + 1 + + //.... lightning/mydump/parser.rl:110 + act = 10 + goto st30 + st30: + if p++; p == pe { + goto _test_eof30 + } + st_case_30: + //.... tmp_parser.go:916 + switch data[p] { + case 32: + goto tr4 + case 34: + goto tr4 + case 44: + goto tr4 + case 47: + goto tr4 + case 59: + goto tr4 + case 96: + goto tr4 + } + switch { + case data[p] < 39: + if 9 <= data[p] && data[p] <= 13 { + goto tr4 + } + case data[p] > 42: + if 48 <= data[p] && data[p] <= 49 { + goto tr51 + } + default: + goto tr4 + } + goto tr25 + tr50: + //.... NONE:1 + te = p + 1 + + //.... lightning/mydump/parser.rl:130 + act = 14 + goto st31 + tr52: + //.... NONE:1 + te = p + 1 + + //.... lightning/mydump/parser.rl:105 + act = 9 + goto st31 + st31: + if p++; p == pe { + goto _test_eof31 + } + st_case_31: + //.... tmp_parser.go:963 + switch data[p] { + case 32: + goto tr4 + case 34: + goto tr4 + case 44: + goto tr4 + case 47: + goto tr4 + case 59: + goto tr4 + case 96: + goto tr4 + } + switch { + case data[p] < 48: + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr4 + } + case data[p] >= 9: + goto tr4 + } + case data[p] > 57: + switch { + case data[p] > 70: + if 97 <= data[p] && data[p] <= 102 { + goto tr52 + } + case data[p] >= 65: goto tr52 } - case data[p] >= 65: + default: goto tr52 } - default: - goto tr52 - } - goto tr25 -tr34: -//.... NONE:1 -te = p+1 + goto tr25 + tr34: + //.... NONE:1 + te = p + 1 - goto st32 - st32: - if p++; p == pe { - goto _test_eof32 - } - st_case_32: -//.... tmp_parser.go:1011 - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 39: - goto st10 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 96: - goto tr44 - } - switch { - case data[p] > 13: - if 40 <= data[p] && data[p] <= 42 { + goto st32 + st32: + if p++; p == pe { + goto _test_eof32 + } + st_case_32: + //.... tmp_parser.go:1011 + switch data[p] { + case 32: + goto tr44 + case 34: + goto tr44 + case 39: + goto st10 + case 44: + goto tr44 + case 47: + goto tr44 + case 59: + goto tr44 + case 96: goto tr44 } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st10: - if p++; p == pe { - goto _test_eof10 - } - st_case_10: - if data[p] == 39 { - goto tr12 - } - if 48 <= data[p] && data[p] <= 49 { - goto st10 - } - goto tr11 - st33: - if p++; p == pe { - goto _test_eof33 - } - st_case_33: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 79: - goto st34 - case 96: - goto tr44 - case 111: - goto st34 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { + switch { + case data[p] > 13: + if 40 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: goto tr44 } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st34: - if p++; p == pe { - goto _test_eof34 - } - st_case_34: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 78: - goto st35 - case 96: - goto tr44 - case 110: - goto st35 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { + goto tr25 + st10: + if p++; p == pe { + goto _test_eof10 + } + st_case_10: + if data[p] == 39 { + goto tr12 + } + if 48 <= data[p] && data[p] <= 49 { + goto st10 + } + goto tr11 + st33: + if p++; p == pe { + goto _test_eof33 + } + st_case_33: + switch data[p] { + case 32: + goto tr44 + case 34: + goto tr44 + case 44: + goto tr44 + case 47: + goto tr44 + case 59: + goto tr44 + case 79: + goto st34 + case 96: goto tr44 + case 111: + goto st34 } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st35: - if p++; p == pe { - goto _test_eof35 - } - st_case_35: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 86: - goto st36 - case 96: - goto tr44 - case 118: - goto st36 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: + goto tr44 + } + goto tr25 + st34: + if p++; p == pe { + goto _test_eof34 + } + st_case_34: + switch data[p] { + case 32: + goto tr44 + case 34: + goto tr44 + case 44: + goto tr44 + case 47: + goto tr44 + case 59: + goto tr44 + case 78: + goto st35 + case 96: + goto tr44 + case 110: + goto st35 + } + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: + goto tr44 + } + goto tr25 + st35: + if p++; p == pe { + goto _test_eof35 + } + st_case_35: + switch data[p] { + case 32: + goto tr44 + case 34: + goto tr44 + case 44: + goto tr44 + case 47: + goto tr44 + case 59: + goto tr44 + case 86: + goto st36 + case 96: + goto tr44 + case 118: + goto st36 + } + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: + goto tr44 + } + goto tr25 + st36: + if p++; p == pe { + goto _test_eof36 + } + st_case_36: + switch data[p] { + case 32: + goto tr44 + case 34: + goto tr44 + case 44: + goto tr44 + case 47: + goto tr44 + case 59: + goto tr44 + case 69: + goto st37 + case 96: + goto tr44 + case 101: + goto st37 + } + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: + goto tr44 + } + goto tr25 + st37: + if p++; p == pe { + goto _test_eof37 + } + st_case_37: + switch data[p] { + case 32: + goto tr44 + case 34: + goto tr44 + case 44: + goto tr44 + case 47: + goto tr44 + case 59: + goto tr44 + case 82: + goto st38 + case 96: + goto tr44 + case 114: + goto st38 + } + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: + goto tr44 + } + goto tr25 + st38: + if p++; p == pe { + goto _test_eof38 + } + st_case_38: + switch data[p] { + case 32: + goto tr44 + case 34: + goto tr44 + case 44: + goto tr44 + case 47: + goto tr44 + case 59: + goto tr44 + case 84: + goto st39 + case 96: + goto tr44 + case 116: + goto st39 + } + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: + goto tr44 + } + goto tr25 + st39: + if p++; p == pe { + goto _test_eof39 + } + st_case_39: + switch data[p] { + case 32: + goto tr44 + case 34: + goto tr44 + case 40: + goto tr10 + case 44: + goto tr44 + case 47: + goto tr44 + case 59: + goto tr44 + case 96: + goto tr44 + } + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: + goto tr44 + } + goto tr25 + st40: + if p++; p == pe { + goto _test_eof40 + } + st_case_40: + switch data[p] { + case 32: + goto tr44 + case 34: + goto tr44 + case 44: + goto tr44 + case 47: + goto tr44 + case 59: + goto tr44 + case 65: + goto st41 + case 96: + goto tr44 + case 97: + goto st41 + } + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: + goto tr44 + } + goto tr25 + st41: + if p++; p == pe { + goto _test_eof41 + } + st_case_41: + switch data[p] { + case 32: + goto tr44 + case 34: + goto tr44 + case 44: + goto tr44 + case 47: + goto tr44 + case 59: + goto tr44 + case 76: + goto st42 + case 96: + goto tr44 + case 108: + goto st42 + } + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: + goto tr44 + } + goto tr25 + st42: + if p++; p == pe { + goto _test_eof42 + } + st_case_42: + switch data[p] { + case 32: + goto tr44 + case 34: + goto tr44 + case 44: + goto tr44 + case 47: + goto tr44 + case 59: + goto tr44 + case 83: + goto st43 + case 96: + goto tr44 + case 115: + goto st43 + } + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: + goto tr44 + } + goto tr25 + st43: + if p++; p == pe { + goto _test_eof43 + } + st_case_43: + switch data[p] { + case 32: + goto tr44 + case 34: + goto tr44 + case 44: + goto tr44 + case 47: + goto tr44 + case 59: + goto tr44 + case 69: + goto tr62 + case 96: + goto tr44 + case 101: + goto tr62 + } + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: + goto tr44 + } + goto tr25 + st44: + if p++; p == pe { + goto _test_eof44 + } + st_case_44: + switch data[p] { + case 32: + goto tr44 + case 34: + goto tr44 + case 44: + goto tr44 + case 47: + goto tr44 + case 59: + goto tr44 + case 85: + goto st45 + case 96: + goto tr44 + case 117: + goto st45 + } + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: + goto tr44 + } + goto tr25 + st45: + if p++; p == pe { + goto _test_eof45 + } + st_case_45: + switch data[p] { + case 32: + goto tr44 + case 34: + goto tr44 + case 44: + goto tr44 + case 47: + goto tr44 + case 59: + goto tr44 + case 76: + goto st46 + case 96: + goto tr44 + case 108: + goto st46 + } + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: + goto tr44 + } + goto tr25 + st46: + if p++; p == pe { + goto _test_eof46 + } + st_case_46: + switch data[p] { + case 32: + goto tr44 + case 34: + goto tr44 + case 44: + goto tr44 + case 47: + goto tr44 + case 59: + goto tr44 + case 76: + goto tr65 + case 96: + goto tr44 + case 108: + goto tr65 + } + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: + goto tr44 + } + goto tr25 + st47: + if p++; p == pe { + goto _test_eof47 + } + st_case_47: + switch data[p] { + case 32: + goto tr44 + case 34: + goto tr44 + case 44: + goto tr44 + case 47: + goto tr44 + case 59: + goto tr44 + case 82: + goto st48 + case 96: + goto tr44 + case 114: + goto st48 + } + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: + goto tr44 + } + goto tr25 + st48: + if p++; p == pe { + goto _test_eof48 + } + st_case_48: + switch data[p] { + case 32: + goto tr44 + case 34: + goto tr44 + case 44: + goto tr44 + case 47: + goto tr44 + case 59: + goto tr44 + case 85: + goto st49 + case 96: + goto tr44 + case 117: + goto st49 + } + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: + goto tr44 + } + goto tr25 + st49: + if p++; p == pe { + goto _test_eof49 + } + st_case_49: + switch data[p] { + case 32: + goto tr44 + case 34: + goto tr44 + case 44: + goto tr44 + case 47: + goto tr44 + case 59: + goto tr44 + case 69: + goto tr68 + case 96: + goto tr44 + case 101: + goto tr68 + } + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: + goto tr44 + } + goto tr25 + st50: + if p++; p == pe { + goto _test_eof50 + } + st_case_50: + switch data[p] { + case 32: + goto tr44 + case 34: + goto tr44 + case 44: + goto tr44 + case 47: + goto tr44 + case 59: + goto tr44 + case 83: + goto st51 + case 96: + goto tr44 + case 115: + goto st51 + } + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: + goto tr44 + } + goto tr25 + st51: + if p++; p == pe { + goto _test_eof51 + } + st_case_51: + switch data[p] { + case 32: + goto tr44 + case 34: + goto tr44 + case 44: + goto tr44 + case 47: + goto tr44 + case 59: + goto tr44 + case 73: + goto st52 + case 96: + goto tr44 + case 105: + goto st52 + } + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: + goto tr44 + } + goto tr25 + st52: + if p++; p == pe { + goto _test_eof52 + } + st_case_52: + switch data[p] { + case 32: + goto tr44 + case 34: + goto tr44 + case 44: + goto tr44 + case 47: + goto tr44 + case 59: + goto tr44 + case 78: + goto st53 + case 96: + goto tr44 + case 110: + goto st53 + } + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: + goto tr44 + } + goto tr25 + st53: + if p++; p == pe { + goto _test_eof53 + } + st_case_53: + switch data[p] { + case 32: + goto tr44 + case 34: + goto tr44 + case 44: + goto tr44 + case 47: + goto tr44 + case 59: + goto tr44 + case 71: + goto tr72 + case 96: goto tr44 + case 103: + goto tr72 } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st36: - if p++; p == pe { - goto _test_eof36 - } - st_case_36: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 69: - goto st37 - case 96: - goto tr44 - case 101: - goto st37 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: goto tr44 } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st37: - if p++; p == pe { - goto _test_eof37 - } - st_case_37: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 82: - goto st38 - case 96: - goto tr44 - case 114: - goto st38 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { - goto tr44 + goto tr25 + tr72: + //.... NONE:1 + te = p + 1 + + goto st54 + st54: + if p++; p == pe { + goto _test_eof54 } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st38: - if p++; p == pe { - goto _test_eof38 - } - st_case_38: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 84: - goto st39 - case 96: - goto tr44 - case 116: - goto st39 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { + st_case_54: + //.... tmp_parser.go:1729 + switch data[p] { + case 32: + goto st11 + case 34: goto tr44 - } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st39: - if p++; p == pe { - goto _test_eof39 - } - st_case_39: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 40: - goto tr10 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 96: - goto tr44 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { + case 44: goto tr44 - } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st40: - if p++; p == pe { - goto _test_eof40 - } - st_case_40: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 65: - goto st41 - case 96: - goto tr44 - case 97: - goto st41 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { + case 47: goto tr44 - } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st41: - if p++; p == pe { - goto _test_eof41 - } - st_case_41: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 76: - goto st42 - case 96: - goto tr44 - case 108: - goto st42 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { + case 59: goto tr44 - } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st42: - if p++; p == pe { - goto _test_eof42 - } - st_case_42: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 83: - goto st43 - case 96: - goto tr44 - case 115: - goto st43 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { + case 96: goto tr44 } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st43: - if p++; p == pe { - goto _test_eof43 - } - st_case_43: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 69: - goto tr62 - case 96: - goto tr44 - case 101: - goto tr62 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: goto tr44 } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st44: - if p++; p == pe { - goto _test_eof44 - } - st_case_44: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 85: - goto st45 - case 96: - goto tr44 - case 117: - goto st45 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { + goto tr25 + st11: + if p++; p == pe { + goto _test_eof11 + } + st_case_11: + switch data[p] { + case 85: + goto st12 + case 117: + goto st12 + } + goto tr11 + st12: + if p++; p == pe { + goto _test_eof12 + } + st_case_12: + switch data[p] { + case 84: + goto st13 + case 116: + goto st13 + } + goto tr11 + st13: + if p++; p == pe { + goto _test_eof13 + } + st_case_13: + switch data[p] { + case 70: + goto st14 + case 102: + goto st14 + } + goto tr11 + st14: + if p++; p == pe { + goto _test_eof14 + } + st_case_14: + if data[p] == 56 { + goto st15 + } + goto tr11 + st15: + if p++; p == pe { + goto _test_eof15 + } + st_case_15: + switch data[p] { + case 77: + goto st16 + case 109: + goto st16 + } + goto tr11 + st16: + if p++; p == pe { + goto _test_eof16 + } + st_case_16: + switch data[p] { + case 66: + goto st17 + case 98: + goto st17 + } + goto tr11 + st17: + if p++; p == pe { + goto _test_eof17 + } + st_case_17: + if data[p] == 52 { + goto st18 + } + goto tr11 + st18: + if p++; p == pe { + goto _test_eof18 + } + st_case_18: + if data[p] == 41 { + goto tr10 + } + goto tr11 + st55: + if p++; p == pe { + goto _test_eof55 + } + st_case_55: + switch data[p] { + case 32: + goto tr44 + case 34: + goto tr44 + case 44: + goto tr44 + case 47: + goto tr44 + case 59: goto tr44 + case 65: + goto st56 + case 96: + goto tr44 + case 97: + goto st56 } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st45: - if p++; p == pe { - goto _test_eof45 - } - st_case_45: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 76: - goto st46 - case 96: - goto tr44 - case 108: - goto st46 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: goto tr44 } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st46: - if p++; p == pe { - goto _test_eof46 - } - st_case_46: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 76: - goto tr65 - case 96: - goto tr44 - case 108: - goto tr65 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { + goto tr25 + st56: + if p++; p == pe { + goto _test_eof56 + } + st_case_56: + switch data[p] { + case 32: + goto tr44 + case 34: + goto tr44 + case 44: + goto tr44 + case 47: goto tr44 + case 59: + goto tr44 + case 76: + goto st57 + case 96: + goto tr44 + case 108: + goto st57 } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st47: - if p++; p == pe { - goto _test_eof47 - } - st_case_47: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 82: - goto st48 - case 96: - goto tr44 - case 114: - goto st48 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: goto tr44 } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st48: - if p++; p == pe { - goto _test_eof48 - } - st_case_48: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 85: - goto st49 - case 96: - goto tr44 - case 117: - goto st49 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { + goto tr25 + st57: + if p++; p == pe { + goto _test_eof57 + } + st_case_57: + switch data[p] { + case 32: + goto tr44 + case 34: + goto tr44 + case 44: goto tr44 + case 47: + goto tr44 + case 59: + goto tr44 + case 85: + goto st58 + case 96: + goto tr44 + case 117: + goto st58 } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st49: - if p++; p == pe { - goto _test_eof49 - } - st_case_49: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 69: - goto tr68 - case 96: - goto tr44 - case 101: - goto tr68 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: goto tr44 } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st50: - if p++; p == pe { - goto _test_eof50 - } - st_case_50: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 83: - goto st51 - case 96: - goto tr44 - case 115: - goto st51 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { + goto tr25 + st58: + if p++; p == pe { + goto _test_eof58 + } + st_case_58: + switch data[p] { + case 32: + goto tr44 + case 34: goto tr44 + case 44: + goto tr44 + case 47: + goto tr44 + case 59: + goto tr44 + case 69: + goto st59 + case 96: + goto tr44 + case 101: + goto st59 } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st51: - if p++; p == pe { - goto _test_eof51 - } - st_case_51: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 73: - goto st52 - case 96: - goto tr44 - case 105: - goto st52 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: goto tr44 } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st52: - if p++; p == pe { - goto _test_eof52 - } - st_case_52: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 78: - goto st53 - case 96: - goto tr44 - case 110: - goto st53 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { + goto tr25 + st59: + if p++; p == pe { + goto _test_eof59 + } + st_case_59: + switch data[p] { + case 32: goto tr44 + case 34: + goto tr44 + case 44: + goto tr44 + case 47: + goto tr44 + case 59: + goto tr44 + case 83: + goto tr78 + case 96: + goto tr44 + case 115: + goto tr78 } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st53: - if p++; p == pe { - goto _test_eof53 - } - st_case_53: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 71: - goto tr72 - case 96: - goto tr44 - case 103: - goto tr72 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { + switch { + case data[p] > 13: + if 39 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: goto tr44 } - case data[p] >= 9: - goto tr44 - } - goto tr25 -tr72: -//.... NONE:1 -te = p+1 + goto tr25 + tr41: + //.... NONE:1 + te = p + 1 - goto st54 - st54: - if p++; p == pe { - goto _test_eof54 - } - st_case_54: -//.... tmp_parser.go:1729 - switch data[p] { - case 32: - goto st11 - case 34: - goto tr44 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 96: - goto tr44 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { - goto tr44 + goto st60 + st60: + if p++; p == pe { + goto _test_eof60 } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st11: - if p++; p == pe { - goto _test_eof11 - } - st_case_11: - switch data[p] { - case 85: - goto st12 - case 117: - goto st12 - } - goto tr11 - st12: - if p++; p == pe { - goto _test_eof12 - } - st_case_12: - switch data[p] { - case 84: - goto st13 - case 116: - goto st13 - } - goto tr11 - st13: - if p++; p == pe { - goto _test_eof13 - } - st_case_13: - switch data[p] { - case 70: - goto st14 - case 102: - goto st14 - } - goto tr11 - st14: - if p++; p == pe { - goto _test_eof14 - } - st_case_14: - if data[p] == 56 { - goto st15 - } - goto tr11 - st15: - if p++; p == pe { - goto _test_eof15 - } - st_case_15: - switch data[p] { - case 77: - goto st16 - case 109: - goto st16 - } - goto tr11 - st16: - if p++; p == pe { - goto _test_eof16 - } - st_case_16: - switch data[p] { - case 66: - goto st17 - case 98: - goto st17 - } - goto tr11 - st17: - if p++; p == pe { - goto _test_eof17 - } - st_case_17: - if data[p] == 52 { - goto st18 - } - goto tr11 - st18: - if p++; p == pe { - goto _test_eof18 - } - st_case_18: - if data[p] == 41 { - goto tr10 - } - goto tr11 - st55: - if p++; p == pe { - goto _test_eof55 - } - st_case_55: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 65: - goto st56 - case 96: - goto tr44 - case 97: - goto st56 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { + st_case_60: + //.... tmp_parser.go:2010 + switch data[p] { + case 32: goto tr44 - } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st56: - if p++; p == pe { - goto _test_eof56 - } - st_case_56: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 76: - goto st57 - case 96: - goto tr44 - case 108: - goto st57 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { + case 34: goto tr44 - } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st57: - if p++; p == pe { - goto _test_eof57 - } - st_case_57: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 85: - goto st58 - case 96: - goto tr44 - case 117: - goto st58 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { + case 39: + goto st19 + case 44: goto tr44 - } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st58: - if p++; p == pe { - goto _test_eof58 - } - st_case_58: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 69: - goto st59 - case 96: - goto tr44 - case 101: - goto st59 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { + case 47: goto tr44 - } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st59: - if p++; p == pe { - goto _test_eof59 - } - st_case_59: - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 83: - goto tr78 - case 96: - goto tr44 - case 115: - goto tr78 - } - switch { - case data[p] > 13: - if 39 <= data[p] && data[p] <= 42 { + case 59: + goto tr44 + case 96: goto tr44 } - case data[p] >= 9: - goto tr44 - } - goto tr25 -tr41: -//.... NONE:1 -te = p+1 - - goto st60 - st60: - if p++; p == pe { - goto _test_eof60 - } - st_case_60: -//.... tmp_parser.go:2010 - switch data[p] { - case 32: - goto tr44 - case 34: - goto tr44 - case 39: - goto st19 - case 44: - goto tr44 - case 47: - goto tr44 - case 59: - goto tr44 - case 96: - goto tr44 - } - switch { - case data[p] > 13: - if 40 <= data[p] && data[p] <= 42 { + switch { + case data[p] > 13: + if 40 <= data[p] && data[p] <= 42 { + goto tr44 + } + case data[p] >= 9: goto tr44 } - case data[p] >= 9: - goto tr44 - } - goto tr25 - st19: - if p++; p == pe { - goto _test_eof19 - } - st_case_19: - if data[p] == 39 { - goto tr21 - } - switch { - case data[p] < 65: - if 48 <= data[p] && data[p] <= 57 { - goto st19 + goto tr25 + st19: + if p++; p == pe { + goto _test_eof19 } - case data[p] > 70: - if 97 <= data[p] && data[p] <= 102 { + st_case_19: + if data[p] == 39 { + goto tr21 + } + switch { + case data[p] < 65: + if 48 <= data[p] && data[p] <= 57 { + goto st19 + } + case data[p] > 70: + if 97 <= data[p] && data[p] <= 102 { + goto st19 + } + default: goto st19 } - default: - goto st19 - } - goto tr11 - st20: - if p++; p == pe { - goto _test_eof20 - } - st_case_20: - if data[p] == 96 { - goto tr24 - } - goto st20 -tr24: -//.... NONE:1 -te = p+1 - -//.... lightning/mydump/parser.rl:125 -act = 13; - goto st61 - st61: - if p++; p == pe { - goto _test_eof61 - } - st_case_61: -//.... tmp_parser.go:2078 - if data[p] == 96 { + goto tr11 + st20: + if p++; p == pe { + goto _test_eof20 + } + st_case_20: + if data[p] == 96 { + goto tr24 + } goto st20 - } - goto tr79 - st_out: - _test_eof21: cs = 21; goto _test_eof - _test_eof22: cs = 22; goto _test_eof - _test_eof1: cs = 1; goto _test_eof - _test_eof2: cs = 2; goto _test_eof - _test_eof23: cs = 23; goto _test_eof - _test_eof3: cs = 3; goto _test_eof - _test_eof4: cs = 4; goto _test_eof - _test_eof5: cs = 5; goto _test_eof - _test_eof24: cs = 24; goto _test_eof - _test_eof6: cs = 6; goto _test_eof - _test_eof25: cs = 25; goto _test_eof - _test_eof26: cs = 26; goto _test_eof - _test_eof27: cs = 27; goto _test_eof - _test_eof28: cs = 28; goto _test_eof - _test_eof7: cs = 7; goto _test_eof - _test_eof8: cs = 8; goto _test_eof - _test_eof9: cs = 9; goto _test_eof - _test_eof29: cs = 29; goto _test_eof - _test_eof30: cs = 30; goto _test_eof - _test_eof31: cs = 31; goto _test_eof - _test_eof32: cs = 32; goto _test_eof - _test_eof10: cs = 10; goto _test_eof - _test_eof33: cs = 33; goto _test_eof - _test_eof34: cs = 34; goto _test_eof - _test_eof35: cs = 35; goto _test_eof - _test_eof36: cs = 36; goto _test_eof - _test_eof37: cs = 37; goto _test_eof - _test_eof38: cs = 38; goto _test_eof - _test_eof39: cs = 39; goto _test_eof - _test_eof40: cs = 40; goto _test_eof - _test_eof41: cs = 41; goto _test_eof - _test_eof42: cs = 42; goto _test_eof - _test_eof43: cs = 43; goto _test_eof - _test_eof44: cs = 44; goto _test_eof - _test_eof45: cs = 45; goto _test_eof - _test_eof46: cs = 46; goto _test_eof - _test_eof47: cs = 47; goto _test_eof - _test_eof48: cs = 48; goto _test_eof - _test_eof49: cs = 49; goto _test_eof - _test_eof50: cs = 50; goto _test_eof - _test_eof51: cs = 51; goto _test_eof - _test_eof52: cs = 52; goto _test_eof - _test_eof53: cs = 53; goto _test_eof - _test_eof54: cs = 54; goto _test_eof - _test_eof11: cs = 11; goto _test_eof - _test_eof12: cs = 12; goto _test_eof - _test_eof13: cs = 13; goto _test_eof - _test_eof14: cs = 14; goto _test_eof - _test_eof15: cs = 15; goto _test_eof - _test_eof16: cs = 16; goto _test_eof - _test_eof17: cs = 17; goto _test_eof - _test_eof18: cs = 18; goto _test_eof - _test_eof55: cs = 55; goto _test_eof - _test_eof56: cs = 56; goto _test_eof - _test_eof57: cs = 57; goto _test_eof - _test_eof58: cs = 58; goto _test_eof - _test_eof59: cs = 59; goto _test_eof - _test_eof60: cs = 60; goto _test_eof - _test_eof19: cs = 19; goto _test_eof - _test_eof20: cs = 20; goto _test_eof - _test_eof61: cs = 61; goto _test_eof + tr24: + //.... NONE:1 + te = p + 1 - _test_eof: {} - if p == eof { - switch cs { - case 22: - goto tr4 - case 2: - goto tr4 - case 23: - goto tr42 - case 3: - goto tr4 - case 5: - goto tr4 - case 24: - goto tr43 - case 6: - goto tr4 - case 25: - goto tr44 - case 26: - goto tr46 - case 27: - goto tr46 - case 28: - goto tr48 - case 29: - goto tr48 - case 30: - goto tr4 - case 31: - goto tr4 - case 32: - goto tr44 - case 10: - goto tr11 - case 33: - goto tr44 - case 34: - goto tr44 - case 35: - goto tr44 - case 36: - goto tr44 - case 37: - goto tr44 - case 38: - goto tr44 - case 39: - goto tr44 - case 40: - goto tr44 - case 41: - goto tr44 - case 42: - goto tr44 - case 43: - goto tr44 - case 44: - goto tr44 - case 45: - goto tr44 - case 46: - goto tr44 - case 47: - goto tr44 - case 48: - goto tr44 - case 49: - goto tr44 - case 50: - goto tr44 - case 51: - goto tr44 - case 52: - goto tr44 - case 53: - goto tr44 - case 54: - goto tr44 - case 11: - goto tr11 - case 12: - goto tr11 - case 13: - goto tr11 - case 14: - goto tr11 - case 15: - goto tr11 - case 16: - goto tr11 - case 17: - goto tr11 - case 18: - goto tr11 - case 55: - goto tr44 - case 56: - goto tr44 - case 57: - goto tr44 - case 58: - goto tr44 - case 59: - goto tr44 - case 60: - goto tr44 - case 19: - goto tr11 - case 20: - goto tr4 - case 61: + //.... lightning/mydump/parser.rl:125 + act = 13 + goto st61 + st61: + if p++; p == pe { + goto _test_eof61 + } + st_case_61: + //.... tmp_parser.go:2078 + if data[p] == 96 { + goto st20 + } goto tr79 - } - } + st_out: + _test_eof21: + cs = 21 + goto _test_eof + _test_eof22: + cs = 22 + goto _test_eof + _test_eof1: + cs = 1 + goto _test_eof + _test_eof2: + cs = 2 + goto _test_eof + _test_eof23: + cs = 23 + goto _test_eof + _test_eof3: + cs = 3 + goto _test_eof + _test_eof4: + cs = 4 + goto _test_eof + _test_eof5: + cs = 5 + goto _test_eof + _test_eof24: + cs = 24 + goto _test_eof + _test_eof6: + cs = 6 + goto _test_eof + _test_eof25: + cs = 25 + goto _test_eof + _test_eof26: + cs = 26 + goto _test_eof + _test_eof27: + cs = 27 + goto _test_eof + _test_eof28: + cs = 28 + goto _test_eof + _test_eof7: + cs = 7 + goto _test_eof + _test_eof8: + cs = 8 + goto _test_eof + _test_eof9: + cs = 9 + goto _test_eof + _test_eof29: + cs = 29 + goto _test_eof + _test_eof30: + cs = 30 + goto _test_eof + _test_eof31: + cs = 31 + goto _test_eof + _test_eof32: + cs = 32 + goto _test_eof + _test_eof10: + cs = 10 + goto _test_eof + _test_eof33: + cs = 33 + goto _test_eof + _test_eof34: + cs = 34 + goto _test_eof + _test_eof35: + cs = 35 + goto _test_eof + _test_eof36: + cs = 36 + goto _test_eof + _test_eof37: + cs = 37 + goto _test_eof + _test_eof38: + cs = 38 + goto _test_eof + _test_eof39: + cs = 39 + goto _test_eof + _test_eof40: + cs = 40 + goto _test_eof + _test_eof41: + cs = 41 + goto _test_eof + _test_eof42: + cs = 42 + goto _test_eof + _test_eof43: + cs = 43 + goto _test_eof + _test_eof44: + cs = 44 + goto _test_eof + _test_eof45: + cs = 45 + goto _test_eof + _test_eof46: + cs = 46 + goto _test_eof + _test_eof47: + cs = 47 + goto _test_eof + _test_eof48: + cs = 48 + goto _test_eof + _test_eof49: + cs = 49 + goto _test_eof + _test_eof50: + cs = 50 + goto _test_eof + _test_eof51: + cs = 51 + goto _test_eof + _test_eof52: + cs = 52 + goto _test_eof + _test_eof53: + cs = 53 + goto _test_eof + _test_eof54: + cs = 54 + goto _test_eof + _test_eof11: + cs = 11 + goto _test_eof + _test_eof12: + cs = 12 + goto _test_eof + _test_eof13: + cs = 13 + goto _test_eof + _test_eof14: + cs = 14 + goto _test_eof + _test_eof15: + cs = 15 + goto _test_eof + _test_eof16: + cs = 16 + goto _test_eof + _test_eof17: + cs = 17 + goto _test_eof + _test_eof18: + cs = 18 + goto _test_eof + _test_eof55: + cs = 55 + goto _test_eof + _test_eof56: + cs = 56 + goto _test_eof + _test_eof57: + cs = 57 + goto _test_eof + _test_eof58: + cs = 58 + goto _test_eof + _test_eof59: + cs = 59 + goto _test_eof + _test_eof60: + cs = 60 + goto _test_eof + _test_eof19: + cs = 19 + goto _test_eof + _test_eof20: + cs = 20 + goto _test_eof + _test_eof61: + cs = 61 + goto _test_eof - _out: {} - } + _test_eof: + { + } + if p == eof { + switch cs { + case 22: + goto tr4 + case 2: + goto tr4 + case 23: + goto tr42 + case 3: + goto tr4 + case 5: + goto tr4 + case 24: + goto tr43 + case 6: + goto tr4 + case 25: + goto tr44 + case 26: + goto tr46 + case 27: + goto tr46 + case 28: + goto tr48 + case 29: + goto tr48 + case 30: + goto tr4 + case 31: + goto tr4 + case 32: + goto tr44 + case 10: + goto tr11 + case 33: + goto tr44 + case 34: + goto tr44 + case 35: + goto tr44 + case 36: + goto tr44 + case 37: + goto tr44 + case 38: + goto tr44 + case 39: + goto tr44 + case 40: + goto tr44 + case 41: + goto tr44 + case 42: + goto tr44 + case 43: + goto tr44 + case 44: + goto tr44 + case 45: + goto tr44 + case 46: + goto tr44 + case 47: + goto tr44 + case 48: + goto tr44 + case 49: + goto tr44 + case 50: + goto tr44 + case 51: + goto tr44 + case 52: + goto tr44 + case 53: + goto tr44 + case 54: + goto tr44 + case 11: + goto tr11 + case 12: + goto tr11 + case 13: + goto tr11 + case 14: + goto tr11 + case 15: + goto tr11 + case 16: + goto tr11 + case 17: + goto tr11 + case 18: + goto tr11 + case 55: + goto tr44 + case 56: + goto tr44 + case 57: + goto tr44 + case 58: + goto tr44 + case 59: + goto tr44 + case 60: + goto tr44 + case 19: + goto tr11 + case 20: + goto tr4 + case 61: + goto tr79 + } + } + + _out: + { + } + } -//.... lightning/mydump/parser.rl:155 + //.... lightning/mydump/parser.rl:155 if cs == 0 { parser.logSyntaxError() diff --git a/lightning/mydump/region.go b/lightning/mydump/region.go index 9e2761eef..c1de2992b 100644 --- a/lightning/mydump/region.go +++ b/lightning/mydump/region.go @@ -14,11 +14,14 @@ package mydump import ( + "io" "math" "os" "strings" "github.com/pingcap/errors" + "github.com/pingcap/tidb-lightning/lightning/config" + "github.com/pingcap/tidb-lightning/lightning/worker" ) type TableRegion struct { @@ -135,14 +138,12 @@ func AllocateEngineIDs( func MakeTableRegions( meta *MDTableMeta, columns int, - batchSize int64, - batchImportRatio float64, - tableConcurrency int, + cfg *config.Config, + ioWorkers *worker.Pool, ) ([]*TableRegion, error) { // Split files into regions filesRegions := make(regionSlice, 0, len(meta.DataFiles)) dataFileSizes := make([]float64, 0, len(meta.DataFiles)) - prevRowIDMax := int64(0) for _, dataFile := range meta.DataFiles { dataFileInfo, err := os.Stat(dataFile) @@ -152,9 +153,25 @@ func MakeTableRegions( dataFileSize := dataFileInfo.Size() divisor := int64(columns) - if strings.HasSuffix(strings.ToLower(dataFile), ".sql") { + isCsvFile := strings.HasSuffix(strings.ToLower(dataFile), ".csv") + if !isCsvFile { divisor += 2 } + // If a csv file is overlarge, we need to split it into mutiple regions. + // Note: We can only split a csv file whose format is strict and header is empty. + if isCsvFile && dataFileSize > cfg.Mydumper.MaxRegionSize && cfg.Mydumper.StrictFormat && !cfg.Mydumper.CSV.Header { + var ( + regions []*TableRegion + subFileSizes []float64 + ) + prevRowIDMax, regions, subFileSizes, err = SplitLargeFile(meta, cfg, dataFile, dataFileSize, divisor, prevRowIDMax, ioWorkers) + if err != nil { + return nil, err + } + dataFileSizes = append(dataFileSizes, subFileSizes...) + filesRegions = append(filesRegions, regions...) + continue + } rowIDMax := prevRowIDMax + dataFileSize/divisor filesRegions = append(filesRegions, &TableRegion{ DB: meta.DB, @@ -171,6 +188,71 @@ func MakeTableRegions( dataFileSizes = append(dataFileSizes, float64(dataFileSize)) } - AllocateEngineIDs(filesRegions, dataFileSizes, float64(batchSize), batchImportRatio, float64(tableConcurrency)) + AllocateEngineIDs(filesRegions, dataFileSizes, float64(cfg.Mydumper.BatchSize), cfg.Mydumper.BatchImportRatio, float64(cfg.App.TableConcurrency)) return filesRegions, nil } + +// SplitLargeFile splits a large csv file into multiple regions, the size of +// each regions is specified by `config.MaxRegionSize`. +// Note: We split the file coarsely, thus the format of csv file is needed to be +// strict. +// e.g. +// - CSV file with header is invalid +// - a complete tuple split into multiple lines is invalid +func SplitLargeFile( + meta *MDTableMeta, + cfg *config.Config, + dataFilePath string, + dataFileSize int64, + divisor int64, + prevRowIdxMax int64, + ioWorker *worker.Pool, +) (prevRowIdMax int64, regions []*TableRegion, dataFileSizes []float64, err error) { + maxRegionSize := cfg.Mydumper.MaxRegionSize + dataFileSizes = make([]float64, 0, dataFileSize/maxRegionSize+1) + startOffset, endOffset := int64(0), maxRegionSize + for { + curRowsCnt := (endOffset - startOffset) / divisor + rowIDMax := prevRowIdxMax + curRowsCnt + if endOffset != dataFileSize { + reader, err := os.Open(dataFilePath) + if err != nil { + return 0, nil, nil, err + } + parser := NewCSVParser(&cfg.Mydumper.CSV, reader, cfg.Mydumper.ReadBlockSize, ioWorker) + parser.SetPos(endOffset, prevRowIdMax) + _, err = reader.Seek(endOffset, io.SeekStart) + if err != nil { + return 0, nil, nil, err + } + pos, err := parser.ReadUntilTokNewLine() + if err != nil { + return 0, nil, nil, err + } + endOffset = pos + parser.Close() + } + regions = append(regions, + &TableRegion{ + DB: meta.DB, + Table: meta.Name, + File: dataFilePath, + Chunk: Chunk{ + Offset: startOffset, + EndOffset: endOffset, + PrevRowIDMax: prevRowIdxMax, + RowIDMax: rowIDMax, + }, + }) + dataFileSizes = append(dataFileSizes, float64(endOffset-startOffset)) + prevRowIdxMax = rowIDMax + if endOffset == dataFileSize { + break + } + startOffset = endOffset + if endOffset += maxRegionSize; endOffset > dataFileSize { + endOffset = dataFileSize + } + } + return prevRowIdxMax, regions, dataFileSizes, nil +} diff --git a/lightning/mydump/region_test.go b/lightning/mydump/region_test.go index 82412a99a..8556bd822 100644 --- a/lightning/mydump/region_test.go +++ b/lightning/mydump/region_test.go @@ -14,13 +14,16 @@ package mydump_test import ( + "context" "fmt" + "log" "os" "path/filepath" . "github.com/pingcap/check" "github.com/pingcap/tidb-lightning/lightning/config" . "github.com/pingcap/tidb-lightning/lightning/mydump" + "github.com/pingcap/tidb-lightning/lightning/worker" ) var _ = Suite(&testMydumpRegionSuite{}) @@ -60,8 +63,9 @@ func (s *testMydumpRegionSuite) TestTableRegion(c *C) { loader, _ := NewMyDumpLoader(cfg) dbMeta := loader.GetDatabases()[0] + ioWorkers := worker.NewPool(context.Background(), 1, "io") for _, meta := range dbMeta.Tables { - regions, err := MakeTableRegions(meta, 1, 1, 0, 1) + regions, err := MakeTableRegions(meta, 1, cfg, ioWorkers) c.Assert(err, IsNil) table := meta.Name @@ -193,3 +197,56 @@ func (s *testMydumpRegionSuite) TestAllocateEngineIDs(c *C) { 6: 100, }) } + +func (s *testMydumpRegionSuite) TestSplitLargeFile(c *C) { + meta := &MDTableMeta{ + DB: "csv", + Name: "large_csv_file", + } + cfg := &config.Config{ + Mydumper: config.MydumperRuntime{ + ReadBlockSize: config.ReadBlockSize, + CSV: config.CSVConfig{ + Separator: ",", + Delimiter: "", + Header: false, + TrimLastSep: false, + NotNull: false, + Null: "NULL", + BackslashEscape: true, + }, + StrictFormat: true, + }, + } + filePath := "./csv/split_large_file.csv" + dataFileInfo, err := os.Stat(filePath) + if err != nil { + log.Fatal(err) + } + fileSize := dataFileInfo.Size() + colCnt := int64(3) + for _, tc := range []struct { + maxRegionSize int64 + chkCnt int + offsets [][]int64 + }{ + {1, 4, [][]int64{{0, 6}, {6, 12}, {12, 18}, {18, 24}}}, + {6, 2, [][]int64{{0, 12}, {12, 24}}}, + {8, 2, [][]int64{{0, 12}, {12, 24}}}, + {12, 2, [][]int64{{0, 18}, {18, 24}}}, + {13, 2, [][]int64{{0, 18}, {18, 24}}}, + {18, 1, [][]int64{{0, 24}}}, + {19, 1, [][]int64{{0, 24}}}, + } { + cfg.Mydumper.MaxRegionSize = tc.maxRegionSize + prevRowIdxMax := int64(0) + ioWorker := worker.NewPool(context.Background(), 4, "io") + _, regions, _, err := SplitLargeFile(meta, cfg, filePath, fileSize, colCnt, prevRowIdxMax, ioWorker) + c.Assert(err, IsNil) + c.Assert(len(regions), Equals, tc.chkCnt) + for i := range tc.offsets { + c.Assert(regions[i].Chunk.Offset, Equals, tc.offsets[i][0]) + c.Assert(regions[i].Chunk.EndOffset, Equals, tc.offsets[i][1]) + } + } +} diff --git a/lightning/restore/restore.go b/lightning/restore/restore.go index 8dd46eec5..2793aca06 100644 --- a/lightning/restore/restore.go +++ b/lightning/restore/restore.go @@ -336,7 +336,21 @@ func (rc *RestoreController) estimateChunkCountIntoMetrics() { estimatedChunkCount := 0 for _, dbMeta := range rc.dbMetas { for _, tableMeta := range dbMeta.Tables { - estimatedChunkCount += len(tableMeta.DataFiles) + for _, tablePath := range tableMeta.DataFiles { + isCsvFile := strings.HasSuffix(strings.ToLower(tablePath), ".csv") + if isCsvFile { + f, _ := os.Stat(tablePath) + dataFileSize := f.Size() + cfg := rc.cfg.Mydumper + if dataFileSize > cfg.MaxRegionSize && cfg.StrictFormat && !cfg.CSV.Header { + estimatedChunkCount += int(dataFileSize / cfg.MaxRegionSize) + } else { + estimatedChunkCount += 1 + } + } else { + estimatedChunkCount += 1 + } + } } } metric.ChunkCounter.WithLabelValues(metric.ChunkStateEstimated).Add(float64(estimatedChunkCount)) @@ -704,7 +718,7 @@ func (t *TableRestore) restoreTable( zap.Int("filesCnt", cp.CountChunks()), ) } else if cp.Status < CheckpointStatusAllWritten { - if err := t.populateChunks(rc.cfg, cp); err != nil { + if err := t.populateChunks(rc, cp); err != nil { return errors.Trace(err) } if err := rc.checkpointsDB.InsertEngineCheckpoints(ctx, t.tableName, cp.Engines); err != nil { @@ -1316,9 +1330,9 @@ func (tr *TableRestore) Close() { tr.logger.Info("restore done") } -func (t *TableRestore) populateChunks(cfg *config.Config, cp *TableCheckpoint) error { +func (t *TableRestore) populateChunks(rc *RestoreController, cp *TableCheckpoint) error { task := t.logger.Begin(zap.InfoLevel, "load engines and files") - chunks, err := mydump.MakeTableRegions(t.tableMeta, t.tableInfo.Columns, cfg.Mydumper.BatchSize, cfg.Mydumper.BatchImportRatio, cfg.App.TableConcurrency) + chunks, err := mydump.MakeTableRegions(t.tableMeta, t.tableInfo.Columns, rc.cfg, rc.ioWorkers) if err == nil { timestamp := time.Now().Unix() failpoint.Inject("PopulateChunkTimestamp", func(v failpoint.Value) { diff --git a/lightning/restore/restore_test.go b/lightning/restore/restore_test.go index 2b56d6152..04313ae97 100644 --- a/lightning/restore/restore_test.go +++ b/lightning/restore/restore_test.go @@ -341,7 +341,9 @@ func (s *tableRestoreSuite) TestPopulateChunks(c *C) { cp := &TableCheckpoint{ Engines: make(map[int32]*EngineCheckpoint), } - err := s.tr.populateChunks(s.cfg, cp) + + rc := &RestoreController{cfg: s.cfg, ioWorkers: worker.NewPool(context.Background(), 1, "io")} + err := s.tr.populateChunks(rc, cp) c.Assert(err, IsNil) c.Assert(cp.Engines, DeepEquals, map[int32]*EngineCheckpoint{