mirror of
https://github.com/unidoc/unioffice.git
synced 2025-04-29 13:49:10 +08:00
1941 lines
27 KiB
Go
1941 lines
27 KiB
Go
//line lexer.rl:1
|
|
|
|
// Copyright 2017 Baliance. All rights reserved.
|
|
//
|
|
// Use of this source code is governed by the terms of the Affero GNU General
|
|
// Public License version 3.0 as published by the Free Software Foundation and
|
|
// appearing in the file LICENSE included in the packaging of this file. A
|
|
// commercial license can be purchased by contacting sales@baliance.com.
|
|
|
|
package format
|
|
|
|
import (
|
|
"io"
|
|
|
|
"baliance.com/gooxml"
|
|
)
|
|
|
|
//line lexer.go:20
|
|
const format_start int = 34
|
|
const format_first_final int = 34
|
|
const format_error int = -1
|
|
|
|
const format_en_main int = 34
|
|
|
|
//line lexer.rl:97
|
|
func (l *Lexer) Lex(r io.Reader) {
|
|
cs, p, pe := 0, 0, 0
|
|
eof := -1
|
|
ts, te, act := 0, 0, 0
|
|
_ = te
|
|
_ = act
|
|
curline := 1
|
|
_ = curline
|
|
data := make([]byte, 4096)
|
|
|
|
done := false
|
|
for !done {
|
|
// p - index of next character to process
|
|
// pe - index of the end of the data
|
|
// eof - index of the end of the file
|
|
// ts - index of the start of the current token
|
|
// te - index of the end of the current token
|
|
|
|
// still have a partial token
|
|
rem := 0
|
|
if ts > 0 {
|
|
rem = p - ts
|
|
}
|
|
p = 0
|
|
n, err := r.Read(data[rem:])
|
|
if n == 0 || err != nil {
|
|
done = true
|
|
}
|
|
pe = n + rem
|
|
if pe < len(data) {
|
|
eof = pe
|
|
}
|
|
|
|
//line lexer.go:64
|
|
{
|
|
cs = format_start
|
|
ts = 0
|
|
te = 0
|
|
act = 0
|
|
}
|
|
|
|
//line lexer.go:72
|
|
{
|
|
if p == pe {
|
|
goto _test_eof
|
|
}
|
|
switch cs {
|
|
case 34:
|
|
goto st_case_34
|
|
case 35:
|
|
goto st_case_35
|
|
case 0:
|
|
goto st_case_0
|
|
case 36:
|
|
goto st_case_36
|
|
case 37:
|
|
goto st_case_37
|
|
case 1:
|
|
goto st_case_1
|
|
case 2:
|
|
goto st_case_2
|
|
case 38:
|
|
goto st_case_38
|
|
case 3:
|
|
goto st_case_3
|
|
case 4:
|
|
goto st_case_4
|
|
case 39:
|
|
goto st_case_39
|
|
case 5:
|
|
goto st_case_5
|
|
case 6:
|
|
goto st_case_6
|
|
case 7:
|
|
goto st_case_7
|
|
case 8:
|
|
goto st_case_8
|
|
case 40:
|
|
goto st_case_40
|
|
case 9:
|
|
goto st_case_9
|
|
case 41:
|
|
goto st_case_41
|
|
case 10:
|
|
goto st_case_10
|
|
case 42:
|
|
goto st_case_42
|
|
case 11:
|
|
goto st_case_11
|
|
case 43:
|
|
goto st_case_43
|
|
case 44:
|
|
goto st_case_44
|
|
case 45:
|
|
goto st_case_45
|
|
case 12:
|
|
goto st_case_12
|
|
case 46:
|
|
goto st_case_46
|
|
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 47:
|
|
goto st_case_47
|
|
case 17:
|
|
goto st_case_17
|
|
case 48:
|
|
goto st_case_48
|
|
case 18:
|
|
goto st_case_18
|
|
case 19:
|
|
goto st_case_19
|
|
case 20:
|
|
goto st_case_20
|
|
case 49:
|
|
goto st_case_49
|
|
case 50:
|
|
goto st_case_50
|
|
case 21:
|
|
goto st_case_21
|
|
case 22:
|
|
goto st_case_22
|
|
case 23:
|
|
goto st_case_23
|
|
case 24:
|
|
goto st_case_24
|
|
case 25:
|
|
goto st_case_25
|
|
case 51:
|
|
goto st_case_51
|
|
case 26:
|
|
goto st_case_26
|
|
case 52:
|
|
goto st_case_52
|
|
case 53:
|
|
goto st_case_53
|
|
case 54:
|
|
goto st_case_54
|
|
case 55:
|
|
goto st_case_55
|
|
case 56:
|
|
goto st_case_56
|
|
case 57:
|
|
goto st_case_57
|
|
case 27:
|
|
goto st_case_27
|
|
case 28:
|
|
goto st_case_28
|
|
case 29:
|
|
goto st_case_29
|
|
case 30:
|
|
goto st_case_30
|
|
case 31:
|
|
goto st_case_31
|
|
case 58:
|
|
goto st_case_58
|
|
case 32:
|
|
goto st_case_32
|
|
case 59:
|
|
goto st_case_59
|
|
case 33:
|
|
goto st_case_33
|
|
case 60:
|
|
goto st_case_60
|
|
case 61:
|
|
goto st_case_61
|
|
case 62:
|
|
goto st_case_62
|
|
}
|
|
goto st_out
|
|
tr0:
|
|
//line NONE:1
|
|
switch act {
|
|
case 2:
|
|
{
|
|
p = (te) - 1
|
|
l.fmt.AddToken(FmtTypeDigit, nil)
|
|
}
|
|
case 3:
|
|
{
|
|
p = (te) - 1
|
|
l.fmt.AddToken(FmtTypeDigitOpt, nil)
|
|
}
|
|
case 5:
|
|
{
|
|
p = (te) - 1
|
|
}
|
|
case 8:
|
|
{
|
|
p = (te) - 1
|
|
l.fmt.AddToken(FmtTypePercent, nil)
|
|
}
|
|
case 13:
|
|
{
|
|
p = (te) - 1
|
|
l.fmt.AddToken(FmtTypeFraction, data[ts:te])
|
|
}
|
|
case 14:
|
|
{
|
|
p = (te) - 1
|
|
l.fmt.AddToken(FmtTypeDate, data[ts:te])
|
|
}
|
|
case 15:
|
|
{
|
|
p = (te) - 1
|
|
l.fmt.AddToken(FmtTypeTime, data[ts:te])
|
|
}
|
|
case 16:
|
|
{
|
|
p = (te) - 1
|
|
l.fmt.AddToken(FmtTypeTime, data[ts:te])
|
|
}
|
|
case 18:
|
|
{
|
|
p = (te) - 1
|
|
}
|
|
case 20:
|
|
{
|
|
p = (te) - 1
|
|
l.fmt.AddToken(FmtTypeLiteral, data[ts:te])
|
|
}
|
|
case 21:
|
|
{
|
|
p = (te) - 1
|
|
l.fmt.AddToken(FmtTypeLiteral, data[ts+1:te-1])
|
|
}
|
|
}
|
|
|
|
goto st34
|
|
tr9:
|
|
//line lexer.rl:83
|
|
p = (te) - 1
|
|
{
|
|
l.fmt.AddToken(FmtTypeFraction, data[ts:te])
|
|
}
|
|
goto st34
|
|
tr19:
|
|
//line lexer.rl:73
|
|
p = (te) - 1
|
|
{
|
|
l.fmt.AddToken(FmtTypeDigitOpt, nil)
|
|
}
|
|
goto st34
|
|
tr20:
|
|
//line lexer.rl:71
|
|
te = p + 1
|
|
{
|
|
l.fmt.AddToken(FmtTypeDigitOptThousands, nil)
|
|
}
|
|
goto st34
|
|
tr21:
|
|
//line lexer.rl:78
|
|
p = (te) - 1
|
|
{
|
|
l.fmt.AddToken(FmtTypePercent, nil)
|
|
}
|
|
goto st34
|
|
tr26:
|
|
//line lexer.rl:85
|
|
p = (te) - 1
|
|
{
|
|
l.fmt.AddToken(FmtTypeDate, data[ts:te])
|
|
}
|
|
goto st34
|
|
tr28:
|
|
//line lexer.rl:72
|
|
p = (te) - 1
|
|
{
|
|
l.fmt.AddToken(FmtTypeDigit, nil)
|
|
}
|
|
goto st34
|
|
tr37:
|
|
//line lexer.rl:86
|
|
p = (te) - 1
|
|
{
|
|
l.fmt.AddToken(FmtTypeTime, data[ts:te])
|
|
}
|
|
goto st34
|
|
tr39:
|
|
//line lexer.rl:92
|
|
p = (te) - 1
|
|
{
|
|
l.fmt.AddToken(FmtTypeLiteral, data[ts:te])
|
|
}
|
|
goto st34
|
|
tr44:
|
|
//line lexer.rl:82
|
|
te = p + 1
|
|
{
|
|
l.fmt.isGeneral = true
|
|
}
|
|
goto st34
|
|
tr48:
|
|
//line lexer.rl:92
|
|
te = p + 1
|
|
{
|
|
l.fmt.AddToken(FmtTypeLiteral, data[ts:te])
|
|
}
|
|
goto st34
|
|
tr51:
|
|
//line lexer.rl:79
|
|
te = p + 1
|
|
{
|
|
l.fmt.AddToken(FmtTypeDollar, nil)
|
|
}
|
|
goto st34
|
|
tr53:
|
|
//line lexer.rl:77
|
|
te = p + 1
|
|
{
|
|
l.fmt.AddToken(FmtTypeComma, nil)
|
|
}
|
|
goto st34
|
|
tr54:
|
|
//line lexer.rl:76
|
|
te = p + 1
|
|
{
|
|
l.fmt.AddToken(FmtTypeDecimal, nil)
|
|
}
|
|
goto st34
|
|
tr57:
|
|
//line lexer.rl:81
|
|
te = p + 1
|
|
{
|
|
l.nextFmt()
|
|
}
|
|
goto st34
|
|
tr59:
|
|
//line lexer.rl:74
|
|
te = p + 1
|
|
{
|
|
l.fmt.AddToken(FmtTypeText, nil)
|
|
}
|
|
goto st34
|
|
tr65:
|
|
//line lexer.rl:80
|
|
te = p + 1
|
|
{
|
|
l.fmt.AddToken(FmtTypeUnderscore, nil)
|
|
}
|
|
goto st34
|
|
tr69:
|
|
//line lexer.rl:92
|
|
te = p
|
|
p--
|
|
{
|
|
l.fmt.AddToken(FmtTypeLiteral, data[ts:te])
|
|
}
|
|
goto st34
|
|
tr70:
|
|
//line lexer.rl:93
|
|
te = p
|
|
p--
|
|
{
|
|
l.fmt.AddToken(FmtTypeLiteral, data[ts+1:te-1])
|
|
}
|
|
goto st34
|
|
tr71:
|
|
//line lexer.rl:73
|
|
te = p
|
|
p--
|
|
{
|
|
l.fmt.AddToken(FmtTypeDigitOpt, nil)
|
|
}
|
|
goto st34
|
|
tr73:
|
|
//line lexer.rl:83
|
|
te = p
|
|
p--
|
|
{
|
|
l.fmt.AddToken(FmtTypeFraction, data[ts:te])
|
|
}
|
|
goto st34
|
|
tr78:
|
|
//line lexer.rl:78
|
|
te = p
|
|
p--
|
|
{
|
|
l.fmt.AddToken(FmtTypePercent, nil)
|
|
}
|
|
goto st34
|
|
tr79:
|
|
//line lexer.rl:85
|
|
te = p
|
|
p--
|
|
{
|
|
l.fmt.AddToken(FmtTypeDate, data[ts:te])
|
|
}
|
|
goto st34
|
|
tr81:
|
|
//line lexer.rl:72
|
|
te = p
|
|
p--
|
|
{
|
|
l.fmt.AddToken(FmtTypeDigit, nil)
|
|
}
|
|
goto st34
|
|
tr82:
|
|
//line lexer.rl:86
|
|
te = p
|
|
p--
|
|
{
|
|
l.fmt.AddToken(FmtTypeTime, data[ts:te])
|
|
}
|
|
goto st34
|
|
tr86:
|
|
//line lexer.rl:75
|
|
te = p
|
|
p--
|
|
{
|
|
}
|
|
goto st34
|
|
tr87:
|
|
//line lexer.rl:88
|
|
te = p + 1
|
|
{
|
|
l.fmt.IsExponential = true
|
|
}
|
|
goto st34
|
|
tr90:
|
|
//line lexer.rl:91
|
|
te = p + 1
|
|
{
|
|
l.fmt.AddToken(FmtTypeLiteral, data[ts+1:te])
|
|
}
|
|
goto st34
|
|
st34:
|
|
//line NONE:1
|
|
ts = 0
|
|
|
|
if p++; p == pe {
|
|
goto _test_eof34
|
|
}
|
|
st_case_34:
|
|
//line NONE:1
|
|
ts = p
|
|
|
|
//line lexer.go:400
|
|
switch data[p] {
|
|
case 34:
|
|
goto tr49
|
|
case 35:
|
|
goto tr50
|
|
case 36:
|
|
goto tr51
|
|
case 37:
|
|
goto tr52
|
|
case 44:
|
|
goto tr53
|
|
case 46:
|
|
goto tr54
|
|
case 47:
|
|
goto tr27
|
|
case 48:
|
|
goto tr55
|
|
case 58:
|
|
goto tr34
|
|
case 59:
|
|
goto tr57
|
|
case 63:
|
|
goto tr58
|
|
case 64:
|
|
goto tr59
|
|
case 65:
|
|
goto tr60
|
|
case 69:
|
|
goto st56
|
|
case 71:
|
|
goto tr62
|
|
case 91:
|
|
goto tr63
|
|
case 92:
|
|
goto st60
|
|
case 95:
|
|
goto tr65
|
|
case 100:
|
|
goto tr27
|
|
case 104:
|
|
goto tr34
|
|
case 109:
|
|
goto tr66
|
|
case 115:
|
|
goto tr67
|
|
case 121:
|
|
goto st62
|
|
}
|
|
if 49 <= data[p] && data[p] <= 57 {
|
|
goto tr56
|
|
}
|
|
goto tr48
|
|
tr49:
|
|
//line NONE:1
|
|
te = p + 1
|
|
|
|
//line lexer.rl:92
|
|
act = 20
|
|
goto st35
|
|
st35:
|
|
if p++; p == pe {
|
|
goto _test_eof35
|
|
}
|
|
st_case_35:
|
|
//line lexer.go:465
|
|
if data[p] == 34 {
|
|
goto tr2
|
|
}
|
|
goto st0
|
|
st0:
|
|
if p++; p == pe {
|
|
goto _test_eof0
|
|
}
|
|
st_case_0:
|
|
if data[p] == 34 {
|
|
goto tr2
|
|
}
|
|
goto st0
|
|
tr2:
|
|
//line NONE:1
|
|
te = p + 1
|
|
|
|
//line lexer.rl:93
|
|
act = 21
|
|
goto st36
|
|
st36:
|
|
if p++; p == pe {
|
|
goto _test_eof36
|
|
}
|
|
st_case_36:
|
|
//line lexer.go:491
|
|
if data[p] == 34 {
|
|
goto st0
|
|
}
|
|
goto tr70
|
|
tr50:
|
|
//line NONE:1
|
|
te = p + 1
|
|
|
|
//line lexer.rl:73
|
|
act = 3
|
|
goto st37
|
|
st37:
|
|
if p++; p == pe {
|
|
goto _test_eof37
|
|
}
|
|
st_case_37:
|
|
//line lexer.go:508
|
|
switch data[p] {
|
|
case 35:
|
|
goto st1
|
|
case 37:
|
|
goto st1
|
|
case 44:
|
|
goto st12
|
|
case 47:
|
|
goto st2
|
|
case 48:
|
|
goto st1
|
|
case 63:
|
|
goto st1
|
|
}
|
|
goto tr71
|
|
st1:
|
|
if p++; p == pe {
|
|
goto _test_eof1
|
|
}
|
|
st_case_1:
|
|
switch data[p] {
|
|
case 35:
|
|
goto st1
|
|
case 37:
|
|
goto st1
|
|
case 47:
|
|
goto st2
|
|
case 48:
|
|
goto st1
|
|
case 63:
|
|
goto st1
|
|
}
|
|
goto tr0
|
|
st2:
|
|
if p++; p == pe {
|
|
goto _test_eof2
|
|
}
|
|
st_case_2:
|
|
switch data[p] {
|
|
case 35:
|
|
goto tr5
|
|
case 37:
|
|
goto st8
|
|
case 48:
|
|
goto tr7
|
|
case 63:
|
|
goto tr5
|
|
}
|
|
if 49 <= data[p] && data[p] <= 57 {
|
|
goto tr8
|
|
}
|
|
goto tr0
|
|
tr5:
|
|
//line NONE:1
|
|
te = p + 1
|
|
|
|
goto st38
|
|
st38:
|
|
if p++; p == pe {
|
|
goto _test_eof38
|
|
}
|
|
st_case_38:
|
|
//line lexer.go:571
|
|
switch data[p] {
|
|
case 35:
|
|
goto tr5
|
|
case 37:
|
|
goto tr5
|
|
case 44:
|
|
goto tr5
|
|
case 46:
|
|
goto tr5
|
|
case 48:
|
|
goto tr5
|
|
case 63:
|
|
goto tr5
|
|
case 65:
|
|
goto st3
|
|
}
|
|
goto tr73
|
|
st3:
|
|
if p++; p == pe {
|
|
goto _test_eof3
|
|
}
|
|
st_case_3:
|
|
switch data[p] {
|
|
case 47:
|
|
goto st4
|
|
case 77:
|
|
goto st5
|
|
}
|
|
goto tr9
|
|
st4:
|
|
if p++; p == pe {
|
|
goto _test_eof4
|
|
}
|
|
st_case_4:
|
|
if data[p] == 80 {
|
|
goto tr12
|
|
}
|
|
goto tr9
|
|
tr12:
|
|
//line NONE:1
|
|
te = p + 1
|
|
|
|
goto st39
|
|
st39:
|
|
if p++; p == pe {
|
|
goto _test_eof39
|
|
}
|
|
st_case_39:
|
|
//line lexer.go:620
|
|
if data[p] == 65 {
|
|
goto st3
|
|
}
|
|
goto tr73
|
|
st5:
|
|
if p++; p == pe {
|
|
goto _test_eof5
|
|
}
|
|
st_case_5:
|
|
if data[p] == 47 {
|
|
goto st6
|
|
}
|
|
goto tr9
|
|
st6:
|
|
if p++; p == pe {
|
|
goto _test_eof6
|
|
}
|
|
st_case_6:
|
|
if data[p] == 80 {
|
|
goto st7
|
|
}
|
|
goto tr9
|
|
st7:
|
|
if p++; p == pe {
|
|
goto _test_eof7
|
|
}
|
|
st_case_7:
|
|
if data[p] == 77 {
|
|
goto tr12
|
|
}
|
|
goto tr9
|
|
st8:
|
|
if p++; p == pe {
|
|
goto _test_eof8
|
|
}
|
|
st_case_8:
|
|
switch data[p] {
|
|
case 35:
|
|
goto tr15
|
|
case 37:
|
|
goto st10
|
|
case 63:
|
|
goto tr15
|
|
}
|
|
if 48 <= data[p] && data[p] <= 57 {
|
|
goto tr17
|
|
}
|
|
goto tr0
|
|
tr15:
|
|
//line NONE:1
|
|
te = p + 1
|
|
|
|
goto st40
|
|
st40:
|
|
if p++; p == pe {
|
|
goto _test_eof40
|
|
}
|
|
st_case_40:
|
|
//line lexer.go:679
|
|
switch data[p] {
|
|
case 35:
|
|
goto tr5
|
|
case 37:
|
|
goto st9
|
|
case 44:
|
|
goto tr5
|
|
case 46:
|
|
goto tr5
|
|
case 48:
|
|
goto tr5
|
|
case 63:
|
|
goto tr5
|
|
case 65:
|
|
goto st3
|
|
}
|
|
goto tr73
|
|
st9:
|
|
if p++; p == pe {
|
|
goto _test_eof9
|
|
}
|
|
st_case_9:
|
|
switch data[p] {
|
|
case 35:
|
|
goto tr18
|
|
case 44:
|
|
goto tr18
|
|
case 46:
|
|
goto tr18
|
|
case 48:
|
|
goto tr18
|
|
case 63:
|
|
goto tr18
|
|
}
|
|
goto tr9
|
|
tr18:
|
|
//line NONE:1
|
|
te = p + 1
|
|
|
|
goto st41
|
|
st41:
|
|
if p++; p == pe {
|
|
goto _test_eof41
|
|
}
|
|
st_case_41:
|
|
//line lexer.go:725
|
|
switch data[p] {
|
|
case 35:
|
|
goto tr18
|
|
case 44:
|
|
goto tr18
|
|
case 46:
|
|
goto tr18
|
|
case 48:
|
|
goto tr18
|
|
case 63:
|
|
goto tr18
|
|
case 65:
|
|
goto st3
|
|
}
|
|
goto tr73
|
|
st10:
|
|
if p++; p == pe {
|
|
goto _test_eof10
|
|
}
|
|
st_case_10:
|
|
if data[p] == 37 {
|
|
goto st10
|
|
}
|
|
if 48 <= data[p] && data[p] <= 57 {
|
|
goto tr17
|
|
}
|
|
goto tr0
|
|
tr17:
|
|
//line NONE:1
|
|
te = p + 1
|
|
|
|
//line lexer.rl:83
|
|
act = 13
|
|
goto st42
|
|
st42:
|
|
if p++; p == pe {
|
|
goto _test_eof42
|
|
}
|
|
st_case_42:
|
|
//line lexer.go:765
|
|
switch data[p] {
|
|
case 35:
|
|
goto tr5
|
|
case 37:
|
|
goto st11
|
|
case 44:
|
|
goto tr5
|
|
case 46:
|
|
goto tr5
|
|
case 48:
|
|
goto tr77
|
|
case 63:
|
|
goto tr5
|
|
case 65:
|
|
goto st3
|
|
}
|
|
if 49 <= data[p] && data[p] <= 57 {
|
|
goto tr17
|
|
}
|
|
goto tr73
|
|
st11:
|
|
if p++; p == pe {
|
|
goto _test_eof11
|
|
}
|
|
st_case_11:
|
|
switch data[p] {
|
|
case 35:
|
|
goto tr18
|
|
case 37:
|
|
goto st10
|
|
case 44:
|
|
goto tr18
|
|
case 46:
|
|
goto tr18
|
|
case 63:
|
|
goto tr18
|
|
}
|
|
if 48 <= data[p] && data[p] <= 57 {
|
|
goto tr17
|
|
}
|
|
goto tr9
|
|
tr77:
|
|
//line NONE:1
|
|
te = p + 1
|
|
|
|
goto st43
|
|
st43:
|
|
if p++; p == pe {
|
|
goto _test_eof43
|
|
}
|
|
st_case_43:
|
|
//line lexer.go:817
|
|
switch data[p] {
|
|
case 35:
|
|
goto tr5
|
|
case 37:
|
|
goto tr77
|
|
case 44:
|
|
goto tr5
|
|
case 46:
|
|
goto tr5
|
|
case 48:
|
|
goto tr77
|
|
case 63:
|
|
goto tr5
|
|
case 65:
|
|
goto st3
|
|
}
|
|
if 49 <= data[p] && data[p] <= 57 {
|
|
goto tr17
|
|
}
|
|
goto tr73
|
|
tr7:
|
|
//line NONE:1
|
|
te = p + 1
|
|
|
|
goto st44
|
|
st44:
|
|
if p++; p == pe {
|
|
goto _test_eof44
|
|
}
|
|
st_case_44:
|
|
//line lexer.go:848
|
|
switch data[p] {
|
|
case 35:
|
|
goto tr5
|
|
case 37:
|
|
goto tr77
|
|
case 44:
|
|
goto tr5
|
|
case 46:
|
|
goto tr5
|
|
case 48:
|
|
goto tr7
|
|
case 63:
|
|
goto tr5
|
|
case 65:
|
|
goto st3
|
|
}
|
|
if 49 <= data[p] && data[p] <= 57 {
|
|
goto tr8
|
|
}
|
|
goto tr73
|
|
tr8:
|
|
//line NONE:1
|
|
te = p + 1
|
|
|
|
goto st45
|
|
st45:
|
|
if p++; p == pe {
|
|
goto _test_eof45
|
|
}
|
|
st_case_45:
|
|
//line lexer.go:879
|
|
switch data[p] {
|
|
case 35:
|
|
goto tr5
|
|
case 37:
|
|
goto tr17
|
|
case 44:
|
|
goto tr5
|
|
case 46:
|
|
goto tr5
|
|
case 48:
|
|
goto tr7
|
|
case 63:
|
|
goto tr5
|
|
case 65:
|
|
goto st3
|
|
}
|
|
if 49 <= data[p] && data[p] <= 57 {
|
|
goto tr8
|
|
}
|
|
goto tr73
|
|
st12:
|
|
if p++; p == pe {
|
|
goto _test_eof12
|
|
}
|
|
st_case_12:
|
|
if data[p] == 35 {
|
|
goto tr20
|
|
}
|
|
goto tr19
|
|
tr52:
|
|
//line NONE:1
|
|
te = p + 1
|
|
|
|
//line lexer.rl:78
|
|
act = 8
|
|
goto st46
|
|
st46:
|
|
if p++; p == pe {
|
|
goto _test_eof46
|
|
}
|
|
st_case_46:
|
|
//line lexer.go:921
|
|
switch data[p] {
|
|
case 35:
|
|
goto st13
|
|
case 37:
|
|
goto st14
|
|
case 48:
|
|
goto st16
|
|
case 63:
|
|
goto st13
|
|
}
|
|
if 49 <= data[p] && data[p] <= 57 {
|
|
goto st15
|
|
}
|
|
goto tr78
|
|
st13:
|
|
if p++; p == pe {
|
|
goto _test_eof13
|
|
}
|
|
st_case_13:
|
|
switch data[p] {
|
|
case 35:
|
|
goto st13
|
|
case 47:
|
|
goto st2
|
|
case 48:
|
|
goto st13
|
|
case 63:
|
|
goto st13
|
|
}
|
|
goto tr21
|
|
st14:
|
|
if p++; p == pe {
|
|
goto _test_eof14
|
|
}
|
|
st_case_14:
|
|
if data[p] == 37 {
|
|
goto st14
|
|
}
|
|
if 48 <= data[p] && data[p] <= 57 {
|
|
goto st15
|
|
}
|
|
goto tr0
|
|
st15:
|
|
if p++; p == pe {
|
|
goto _test_eof15
|
|
}
|
|
st_case_15:
|
|
switch data[p] {
|
|
case 37:
|
|
goto st14
|
|
case 47:
|
|
goto st2
|
|
}
|
|
if 48 <= data[p] && data[p] <= 57 {
|
|
goto st15
|
|
}
|
|
goto tr0
|
|
st16:
|
|
if p++; p == pe {
|
|
goto _test_eof16
|
|
}
|
|
st_case_16:
|
|
switch data[p] {
|
|
case 35:
|
|
goto st13
|
|
case 37:
|
|
goto st14
|
|
case 47:
|
|
goto st2
|
|
case 48:
|
|
goto st16
|
|
case 63:
|
|
goto st13
|
|
}
|
|
if 49 <= data[p] && data[p] <= 57 {
|
|
goto st15
|
|
}
|
|
goto tr21
|
|
tr27:
|
|
//line NONE:1
|
|
te = p + 1
|
|
|
|
goto st47
|
|
st47:
|
|
if p++; p == pe {
|
|
goto _test_eof47
|
|
}
|
|
st_case_47:
|
|
//line lexer.go:1010
|
|
switch data[p] {
|
|
case 47:
|
|
goto tr27
|
|
case 100:
|
|
goto tr27
|
|
case 109:
|
|
goto tr27
|
|
case 121:
|
|
goto st17
|
|
}
|
|
goto tr79
|
|
st17:
|
|
if p++; p == pe {
|
|
goto _test_eof17
|
|
}
|
|
st_case_17:
|
|
if data[p] == 121 {
|
|
goto tr27
|
|
}
|
|
goto tr26
|
|
tr55:
|
|
//line NONE:1
|
|
te = p + 1
|
|
|
|
//line lexer.rl:72
|
|
act = 2
|
|
goto st48
|
|
st48:
|
|
if p++; p == pe {
|
|
goto _test_eof48
|
|
}
|
|
st_case_48:
|
|
//line lexer.go:1043
|
|
switch data[p] {
|
|
case 35:
|
|
goto st1
|
|
case 37:
|
|
goto st18
|
|
case 47:
|
|
goto st2
|
|
case 48:
|
|
goto st19
|
|
case 63:
|
|
goto st1
|
|
}
|
|
if 49 <= data[p] && data[p] <= 57 {
|
|
goto st20
|
|
}
|
|
goto tr81
|
|
st18:
|
|
if p++; p == pe {
|
|
goto _test_eof18
|
|
}
|
|
st_case_18:
|
|
switch data[p] {
|
|
case 35:
|
|
goto st1
|
|
case 37:
|
|
goto st18
|
|
case 47:
|
|
goto st2
|
|
case 48:
|
|
goto st18
|
|
case 63:
|
|
goto st1
|
|
}
|
|
if 49 <= data[p] && data[p] <= 57 {
|
|
goto st15
|
|
}
|
|
goto tr28
|
|
st19:
|
|
if p++; p == pe {
|
|
goto _test_eof19
|
|
}
|
|
st_case_19:
|
|
switch data[p] {
|
|
case 35:
|
|
goto st1
|
|
case 37:
|
|
goto st18
|
|
case 47:
|
|
goto st2
|
|
case 48:
|
|
goto st19
|
|
case 63:
|
|
goto st1
|
|
}
|
|
if 49 <= data[p] && data[p] <= 57 {
|
|
goto st20
|
|
}
|
|
goto tr28
|
|
st20:
|
|
if p++; p == pe {
|
|
goto _test_eof20
|
|
}
|
|
st_case_20:
|
|
switch data[p] {
|
|
case 37:
|
|
goto st15
|
|
case 47:
|
|
goto st2
|
|
}
|
|
if 48 <= data[p] && data[p] <= 57 {
|
|
goto st20
|
|
}
|
|
goto tr0
|
|
tr56:
|
|
//line NONE:1
|
|
te = p + 1
|
|
|
|
//line lexer.rl:92
|
|
act = 20
|
|
goto st49
|
|
st49:
|
|
if p++; p == pe {
|
|
goto _test_eof49
|
|
}
|
|
st_case_49:
|
|
//line lexer.go:1129
|
|
switch data[p] {
|
|
case 37:
|
|
goto st15
|
|
case 47:
|
|
goto st2
|
|
}
|
|
if 48 <= data[p] && data[p] <= 57 {
|
|
goto st20
|
|
}
|
|
goto tr69
|
|
tr34:
|
|
//line NONE:1
|
|
te = p + 1
|
|
|
|
//line lexer.rl:86
|
|
act = 15
|
|
goto st50
|
|
st50:
|
|
if p++; p == pe {
|
|
goto _test_eof50
|
|
}
|
|
st_case_50:
|
|
//line lexer.go:1152
|
|
switch data[p] {
|
|
case 58:
|
|
goto tr34
|
|
case 65:
|
|
goto st21
|
|
case 104:
|
|
goto tr34
|
|
case 109:
|
|
goto tr34
|
|
case 115:
|
|
goto tr67
|
|
}
|
|
goto tr82
|
|
st21:
|
|
if p++; p == pe {
|
|
goto _test_eof21
|
|
}
|
|
st_case_21:
|
|
switch data[p] {
|
|
case 47:
|
|
goto st22
|
|
case 77:
|
|
goto st23
|
|
}
|
|
goto tr0
|
|
st22:
|
|
if p++; p == pe {
|
|
goto _test_eof22
|
|
}
|
|
st_case_22:
|
|
if data[p] == 80 {
|
|
goto tr34
|
|
}
|
|
goto tr0
|
|
st23:
|
|
if p++; p == pe {
|
|
goto _test_eof23
|
|
}
|
|
st_case_23:
|
|
if data[p] == 47 {
|
|
goto st24
|
|
}
|
|
goto tr0
|
|
st24:
|
|
if p++; p == pe {
|
|
goto _test_eof24
|
|
}
|
|
st_case_24:
|
|
if data[p] == 80 {
|
|
goto st25
|
|
}
|
|
goto tr0
|
|
st25:
|
|
if p++; p == pe {
|
|
goto _test_eof25
|
|
}
|
|
st_case_25:
|
|
if data[p] == 77 {
|
|
goto tr34
|
|
}
|
|
goto tr0
|
|
tr67:
|
|
//line NONE:1
|
|
te = p + 1
|
|
|
|
//line lexer.rl:86
|
|
act = 15
|
|
goto st51
|
|
st51:
|
|
if p++; p == pe {
|
|
goto _test_eof51
|
|
}
|
|
st_case_51:
|
|
//line lexer.go:1226
|
|
switch data[p] {
|
|
case 46:
|
|
goto st26
|
|
case 58:
|
|
goto tr34
|
|
case 65:
|
|
goto st21
|
|
case 104:
|
|
goto tr34
|
|
case 109:
|
|
goto tr34
|
|
case 115:
|
|
goto tr67
|
|
}
|
|
goto tr82
|
|
st26:
|
|
if p++; p == pe {
|
|
goto _test_eof26
|
|
}
|
|
st_case_26:
|
|
if data[p] == 48 {
|
|
goto tr38
|
|
}
|
|
goto tr37
|
|
tr38:
|
|
//line NONE:1
|
|
te = p + 1
|
|
|
|
//line lexer.rl:86
|
|
act = 15
|
|
goto st52
|
|
st52:
|
|
if p++; p == pe {
|
|
goto _test_eof52
|
|
}
|
|
st_case_52:
|
|
//line lexer.go:1263
|
|
switch data[p] {
|
|
case 48:
|
|
goto tr85
|
|
case 58:
|
|
goto tr34
|
|
case 65:
|
|
goto st21
|
|
case 104:
|
|
goto tr34
|
|
case 109:
|
|
goto tr34
|
|
case 115:
|
|
goto tr67
|
|
}
|
|
goto tr82
|
|
tr85:
|
|
//line NONE:1
|
|
te = p + 1
|
|
|
|
//line lexer.rl:86
|
|
act = 15
|
|
goto st53
|
|
st53:
|
|
if p++; p == pe {
|
|
goto _test_eof53
|
|
}
|
|
st_case_53:
|
|
//line lexer.go:1291
|
|
switch data[p] {
|
|
case 48:
|
|
goto tr34
|
|
case 58:
|
|
goto tr34
|
|
case 65:
|
|
goto st21
|
|
case 104:
|
|
goto tr34
|
|
case 109:
|
|
goto tr34
|
|
case 115:
|
|
goto tr67
|
|
}
|
|
goto tr82
|
|
tr58:
|
|
//line NONE:1
|
|
te = p + 1
|
|
|
|
//line lexer.rl:75
|
|
act = 5
|
|
goto st54
|
|
st54:
|
|
if p++; p == pe {
|
|
goto _test_eof54
|
|
}
|
|
st_case_54:
|
|
//line lexer.go:1319
|
|
switch data[p] {
|
|
case 35:
|
|
goto st1
|
|
case 37:
|
|
goto st1
|
|
case 47:
|
|
goto st2
|
|
case 48:
|
|
goto st1
|
|
case 63:
|
|
goto st1
|
|
}
|
|
goto tr86
|
|
tr60:
|
|
//line NONE:1
|
|
te = p + 1
|
|
|
|
//line lexer.rl:92
|
|
act = 20
|
|
goto st55
|
|
st55:
|
|
if p++; p == pe {
|
|
goto _test_eof55
|
|
}
|
|
st_case_55:
|
|
//line lexer.go:1345
|
|
switch data[p] {
|
|
case 47:
|
|
goto st22
|
|
case 77:
|
|
goto st23
|
|
}
|
|
goto tr69
|
|
st56:
|
|
if p++; p == pe {
|
|
goto _test_eof56
|
|
}
|
|
st_case_56:
|
|
switch data[p] {
|
|
case 43:
|
|
goto tr87
|
|
case 45:
|
|
goto tr87
|
|
}
|
|
goto tr69
|
|
tr62:
|
|
//line NONE:1
|
|
te = p + 1
|
|
|
|
goto st57
|
|
st57:
|
|
if p++; p == pe {
|
|
goto _test_eof57
|
|
}
|
|
st_case_57:
|
|
//line lexer.go:1375
|
|
if data[p] == 101 {
|
|
goto st27
|
|
}
|
|
goto tr69
|
|
st27:
|
|
if p++; p == pe {
|
|
goto _test_eof27
|
|
}
|
|
st_case_27:
|
|
if data[p] == 110 {
|
|
goto st28
|
|
}
|
|
goto tr39
|
|
st28:
|
|
if p++; p == pe {
|
|
goto _test_eof28
|
|
}
|
|
st_case_28:
|
|
if data[p] == 101 {
|
|
goto st29
|
|
}
|
|
goto tr39
|
|
st29:
|
|
if p++; p == pe {
|
|
goto _test_eof29
|
|
}
|
|
st_case_29:
|
|
if data[p] == 114 {
|
|
goto st30
|
|
}
|
|
goto tr39
|
|
st30:
|
|
if p++; p == pe {
|
|
goto _test_eof30
|
|
}
|
|
st_case_30:
|
|
if data[p] == 97 {
|
|
goto st31
|
|
}
|
|
goto tr39
|
|
st31:
|
|
if p++; p == pe {
|
|
goto _test_eof31
|
|
}
|
|
st_case_31:
|
|
if data[p] == 108 {
|
|
goto tr44
|
|
}
|
|
goto tr39
|
|
tr63:
|
|
//line NONE:1
|
|
te = p + 1
|
|
|
|
//line lexer.rl:92
|
|
act = 20
|
|
goto st58
|
|
st58:
|
|
if p++; p == pe {
|
|
goto _test_eof58
|
|
}
|
|
st_case_58:
|
|
//line lexer.go:1437
|
|
switch data[p] {
|
|
case 104:
|
|
goto st33
|
|
case 109:
|
|
goto st33
|
|
case 115:
|
|
goto st33
|
|
}
|
|
goto st32
|
|
st32:
|
|
if p++; p == pe {
|
|
goto _test_eof32
|
|
}
|
|
st_case_32:
|
|
if data[p] == 93 {
|
|
goto tr46
|
|
}
|
|
goto st32
|
|
tr46:
|
|
//line NONE:1
|
|
te = p + 1
|
|
|
|
//line lexer.rl:89
|
|
act = 18
|
|
goto st59
|
|
tr47:
|
|
//line NONE:1
|
|
te = p + 1
|
|
|
|
//line lexer.rl:87
|
|
act = 16
|
|
goto st59
|
|
st59:
|
|
if p++; p == pe {
|
|
goto _test_eof59
|
|
}
|
|
st_case_59:
|
|
//line lexer.go:1475
|
|
if data[p] == 93 {
|
|
goto tr46
|
|
}
|
|
goto st32
|
|
st33:
|
|
if p++; p == pe {
|
|
goto _test_eof33
|
|
}
|
|
st_case_33:
|
|
if data[p] == 93 {
|
|
goto tr47
|
|
}
|
|
goto st32
|
|
st60:
|
|
if p++; p == pe {
|
|
goto _test_eof60
|
|
}
|
|
st_case_60:
|
|
goto tr90
|
|
tr66:
|
|
//line NONE:1
|
|
te = p + 1
|
|
|
|
//line lexer.rl:85
|
|
act = 14
|
|
goto st61
|
|
st61:
|
|
if p++; p == pe {
|
|
goto _test_eof61
|
|
}
|
|
st_case_61:
|
|
//line lexer.go:1507
|
|
switch data[p] {
|
|
case 47:
|
|
goto tr27
|
|
case 58:
|
|
goto tr34
|
|
case 65:
|
|
goto st21
|
|
case 100:
|
|
goto tr27
|
|
case 104:
|
|
goto tr34
|
|
case 109:
|
|
goto tr66
|
|
case 115:
|
|
goto tr67
|
|
case 121:
|
|
goto st17
|
|
}
|
|
goto tr79
|
|
st62:
|
|
if p++; p == pe {
|
|
goto _test_eof62
|
|
}
|
|
st_case_62:
|
|
if data[p] == 121 {
|
|
goto tr27
|
|
}
|
|
goto tr69
|
|
st_out:
|
|
_test_eof34:
|
|
cs = 34
|
|
goto _test_eof
|
|
_test_eof35:
|
|
cs = 35
|
|
goto _test_eof
|
|
_test_eof0:
|
|
cs = 0
|
|
goto _test_eof
|
|
_test_eof36:
|
|
cs = 36
|
|
goto _test_eof
|
|
_test_eof37:
|
|
cs = 37
|
|
goto _test_eof
|
|
_test_eof1:
|
|
cs = 1
|
|
goto _test_eof
|
|
_test_eof2:
|
|
cs = 2
|
|
goto _test_eof
|
|
_test_eof38:
|
|
cs = 38
|
|
goto _test_eof
|
|
_test_eof3:
|
|
cs = 3
|
|
goto _test_eof
|
|
_test_eof4:
|
|
cs = 4
|
|
goto _test_eof
|
|
_test_eof39:
|
|
cs = 39
|
|
goto _test_eof
|
|
_test_eof5:
|
|
cs = 5
|
|
goto _test_eof
|
|
_test_eof6:
|
|
cs = 6
|
|
goto _test_eof
|
|
_test_eof7:
|
|
cs = 7
|
|
goto _test_eof
|
|
_test_eof8:
|
|
cs = 8
|
|
goto _test_eof
|
|
_test_eof40:
|
|
cs = 40
|
|
goto _test_eof
|
|
_test_eof9:
|
|
cs = 9
|
|
goto _test_eof
|
|
_test_eof41:
|
|
cs = 41
|
|
goto _test_eof
|
|
_test_eof10:
|
|
cs = 10
|
|
goto _test_eof
|
|
_test_eof42:
|
|
cs = 42
|
|
goto _test_eof
|
|
_test_eof11:
|
|
cs = 11
|
|
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_eof12:
|
|
cs = 12
|
|
goto _test_eof
|
|
_test_eof46:
|
|
cs = 46
|
|
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_eof47:
|
|
cs = 47
|
|
goto _test_eof
|
|
_test_eof17:
|
|
cs = 17
|
|
goto _test_eof
|
|
_test_eof48:
|
|
cs = 48
|
|
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_eof49:
|
|
cs = 49
|
|
goto _test_eof
|
|
_test_eof50:
|
|
cs = 50
|
|
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_eof25:
|
|
cs = 25
|
|
goto _test_eof
|
|
_test_eof51:
|
|
cs = 51
|
|
goto _test_eof
|
|
_test_eof26:
|
|
cs = 26
|
|
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_eof55:
|
|
cs = 55
|
|
goto _test_eof
|
|
_test_eof56:
|
|
cs = 56
|
|
goto _test_eof
|
|
_test_eof57:
|
|
cs = 57
|
|
goto _test_eof
|
|
_test_eof27:
|
|
cs = 27
|
|
goto _test_eof
|
|
_test_eof28:
|
|
cs = 28
|
|
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_eof58:
|
|
cs = 58
|
|
goto _test_eof
|
|
_test_eof32:
|
|
cs = 32
|
|
goto _test_eof
|
|
_test_eof59:
|
|
cs = 59
|
|
goto _test_eof
|
|
_test_eof33:
|
|
cs = 33
|
|
goto _test_eof
|
|
_test_eof60:
|
|
cs = 60
|
|
goto _test_eof
|
|
_test_eof61:
|
|
cs = 61
|
|
goto _test_eof
|
|
_test_eof62:
|
|
cs = 62
|
|
goto _test_eof
|
|
|
|
_test_eof:
|
|
{
|
|
}
|
|
if p == eof {
|
|
switch cs {
|
|
case 35:
|
|
goto tr69
|
|
case 0:
|
|
goto tr0
|
|
case 36:
|
|
goto tr70
|
|
case 37:
|
|
goto tr71
|
|
case 1:
|
|
goto tr0
|
|
case 2:
|
|
goto tr0
|
|
case 38:
|
|
goto tr73
|
|
case 3:
|
|
goto tr9
|
|
case 4:
|
|
goto tr9
|
|
case 39:
|
|
goto tr73
|
|
case 5:
|
|
goto tr9
|
|
case 6:
|
|
goto tr9
|
|
case 7:
|
|
goto tr9
|
|
case 8:
|
|
goto tr0
|
|
case 40:
|
|
goto tr73
|
|
case 9:
|
|
goto tr9
|
|
case 41:
|
|
goto tr73
|
|
case 10:
|
|
goto tr0
|
|
case 42:
|
|
goto tr73
|
|
case 11:
|
|
goto tr9
|
|
case 43:
|
|
goto tr73
|
|
case 44:
|
|
goto tr73
|
|
case 45:
|
|
goto tr73
|
|
case 12:
|
|
goto tr19
|
|
case 46:
|
|
goto tr78
|
|
case 13:
|
|
goto tr21
|
|
case 14:
|
|
goto tr0
|
|
case 15:
|
|
goto tr0
|
|
case 16:
|
|
goto tr21
|
|
case 47:
|
|
goto tr79
|
|
case 17:
|
|
goto tr26
|
|
case 48:
|
|
goto tr81
|
|
case 18:
|
|
goto tr28
|
|
case 19:
|
|
goto tr28
|
|
case 20:
|
|
goto tr0
|
|
case 49:
|
|
goto tr69
|
|
case 50:
|
|
goto tr82
|
|
case 21:
|
|
goto tr0
|
|
case 22:
|
|
goto tr0
|
|
case 23:
|
|
goto tr0
|
|
case 24:
|
|
goto tr0
|
|
case 25:
|
|
goto tr0
|
|
case 51:
|
|
goto tr82
|
|
case 26:
|
|
goto tr37
|
|
case 52:
|
|
goto tr82
|
|
case 53:
|
|
goto tr82
|
|
case 54:
|
|
goto tr86
|
|
case 55:
|
|
goto tr69
|
|
case 56:
|
|
goto tr69
|
|
case 57:
|
|
goto tr69
|
|
case 27:
|
|
goto tr39
|
|
case 28:
|
|
goto tr39
|
|
case 29:
|
|
goto tr39
|
|
case 30:
|
|
goto tr39
|
|
case 31:
|
|
goto tr39
|
|
case 58:
|
|
goto tr69
|
|
case 32:
|
|
goto tr0
|
|
case 59:
|
|
goto tr0
|
|
case 33:
|
|
goto tr39
|
|
case 60:
|
|
goto tr69
|
|
case 61:
|
|
goto tr79
|
|
case 62:
|
|
goto tr69
|
|
}
|
|
}
|
|
|
|
}
|
|
|
|
//line lexer.rl:134
|
|
if ts > 0 {
|
|
// currently parsing a token, so shift it to the
|
|
// beginning of the buffer
|
|
copy(data[0:], data[ts:])
|
|
}
|
|
}
|
|
_ = eof
|
|
if cs == format_error {
|
|
gooxml.Log("format parse error")
|
|
}
|
|
}
|