mirror of
https://github.com/kubernetes-sigs/descheduler.git
synced 2026-01-28 06:29:29 +01:00
6
vendor/github.com/google/cel-go/parser/errors.go
generated
vendored
6
vendor/github.com/google/cel-go/parser/errors.go
generated
vendored
@@ -15,8 +15,6 @@
|
||||
package parser
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"github.com/google/cel-go/common"
|
||||
)
|
||||
|
||||
@@ -31,11 +29,11 @@ func (e *parseErrors) errorCount() int {
|
||||
}
|
||||
|
||||
func (e *parseErrors) internalError(message string) {
|
||||
e.errs.ReportErrorAtID(0, common.NoLocation, message)
|
||||
e.errs.ReportErrorAtID(0, common.NoLocation, "%s", message)
|
||||
}
|
||||
|
||||
func (e *parseErrors) syntaxError(l common.Location, message string) {
|
||||
e.errs.ReportErrorAtID(0, l, fmt.Sprintf("Syntax error: %s", message))
|
||||
e.errs.ReportErrorAtID(0, l, "Syntax error: %s", message)
|
||||
}
|
||||
|
||||
func (e *parseErrors) reportErrorAtID(id int64, l common.Location, message string, args ...any) {
|
||||
|
||||
13
vendor/github.com/google/cel-go/parser/gen/CEL.g4
generated
vendored
13
vendor/github.com/google/cel-go/parser/gen/CEL.g4
generated
vendored
@@ -52,13 +52,14 @@ unary
|
||||
|
||||
member
|
||||
: primary # PrimaryExpr
|
||||
| member op='.' (opt='?')? id=IDENTIFIER # Select
|
||||
| member op='.' (opt='?')? id=escapeIdent # Select
|
||||
| member op='.' id=IDENTIFIER open='(' args=exprList? ')' # MemberCall
|
||||
| member op='[' (opt='?')? index=expr ']' # Index
|
||||
;
|
||||
|
||||
primary
|
||||
: leadingDot='.'? id=IDENTIFIER (op='(' args=exprList? ')')? # IdentOrGlobalCall
|
||||
: leadingDot='.'? id=IDENTIFIER # Ident
|
||||
| leadingDot='.'? id=IDENTIFIER (op='(' args=exprList? ')') # GlobalCall
|
||||
| '(' e=expr ')' # Nested
|
||||
| op='[' elems=listInit? ','? ']' # CreateList
|
||||
| op='{' entries=mapInitializerList? ','? '}' # CreateStruct
|
||||
@@ -80,13 +81,18 @@ fieldInitializerList
|
||||
;
|
||||
|
||||
optField
|
||||
: (opt='?')? IDENTIFIER
|
||||
: (opt='?')? escapeIdent
|
||||
;
|
||||
|
||||
mapInitializerList
|
||||
: keys+=optExpr cols+=':' values+=expr (',' keys+=optExpr cols+=':' values+=expr)*
|
||||
;
|
||||
|
||||
escapeIdent
|
||||
: id=IDENTIFIER # SimpleIdentifier
|
||||
| id=ESC_IDENTIFIER # EscapedIdentifier
|
||||
;
|
||||
|
||||
optExpr
|
||||
: (opt='?')? e=expr
|
||||
;
|
||||
@@ -198,3 +204,4 @@ STRING
|
||||
BYTES : ('b' | 'B') STRING;
|
||||
|
||||
IDENTIFIER : (LETTER | '_') ( LETTER | DIGIT | '_')*;
|
||||
ESC_IDENTIFIER : '`' (LETTER | DIGIT | '_' | '.' | '-' | '/' | ' ')+ '`';
|
||||
5
vendor/github.com/google/cel-go/parser/gen/CEL.interp
generated
vendored
5
vendor/github.com/google/cel-go/parser/gen/CEL.interp
generated
vendored
File diff suppressed because one or more lines are too long
1
vendor/github.com/google/cel-go/parser/gen/CEL.tokens
generated
vendored
1
vendor/github.com/google/cel-go/parser/gen/CEL.tokens
generated
vendored
@@ -34,6 +34,7 @@ NUM_UINT=33
|
||||
STRING=34
|
||||
BYTES=35
|
||||
IDENTIFIER=36
|
||||
ESC_IDENTIFIER=37
|
||||
'=='=1
|
||||
'!='=2
|
||||
'in'=3
|
||||
|
||||
5
vendor/github.com/google/cel-go/parser/gen/CELLexer.interp
generated
vendored
5
vendor/github.com/google/cel-go/parser/gen/CELLexer.interp
generated
vendored
File diff suppressed because one or more lines are too long
1
vendor/github.com/google/cel-go/parser/gen/CELLexer.tokens
generated
vendored
1
vendor/github.com/google/cel-go/parser/gen/CELLexer.tokens
generated
vendored
@@ -34,6 +34,7 @@ NUM_UINT=33
|
||||
STRING=34
|
||||
BYTES=35
|
||||
IDENTIFIER=36
|
||||
ESC_IDENTIFIER=37
|
||||
'=='=1
|
||||
'!='=2
|
||||
'in'=3
|
||||
|
||||
28
vendor/github.com/google/cel-go/parser/gen/cel_base_listener.go
generated
vendored
28
vendor/github.com/google/cel-go/parser/gen/cel_base_listener.go
generated
vendored
@@ -1,4 +1,4 @@
|
||||
// Code generated from /usr/local/google/home/tswadell/go/src/github.com/google/cel-go/parser/gen/CEL.g4 by ANTLR 4.13.1. DO NOT EDIT.
|
||||
// Code generated from /usr/local/google/home/jdtatum/github/cel-go/parser/gen/CEL.g4 by ANTLR 4.13.1. DO NOT EDIT.
|
||||
|
||||
package gen // CEL
|
||||
import "github.com/antlr4-go/antlr/v4"
|
||||
@@ -98,11 +98,17 @@ func (s *BaseCELListener) EnterIndex(ctx *IndexContext) {}
|
||||
// ExitIndex is called when production Index is exited.
|
||||
func (s *BaseCELListener) ExitIndex(ctx *IndexContext) {}
|
||||
|
||||
// EnterIdentOrGlobalCall is called when production IdentOrGlobalCall is entered.
|
||||
func (s *BaseCELListener) EnterIdentOrGlobalCall(ctx *IdentOrGlobalCallContext) {}
|
||||
// EnterIdent is called when production Ident is entered.
|
||||
func (s *BaseCELListener) EnterIdent(ctx *IdentContext) {}
|
||||
|
||||
// ExitIdentOrGlobalCall is called when production IdentOrGlobalCall is exited.
|
||||
func (s *BaseCELListener) ExitIdentOrGlobalCall(ctx *IdentOrGlobalCallContext) {}
|
||||
// ExitIdent is called when production Ident is exited.
|
||||
func (s *BaseCELListener) ExitIdent(ctx *IdentContext) {}
|
||||
|
||||
// EnterGlobalCall is called when production GlobalCall is entered.
|
||||
func (s *BaseCELListener) EnterGlobalCall(ctx *GlobalCallContext) {}
|
||||
|
||||
// ExitGlobalCall is called when production GlobalCall is exited.
|
||||
func (s *BaseCELListener) ExitGlobalCall(ctx *GlobalCallContext) {}
|
||||
|
||||
// EnterNested is called when production Nested is entered.
|
||||
func (s *BaseCELListener) EnterNested(ctx *NestedContext) {}
|
||||
@@ -164,6 +170,18 @@ func (s *BaseCELListener) EnterMapInitializerList(ctx *MapInitializerListContext
|
||||
// ExitMapInitializerList is called when production mapInitializerList is exited.
|
||||
func (s *BaseCELListener) ExitMapInitializerList(ctx *MapInitializerListContext) {}
|
||||
|
||||
// EnterSimpleIdentifier is called when production SimpleIdentifier is entered.
|
||||
func (s *BaseCELListener) EnterSimpleIdentifier(ctx *SimpleIdentifierContext) {}
|
||||
|
||||
// ExitSimpleIdentifier is called when production SimpleIdentifier is exited.
|
||||
func (s *BaseCELListener) ExitSimpleIdentifier(ctx *SimpleIdentifierContext) {}
|
||||
|
||||
// EnterEscapedIdentifier is called when production EscapedIdentifier is entered.
|
||||
func (s *BaseCELListener) EnterEscapedIdentifier(ctx *EscapedIdentifierContext) {}
|
||||
|
||||
// ExitEscapedIdentifier is called when production EscapedIdentifier is exited.
|
||||
func (s *BaseCELListener) ExitEscapedIdentifier(ctx *EscapedIdentifierContext) {}
|
||||
|
||||
// EnterOptExpr is called when production optExpr is entered.
|
||||
func (s *BaseCELListener) EnterOptExpr(ctx *OptExprContext) {}
|
||||
|
||||
|
||||
17
vendor/github.com/google/cel-go/parser/gen/cel_base_visitor.go
generated
vendored
17
vendor/github.com/google/cel-go/parser/gen/cel_base_visitor.go
generated
vendored
@@ -1,9 +1,8 @@
|
||||
// Code generated from /usr/local/google/home/tswadell/go/src/github.com/google/cel-go/parser/gen/CEL.g4 by ANTLR 4.13.1. DO NOT EDIT.
|
||||
// Code generated from /usr/local/google/home/jdtatum/github/cel-go/parser/gen/CEL.g4 by ANTLR 4.13.1. DO NOT EDIT.
|
||||
|
||||
package gen // CEL
|
||||
import "github.com/antlr4-go/antlr/v4"
|
||||
|
||||
|
||||
type BaseCELVisitor struct {
|
||||
*antlr.BaseParseTreeVisitor
|
||||
}
|
||||
@@ -60,7 +59,11 @@ func (v *BaseCELVisitor) VisitIndex(ctx *IndexContext) interface{} {
|
||||
return v.VisitChildren(ctx)
|
||||
}
|
||||
|
||||
func (v *BaseCELVisitor) VisitIdentOrGlobalCall(ctx *IdentOrGlobalCallContext) interface{} {
|
||||
func (v *BaseCELVisitor) VisitIdent(ctx *IdentContext) interface{} {
|
||||
return v.VisitChildren(ctx)
|
||||
}
|
||||
|
||||
func (v *BaseCELVisitor) VisitGlobalCall(ctx *GlobalCallContext) interface{} {
|
||||
return v.VisitChildren(ctx)
|
||||
}
|
||||
|
||||
@@ -104,6 +107,14 @@ func (v *BaseCELVisitor) VisitMapInitializerList(ctx *MapInitializerListContext)
|
||||
return v.VisitChildren(ctx)
|
||||
}
|
||||
|
||||
func (v *BaseCELVisitor) VisitSimpleIdentifier(ctx *SimpleIdentifierContext) interface{} {
|
||||
return v.VisitChildren(ctx)
|
||||
}
|
||||
|
||||
func (v *BaseCELVisitor) VisitEscapedIdentifier(ctx *EscapedIdentifierContext) interface{} {
|
||||
return v.VisitChildren(ctx)
|
||||
}
|
||||
|
||||
func (v *BaseCELVisitor) VisitOptExpr(ctx *OptExprContext) interface{} {
|
||||
return v.VisitChildren(ctx)
|
||||
}
|
||||
|
||||
595
vendor/github.com/google/cel-go/parser/gen/cel_lexer.go
generated
vendored
595
vendor/github.com/google/cel-go/parser/gen/cel_lexer.go
generated
vendored
@@ -1,278 +1,285 @@
|
||||
// Code generated from /usr/local/google/home/tswadell/go/src/github.com/google/cel-go/parser/gen/CEL.g4 by ANTLR 4.13.1. DO NOT EDIT.
|
||||
// Code generated from /usr/local/google/home/jdtatum/github/cel-go/parser/gen/CEL.g4 by ANTLR 4.13.1. DO NOT EDIT.
|
||||
|
||||
package gen
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"sync"
|
||||
"unicode"
|
||||
"github.com/antlr4-go/antlr/v4"
|
||||
"sync"
|
||||
"unicode"
|
||||
)
|
||||
|
||||
// Suppress unused import error
|
||||
var _ = fmt.Printf
|
||||
var _ = sync.Once{}
|
||||
var _ = unicode.IsLetter
|
||||
|
||||
|
||||
type CELLexer struct {
|
||||
*antlr.BaseLexer
|
||||
channelNames []string
|
||||
modeNames []string
|
||||
modeNames []string
|
||||
// TODO: EOF string
|
||||
}
|
||||
|
||||
var CELLexerLexerStaticData struct {
|
||||
once sync.Once
|
||||
serializedATN []int32
|
||||
ChannelNames []string
|
||||
ModeNames []string
|
||||
LiteralNames []string
|
||||
SymbolicNames []string
|
||||
RuleNames []string
|
||||
PredictionContextCache *antlr.PredictionContextCache
|
||||
atn *antlr.ATN
|
||||
decisionToDFA []*antlr.DFA
|
||||
once sync.Once
|
||||
serializedATN []int32
|
||||
ChannelNames []string
|
||||
ModeNames []string
|
||||
LiteralNames []string
|
||||
SymbolicNames []string
|
||||
RuleNames []string
|
||||
PredictionContextCache *antlr.PredictionContextCache
|
||||
atn *antlr.ATN
|
||||
decisionToDFA []*antlr.DFA
|
||||
}
|
||||
|
||||
func cellexerLexerInit() {
|
||||
staticData := &CELLexerLexerStaticData
|
||||
staticData.ChannelNames = []string{
|
||||
"DEFAULT_TOKEN_CHANNEL", "HIDDEN",
|
||||
}
|
||||
staticData.ModeNames = []string{
|
||||
"DEFAULT_MODE",
|
||||
}
|
||||
staticData.LiteralNames = []string{
|
||||
"", "'=='", "'!='", "'in'", "'<'", "'<='", "'>='", "'>'", "'&&'", "'||'",
|
||||
"'['", "']'", "'{'", "'}'", "'('", "')'", "'.'", "','", "'-'", "'!'",
|
||||
"'?'", "':'", "'+'", "'*'", "'/'", "'%'", "'true'", "'false'", "'null'",
|
||||
}
|
||||
staticData.SymbolicNames = []string{
|
||||
"", "EQUALS", "NOT_EQUALS", "IN", "LESS", "LESS_EQUALS", "GREATER_EQUALS",
|
||||
"GREATER", "LOGICAL_AND", "LOGICAL_OR", "LBRACKET", "RPRACKET", "LBRACE",
|
||||
"RBRACE", "LPAREN", "RPAREN", "DOT", "COMMA", "MINUS", "EXCLAM", "QUESTIONMARK",
|
||||
"COLON", "PLUS", "STAR", "SLASH", "PERCENT", "CEL_TRUE", "CEL_FALSE",
|
||||
"NUL", "WHITESPACE", "COMMENT", "NUM_FLOAT", "NUM_INT", "NUM_UINT",
|
||||
"STRING", "BYTES", "IDENTIFIER",
|
||||
}
|
||||
staticData.RuleNames = []string{
|
||||
"EQUALS", "NOT_EQUALS", "IN", "LESS", "LESS_EQUALS", "GREATER_EQUALS",
|
||||
"GREATER", "LOGICAL_AND", "LOGICAL_OR", "LBRACKET", "RPRACKET", "LBRACE",
|
||||
"RBRACE", "LPAREN", "RPAREN", "DOT", "COMMA", "MINUS", "EXCLAM", "QUESTIONMARK",
|
||||
"COLON", "PLUS", "STAR", "SLASH", "PERCENT", "CEL_TRUE", "CEL_FALSE",
|
||||
"NUL", "BACKSLASH", "LETTER", "DIGIT", "EXPONENT", "HEXDIGIT", "RAW",
|
||||
"ESC_SEQ", "ESC_CHAR_SEQ", "ESC_OCT_SEQ", "ESC_BYTE_SEQ", "ESC_UNI_SEQ",
|
||||
"WHITESPACE", "COMMENT", "NUM_FLOAT", "NUM_INT", "NUM_UINT", "STRING",
|
||||
"BYTES", "IDENTIFIER",
|
||||
}
|
||||
staticData.PredictionContextCache = antlr.NewPredictionContextCache()
|
||||
staticData.serializedATN = []int32{
|
||||
4, 0, 36, 423, 6, -1, 2, 0, 7, 0, 2, 1, 7, 1, 2, 2, 7, 2, 2, 3, 7, 3, 2,
|
||||
4, 7, 4, 2, 5, 7, 5, 2, 6, 7, 6, 2, 7, 7, 7, 2, 8, 7, 8, 2, 9, 7, 9, 2,
|
||||
10, 7, 10, 2, 11, 7, 11, 2, 12, 7, 12, 2, 13, 7, 13, 2, 14, 7, 14, 2, 15,
|
||||
7, 15, 2, 16, 7, 16, 2, 17, 7, 17, 2, 18, 7, 18, 2, 19, 7, 19, 2, 20, 7,
|
||||
20, 2, 21, 7, 21, 2, 22, 7, 22, 2, 23, 7, 23, 2, 24, 7, 24, 2, 25, 7, 25,
|
||||
2, 26, 7, 26, 2, 27, 7, 27, 2, 28, 7, 28, 2, 29, 7, 29, 2, 30, 7, 30, 2,
|
||||
31, 7, 31, 2, 32, 7, 32, 2, 33, 7, 33, 2, 34, 7, 34, 2, 35, 7, 35, 2, 36,
|
||||
7, 36, 2, 37, 7, 37, 2, 38, 7, 38, 2, 39, 7, 39, 2, 40, 7, 40, 2, 41, 7,
|
||||
41, 2, 42, 7, 42, 2, 43, 7, 43, 2, 44, 7, 44, 2, 45, 7, 45, 2, 46, 7, 46,
|
||||
1, 0, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 2, 1, 3, 1, 3, 1, 4,
|
||||
1, 4, 1, 4, 1, 5, 1, 5, 1, 5, 1, 6, 1, 6, 1, 7, 1, 7, 1, 7, 1, 8, 1, 8,
|
||||
1, 8, 1, 9, 1, 9, 1, 10, 1, 10, 1, 11, 1, 11, 1, 12, 1, 12, 1, 13, 1, 13,
|
||||
1, 14, 1, 14, 1, 15, 1, 15, 1, 16, 1, 16, 1, 17, 1, 17, 1, 18, 1, 18, 1,
|
||||
19, 1, 19, 1, 20, 1, 20, 1, 21, 1, 21, 1, 22, 1, 22, 1, 23, 1, 23, 1, 24,
|
||||
1, 24, 1, 25, 1, 25, 1, 25, 1, 25, 1, 25, 1, 26, 1, 26, 1, 26, 1, 26, 1,
|
||||
26, 1, 26, 1, 27, 1, 27, 1, 27, 1, 27, 1, 27, 1, 28, 1, 28, 1, 29, 1, 29,
|
||||
1, 30, 1, 30, 1, 31, 1, 31, 3, 31, 177, 8, 31, 1, 31, 4, 31, 180, 8, 31,
|
||||
11, 31, 12, 31, 181, 1, 32, 1, 32, 1, 33, 1, 33, 1, 34, 1, 34, 1, 34, 1,
|
||||
34, 3, 34, 192, 8, 34, 1, 35, 1, 35, 1, 35, 1, 36, 1, 36, 1, 36, 1, 36,
|
||||
1, 36, 1, 37, 1, 37, 1, 37, 1, 37, 1, 37, 1, 38, 1, 38, 1, 38, 1, 38, 1,
|
||||
38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38,
|
||||
1, 38, 1, 38, 1, 38, 3, 38, 225, 8, 38, 1, 39, 4, 39, 228, 8, 39, 11, 39,
|
||||
12, 39, 229, 1, 39, 1, 39, 1, 40, 1, 40, 1, 40, 1, 40, 5, 40, 238, 8, 40,
|
||||
10, 40, 12, 40, 241, 9, 40, 1, 40, 1, 40, 1, 41, 4, 41, 246, 8, 41, 11,
|
||||
41, 12, 41, 247, 1, 41, 1, 41, 4, 41, 252, 8, 41, 11, 41, 12, 41, 253,
|
||||
1, 41, 3, 41, 257, 8, 41, 1, 41, 4, 41, 260, 8, 41, 11, 41, 12, 41, 261,
|
||||
1, 41, 1, 41, 1, 41, 1, 41, 4, 41, 268, 8, 41, 11, 41, 12, 41, 269, 1,
|
||||
41, 3, 41, 273, 8, 41, 3, 41, 275, 8, 41, 1, 42, 4, 42, 278, 8, 42, 11,
|
||||
42, 12, 42, 279, 1, 42, 1, 42, 1, 42, 1, 42, 4, 42, 286, 8, 42, 11, 42,
|
||||
12, 42, 287, 3, 42, 290, 8, 42, 1, 43, 4, 43, 293, 8, 43, 11, 43, 12, 43,
|
||||
294, 1, 43, 1, 43, 1, 43, 1, 43, 1, 43, 1, 43, 4, 43, 303, 8, 43, 11, 43,
|
||||
12, 43, 304, 1, 43, 1, 43, 3, 43, 309, 8, 43, 1, 44, 1, 44, 1, 44, 5, 44,
|
||||
314, 8, 44, 10, 44, 12, 44, 317, 9, 44, 1, 44, 1, 44, 1, 44, 1, 44, 5,
|
||||
44, 323, 8, 44, 10, 44, 12, 44, 326, 9, 44, 1, 44, 1, 44, 1, 44, 1, 44,
|
||||
1, 44, 1, 44, 1, 44, 5, 44, 335, 8, 44, 10, 44, 12, 44, 338, 9, 44, 1,
|
||||
44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 5, 44, 349,
|
||||
8, 44, 10, 44, 12, 44, 352, 9, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1,
|
||||
44, 5, 44, 360, 8, 44, 10, 44, 12, 44, 363, 9, 44, 1, 44, 1, 44, 1, 44,
|
||||
1, 44, 1, 44, 5, 44, 370, 8, 44, 10, 44, 12, 44, 373, 9, 44, 1, 44, 1,
|
||||
44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 5, 44, 383, 8, 44, 10, 44,
|
||||
12, 44, 386, 9, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1,
|
||||
44, 1, 44, 1, 44, 5, 44, 398, 8, 44, 10, 44, 12, 44, 401, 9, 44, 1, 44,
|
||||
1, 44, 1, 44, 1, 44, 3, 44, 407, 8, 44, 1, 45, 1, 45, 1, 45, 1, 46, 1,
|
||||
46, 3, 46, 414, 8, 46, 1, 46, 1, 46, 1, 46, 5, 46, 419, 8, 46, 10, 46,
|
||||
12, 46, 422, 9, 46, 4, 336, 350, 384, 399, 0, 47, 1, 1, 3, 2, 5, 3, 7,
|
||||
4, 9, 5, 11, 6, 13, 7, 15, 8, 17, 9, 19, 10, 21, 11, 23, 12, 25, 13, 27,
|
||||
14, 29, 15, 31, 16, 33, 17, 35, 18, 37, 19, 39, 20, 41, 21, 43, 22, 45,
|
||||
23, 47, 24, 49, 25, 51, 26, 53, 27, 55, 28, 57, 0, 59, 0, 61, 0, 63, 0,
|
||||
65, 0, 67, 0, 69, 0, 71, 0, 73, 0, 75, 0, 77, 0, 79, 29, 81, 30, 83, 31,
|
||||
85, 32, 87, 33, 89, 34, 91, 35, 93, 36, 1, 0, 16, 2, 0, 65, 90, 97, 122,
|
||||
2, 0, 69, 69, 101, 101, 2, 0, 43, 43, 45, 45, 3, 0, 48, 57, 65, 70, 97,
|
||||
102, 2, 0, 82, 82, 114, 114, 10, 0, 34, 34, 39, 39, 63, 63, 92, 92, 96,
|
||||
98, 102, 102, 110, 110, 114, 114, 116, 116, 118, 118, 2, 0, 88, 88, 120,
|
||||
120, 3, 0, 9, 10, 12, 13, 32, 32, 1, 0, 10, 10, 2, 0, 85, 85, 117, 117,
|
||||
4, 0, 10, 10, 13, 13, 34, 34, 92, 92, 4, 0, 10, 10, 13, 13, 39, 39, 92,
|
||||
92, 1, 0, 92, 92, 3, 0, 10, 10, 13, 13, 34, 34, 3, 0, 10, 10, 13, 13, 39,
|
||||
39, 2, 0, 66, 66, 98, 98, 456, 0, 1, 1, 0, 0, 0, 0, 3, 1, 0, 0, 0, 0, 5,
|
||||
1, 0, 0, 0, 0, 7, 1, 0, 0, 0, 0, 9, 1, 0, 0, 0, 0, 11, 1, 0, 0, 0, 0, 13,
|
||||
1, 0, 0, 0, 0, 15, 1, 0, 0, 0, 0, 17, 1, 0, 0, 0, 0, 19, 1, 0, 0, 0, 0,
|
||||
21, 1, 0, 0, 0, 0, 23, 1, 0, 0, 0, 0, 25, 1, 0, 0, 0, 0, 27, 1, 0, 0, 0,
|
||||
0, 29, 1, 0, 0, 0, 0, 31, 1, 0, 0, 0, 0, 33, 1, 0, 0, 0, 0, 35, 1, 0, 0,
|
||||
0, 0, 37, 1, 0, 0, 0, 0, 39, 1, 0, 0, 0, 0, 41, 1, 0, 0, 0, 0, 43, 1, 0,
|
||||
0, 0, 0, 45, 1, 0, 0, 0, 0, 47, 1, 0, 0, 0, 0, 49, 1, 0, 0, 0, 0, 51, 1,
|
||||
0, 0, 0, 0, 53, 1, 0, 0, 0, 0, 55, 1, 0, 0, 0, 0, 79, 1, 0, 0, 0, 0, 81,
|
||||
1, 0, 0, 0, 0, 83, 1, 0, 0, 0, 0, 85, 1, 0, 0, 0, 0, 87, 1, 0, 0, 0, 0,
|
||||
89, 1, 0, 0, 0, 0, 91, 1, 0, 0, 0, 0, 93, 1, 0, 0, 0, 1, 95, 1, 0, 0, 0,
|
||||
3, 98, 1, 0, 0, 0, 5, 101, 1, 0, 0, 0, 7, 104, 1, 0, 0, 0, 9, 106, 1, 0,
|
||||
0, 0, 11, 109, 1, 0, 0, 0, 13, 112, 1, 0, 0, 0, 15, 114, 1, 0, 0, 0, 17,
|
||||
117, 1, 0, 0, 0, 19, 120, 1, 0, 0, 0, 21, 122, 1, 0, 0, 0, 23, 124, 1,
|
||||
0, 0, 0, 25, 126, 1, 0, 0, 0, 27, 128, 1, 0, 0, 0, 29, 130, 1, 0, 0, 0,
|
||||
31, 132, 1, 0, 0, 0, 33, 134, 1, 0, 0, 0, 35, 136, 1, 0, 0, 0, 37, 138,
|
||||
1, 0, 0, 0, 39, 140, 1, 0, 0, 0, 41, 142, 1, 0, 0, 0, 43, 144, 1, 0, 0,
|
||||
0, 45, 146, 1, 0, 0, 0, 47, 148, 1, 0, 0, 0, 49, 150, 1, 0, 0, 0, 51, 152,
|
||||
1, 0, 0, 0, 53, 157, 1, 0, 0, 0, 55, 163, 1, 0, 0, 0, 57, 168, 1, 0, 0,
|
||||
0, 59, 170, 1, 0, 0, 0, 61, 172, 1, 0, 0, 0, 63, 174, 1, 0, 0, 0, 65, 183,
|
||||
1, 0, 0, 0, 67, 185, 1, 0, 0, 0, 69, 191, 1, 0, 0, 0, 71, 193, 1, 0, 0,
|
||||
0, 73, 196, 1, 0, 0, 0, 75, 201, 1, 0, 0, 0, 77, 224, 1, 0, 0, 0, 79, 227,
|
||||
1, 0, 0, 0, 81, 233, 1, 0, 0, 0, 83, 274, 1, 0, 0, 0, 85, 289, 1, 0, 0,
|
||||
0, 87, 308, 1, 0, 0, 0, 89, 406, 1, 0, 0, 0, 91, 408, 1, 0, 0, 0, 93, 413,
|
||||
1, 0, 0, 0, 95, 96, 5, 61, 0, 0, 96, 97, 5, 61, 0, 0, 97, 2, 1, 0, 0, 0,
|
||||
98, 99, 5, 33, 0, 0, 99, 100, 5, 61, 0, 0, 100, 4, 1, 0, 0, 0, 101, 102,
|
||||
5, 105, 0, 0, 102, 103, 5, 110, 0, 0, 103, 6, 1, 0, 0, 0, 104, 105, 5,
|
||||
60, 0, 0, 105, 8, 1, 0, 0, 0, 106, 107, 5, 60, 0, 0, 107, 108, 5, 61, 0,
|
||||
0, 108, 10, 1, 0, 0, 0, 109, 110, 5, 62, 0, 0, 110, 111, 5, 61, 0, 0, 111,
|
||||
12, 1, 0, 0, 0, 112, 113, 5, 62, 0, 0, 113, 14, 1, 0, 0, 0, 114, 115, 5,
|
||||
38, 0, 0, 115, 116, 5, 38, 0, 0, 116, 16, 1, 0, 0, 0, 117, 118, 5, 124,
|
||||
0, 0, 118, 119, 5, 124, 0, 0, 119, 18, 1, 0, 0, 0, 120, 121, 5, 91, 0,
|
||||
0, 121, 20, 1, 0, 0, 0, 122, 123, 5, 93, 0, 0, 123, 22, 1, 0, 0, 0, 124,
|
||||
125, 5, 123, 0, 0, 125, 24, 1, 0, 0, 0, 126, 127, 5, 125, 0, 0, 127, 26,
|
||||
1, 0, 0, 0, 128, 129, 5, 40, 0, 0, 129, 28, 1, 0, 0, 0, 130, 131, 5, 41,
|
||||
0, 0, 131, 30, 1, 0, 0, 0, 132, 133, 5, 46, 0, 0, 133, 32, 1, 0, 0, 0,
|
||||
134, 135, 5, 44, 0, 0, 135, 34, 1, 0, 0, 0, 136, 137, 5, 45, 0, 0, 137,
|
||||
36, 1, 0, 0, 0, 138, 139, 5, 33, 0, 0, 139, 38, 1, 0, 0, 0, 140, 141, 5,
|
||||
63, 0, 0, 141, 40, 1, 0, 0, 0, 142, 143, 5, 58, 0, 0, 143, 42, 1, 0, 0,
|
||||
0, 144, 145, 5, 43, 0, 0, 145, 44, 1, 0, 0, 0, 146, 147, 5, 42, 0, 0, 147,
|
||||
46, 1, 0, 0, 0, 148, 149, 5, 47, 0, 0, 149, 48, 1, 0, 0, 0, 150, 151, 5,
|
||||
37, 0, 0, 151, 50, 1, 0, 0, 0, 152, 153, 5, 116, 0, 0, 153, 154, 5, 114,
|
||||
0, 0, 154, 155, 5, 117, 0, 0, 155, 156, 5, 101, 0, 0, 156, 52, 1, 0, 0,
|
||||
0, 157, 158, 5, 102, 0, 0, 158, 159, 5, 97, 0, 0, 159, 160, 5, 108, 0,
|
||||
0, 160, 161, 5, 115, 0, 0, 161, 162, 5, 101, 0, 0, 162, 54, 1, 0, 0, 0,
|
||||
163, 164, 5, 110, 0, 0, 164, 165, 5, 117, 0, 0, 165, 166, 5, 108, 0, 0,
|
||||
166, 167, 5, 108, 0, 0, 167, 56, 1, 0, 0, 0, 168, 169, 5, 92, 0, 0, 169,
|
||||
58, 1, 0, 0, 0, 170, 171, 7, 0, 0, 0, 171, 60, 1, 0, 0, 0, 172, 173, 2,
|
||||
48, 57, 0, 173, 62, 1, 0, 0, 0, 174, 176, 7, 1, 0, 0, 175, 177, 7, 2, 0,
|
||||
0, 176, 175, 1, 0, 0, 0, 176, 177, 1, 0, 0, 0, 177, 179, 1, 0, 0, 0, 178,
|
||||
180, 3, 61, 30, 0, 179, 178, 1, 0, 0, 0, 180, 181, 1, 0, 0, 0, 181, 179,
|
||||
1, 0, 0, 0, 181, 182, 1, 0, 0, 0, 182, 64, 1, 0, 0, 0, 183, 184, 7, 3,
|
||||
0, 0, 184, 66, 1, 0, 0, 0, 185, 186, 7, 4, 0, 0, 186, 68, 1, 0, 0, 0, 187,
|
||||
192, 3, 71, 35, 0, 188, 192, 3, 75, 37, 0, 189, 192, 3, 77, 38, 0, 190,
|
||||
192, 3, 73, 36, 0, 191, 187, 1, 0, 0, 0, 191, 188, 1, 0, 0, 0, 191, 189,
|
||||
1, 0, 0, 0, 191, 190, 1, 0, 0, 0, 192, 70, 1, 0, 0, 0, 193, 194, 3, 57,
|
||||
28, 0, 194, 195, 7, 5, 0, 0, 195, 72, 1, 0, 0, 0, 196, 197, 3, 57, 28,
|
||||
0, 197, 198, 2, 48, 51, 0, 198, 199, 2, 48, 55, 0, 199, 200, 2, 48, 55,
|
||||
0, 200, 74, 1, 0, 0, 0, 201, 202, 3, 57, 28, 0, 202, 203, 7, 6, 0, 0, 203,
|
||||
204, 3, 65, 32, 0, 204, 205, 3, 65, 32, 0, 205, 76, 1, 0, 0, 0, 206, 207,
|
||||
3, 57, 28, 0, 207, 208, 5, 117, 0, 0, 208, 209, 3, 65, 32, 0, 209, 210,
|
||||
3, 65, 32, 0, 210, 211, 3, 65, 32, 0, 211, 212, 3, 65, 32, 0, 212, 225,
|
||||
1, 0, 0, 0, 213, 214, 3, 57, 28, 0, 214, 215, 5, 85, 0, 0, 215, 216, 3,
|
||||
65, 32, 0, 216, 217, 3, 65, 32, 0, 217, 218, 3, 65, 32, 0, 218, 219, 3,
|
||||
65, 32, 0, 219, 220, 3, 65, 32, 0, 220, 221, 3, 65, 32, 0, 221, 222, 3,
|
||||
65, 32, 0, 222, 223, 3, 65, 32, 0, 223, 225, 1, 0, 0, 0, 224, 206, 1, 0,
|
||||
0, 0, 224, 213, 1, 0, 0, 0, 225, 78, 1, 0, 0, 0, 226, 228, 7, 7, 0, 0,
|
||||
227, 226, 1, 0, 0, 0, 228, 229, 1, 0, 0, 0, 229, 227, 1, 0, 0, 0, 229,
|
||||
230, 1, 0, 0, 0, 230, 231, 1, 0, 0, 0, 231, 232, 6, 39, 0, 0, 232, 80,
|
||||
1, 0, 0, 0, 233, 234, 5, 47, 0, 0, 234, 235, 5, 47, 0, 0, 235, 239, 1,
|
||||
0, 0, 0, 236, 238, 8, 8, 0, 0, 237, 236, 1, 0, 0, 0, 238, 241, 1, 0, 0,
|
||||
0, 239, 237, 1, 0, 0, 0, 239, 240, 1, 0, 0, 0, 240, 242, 1, 0, 0, 0, 241,
|
||||
239, 1, 0, 0, 0, 242, 243, 6, 40, 0, 0, 243, 82, 1, 0, 0, 0, 244, 246,
|
||||
3, 61, 30, 0, 245, 244, 1, 0, 0, 0, 246, 247, 1, 0, 0, 0, 247, 245, 1,
|
||||
0, 0, 0, 247, 248, 1, 0, 0, 0, 248, 249, 1, 0, 0, 0, 249, 251, 5, 46, 0,
|
||||
0, 250, 252, 3, 61, 30, 0, 251, 250, 1, 0, 0, 0, 252, 253, 1, 0, 0, 0,
|
||||
253, 251, 1, 0, 0, 0, 253, 254, 1, 0, 0, 0, 254, 256, 1, 0, 0, 0, 255,
|
||||
257, 3, 63, 31, 0, 256, 255, 1, 0, 0, 0, 256, 257, 1, 0, 0, 0, 257, 275,
|
||||
1, 0, 0, 0, 258, 260, 3, 61, 30, 0, 259, 258, 1, 0, 0, 0, 260, 261, 1,
|
||||
0, 0, 0, 261, 259, 1, 0, 0, 0, 261, 262, 1, 0, 0, 0, 262, 263, 1, 0, 0,
|
||||
0, 263, 264, 3, 63, 31, 0, 264, 275, 1, 0, 0, 0, 265, 267, 5, 46, 0, 0,
|
||||
266, 268, 3, 61, 30, 0, 267, 266, 1, 0, 0, 0, 268, 269, 1, 0, 0, 0, 269,
|
||||
267, 1, 0, 0, 0, 269, 270, 1, 0, 0, 0, 270, 272, 1, 0, 0, 0, 271, 273,
|
||||
3, 63, 31, 0, 272, 271, 1, 0, 0, 0, 272, 273, 1, 0, 0, 0, 273, 275, 1,
|
||||
0, 0, 0, 274, 245, 1, 0, 0, 0, 274, 259, 1, 0, 0, 0, 274, 265, 1, 0, 0,
|
||||
0, 275, 84, 1, 0, 0, 0, 276, 278, 3, 61, 30, 0, 277, 276, 1, 0, 0, 0, 278,
|
||||
279, 1, 0, 0, 0, 279, 277, 1, 0, 0, 0, 279, 280, 1, 0, 0, 0, 280, 290,
|
||||
1, 0, 0, 0, 281, 282, 5, 48, 0, 0, 282, 283, 5, 120, 0, 0, 283, 285, 1,
|
||||
0, 0, 0, 284, 286, 3, 65, 32, 0, 285, 284, 1, 0, 0, 0, 286, 287, 1, 0,
|
||||
0, 0, 287, 285, 1, 0, 0, 0, 287, 288, 1, 0, 0, 0, 288, 290, 1, 0, 0, 0,
|
||||
289, 277, 1, 0, 0, 0, 289, 281, 1, 0, 0, 0, 290, 86, 1, 0, 0, 0, 291, 293,
|
||||
3, 61, 30, 0, 292, 291, 1, 0, 0, 0, 293, 294, 1, 0, 0, 0, 294, 292, 1,
|
||||
0, 0, 0, 294, 295, 1, 0, 0, 0, 295, 296, 1, 0, 0, 0, 296, 297, 7, 9, 0,
|
||||
0, 297, 309, 1, 0, 0, 0, 298, 299, 5, 48, 0, 0, 299, 300, 5, 120, 0, 0,
|
||||
300, 302, 1, 0, 0, 0, 301, 303, 3, 65, 32, 0, 302, 301, 1, 0, 0, 0, 303,
|
||||
304, 1, 0, 0, 0, 304, 302, 1, 0, 0, 0, 304, 305, 1, 0, 0, 0, 305, 306,
|
||||
1, 0, 0, 0, 306, 307, 7, 9, 0, 0, 307, 309, 1, 0, 0, 0, 308, 292, 1, 0,
|
||||
0, 0, 308, 298, 1, 0, 0, 0, 309, 88, 1, 0, 0, 0, 310, 315, 5, 34, 0, 0,
|
||||
311, 314, 3, 69, 34, 0, 312, 314, 8, 10, 0, 0, 313, 311, 1, 0, 0, 0, 313,
|
||||
312, 1, 0, 0, 0, 314, 317, 1, 0, 0, 0, 315, 313, 1, 0, 0, 0, 315, 316,
|
||||
1, 0, 0, 0, 316, 318, 1, 0, 0, 0, 317, 315, 1, 0, 0, 0, 318, 407, 5, 34,
|
||||
0, 0, 319, 324, 5, 39, 0, 0, 320, 323, 3, 69, 34, 0, 321, 323, 8, 11, 0,
|
||||
0, 322, 320, 1, 0, 0, 0, 322, 321, 1, 0, 0, 0, 323, 326, 1, 0, 0, 0, 324,
|
||||
322, 1, 0, 0, 0, 324, 325, 1, 0, 0, 0, 325, 327, 1, 0, 0, 0, 326, 324,
|
||||
1, 0, 0, 0, 327, 407, 5, 39, 0, 0, 328, 329, 5, 34, 0, 0, 329, 330, 5,
|
||||
34, 0, 0, 330, 331, 5, 34, 0, 0, 331, 336, 1, 0, 0, 0, 332, 335, 3, 69,
|
||||
34, 0, 333, 335, 8, 12, 0, 0, 334, 332, 1, 0, 0, 0, 334, 333, 1, 0, 0,
|
||||
0, 335, 338, 1, 0, 0, 0, 336, 337, 1, 0, 0, 0, 336, 334, 1, 0, 0, 0, 337,
|
||||
339, 1, 0, 0, 0, 338, 336, 1, 0, 0, 0, 339, 340, 5, 34, 0, 0, 340, 341,
|
||||
5, 34, 0, 0, 341, 407, 5, 34, 0, 0, 342, 343, 5, 39, 0, 0, 343, 344, 5,
|
||||
39, 0, 0, 344, 345, 5, 39, 0, 0, 345, 350, 1, 0, 0, 0, 346, 349, 3, 69,
|
||||
34, 0, 347, 349, 8, 12, 0, 0, 348, 346, 1, 0, 0, 0, 348, 347, 1, 0, 0,
|
||||
0, 349, 352, 1, 0, 0, 0, 350, 351, 1, 0, 0, 0, 350, 348, 1, 0, 0, 0, 351,
|
||||
353, 1, 0, 0, 0, 352, 350, 1, 0, 0, 0, 353, 354, 5, 39, 0, 0, 354, 355,
|
||||
5, 39, 0, 0, 355, 407, 5, 39, 0, 0, 356, 357, 3, 67, 33, 0, 357, 361, 5,
|
||||
34, 0, 0, 358, 360, 8, 13, 0, 0, 359, 358, 1, 0, 0, 0, 360, 363, 1, 0,
|
||||
0, 0, 361, 359, 1, 0, 0, 0, 361, 362, 1, 0, 0, 0, 362, 364, 1, 0, 0, 0,
|
||||
363, 361, 1, 0, 0, 0, 364, 365, 5, 34, 0, 0, 365, 407, 1, 0, 0, 0, 366,
|
||||
367, 3, 67, 33, 0, 367, 371, 5, 39, 0, 0, 368, 370, 8, 14, 0, 0, 369, 368,
|
||||
1, 0, 0, 0, 370, 373, 1, 0, 0, 0, 371, 369, 1, 0, 0, 0, 371, 372, 1, 0,
|
||||
0, 0, 372, 374, 1, 0, 0, 0, 373, 371, 1, 0, 0, 0, 374, 375, 5, 39, 0, 0,
|
||||
375, 407, 1, 0, 0, 0, 376, 377, 3, 67, 33, 0, 377, 378, 5, 34, 0, 0, 378,
|
||||
379, 5, 34, 0, 0, 379, 380, 5, 34, 0, 0, 380, 384, 1, 0, 0, 0, 381, 383,
|
||||
9, 0, 0, 0, 382, 381, 1, 0, 0, 0, 383, 386, 1, 0, 0, 0, 384, 385, 1, 0,
|
||||
0, 0, 384, 382, 1, 0, 0, 0, 385, 387, 1, 0, 0, 0, 386, 384, 1, 0, 0, 0,
|
||||
387, 388, 5, 34, 0, 0, 388, 389, 5, 34, 0, 0, 389, 390, 5, 34, 0, 0, 390,
|
||||
407, 1, 0, 0, 0, 391, 392, 3, 67, 33, 0, 392, 393, 5, 39, 0, 0, 393, 394,
|
||||
5, 39, 0, 0, 394, 395, 5, 39, 0, 0, 395, 399, 1, 0, 0, 0, 396, 398, 9,
|
||||
0, 0, 0, 397, 396, 1, 0, 0, 0, 398, 401, 1, 0, 0, 0, 399, 400, 1, 0, 0,
|
||||
0, 399, 397, 1, 0, 0, 0, 400, 402, 1, 0, 0, 0, 401, 399, 1, 0, 0, 0, 402,
|
||||
403, 5, 39, 0, 0, 403, 404, 5, 39, 0, 0, 404, 405, 5, 39, 0, 0, 405, 407,
|
||||
1, 0, 0, 0, 406, 310, 1, 0, 0, 0, 406, 319, 1, 0, 0, 0, 406, 328, 1, 0,
|
||||
0, 0, 406, 342, 1, 0, 0, 0, 406, 356, 1, 0, 0, 0, 406, 366, 1, 0, 0, 0,
|
||||
406, 376, 1, 0, 0, 0, 406, 391, 1, 0, 0, 0, 407, 90, 1, 0, 0, 0, 408, 409,
|
||||
7, 15, 0, 0, 409, 410, 3, 89, 44, 0, 410, 92, 1, 0, 0, 0, 411, 414, 3,
|
||||
59, 29, 0, 412, 414, 5, 95, 0, 0, 413, 411, 1, 0, 0, 0, 413, 412, 1, 0,
|
||||
0, 0, 414, 420, 1, 0, 0, 0, 415, 419, 3, 59, 29, 0, 416, 419, 3, 61, 30,
|
||||
0, 417, 419, 5, 95, 0, 0, 418, 415, 1, 0, 0, 0, 418, 416, 1, 0, 0, 0, 418,
|
||||
417, 1, 0, 0, 0, 419, 422, 1, 0, 0, 0, 420, 418, 1, 0, 0, 0, 420, 421,
|
||||
1, 0, 0, 0, 421, 94, 1, 0, 0, 0, 422, 420, 1, 0, 0, 0, 36, 0, 176, 181,
|
||||
191, 224, 229, 239, 247, 253, 256, 261, 269, 272, 274, 279, 287, 289, 294,
|
||||
304, 308, 313, 315, 322, 324, 334, 336, 348, 350, 361, 371, 384, 399, 406,
|
||||
413, 418, 420, 1, 0, 1, 0,
|
||||
}
|
||||
deserializer := antlr.NewATNDeserializer(nil)
|
||||
staticData.atn = deserializer.Deserialize(staticData.serializedATN)
|
||||
atn := staticData.atn
|
||||
staticData.decisionToDFA = make([]*antlr.DFA, len(atn.DecisionToState))
|
||||
decisionToDFA := staticData.decisionToDFA
|
||||
for index, state := range atn.DecisionToState {
|
||||
decisionToDFA[index] = antlr.NewDFA(state, index)
|
||||
}
|
||||
staticData := &CELLexerLexerStaticData
|
||||
staticData.ChannelNames = []string{
|
||||
"DEFAULT_TOKEN_CHANNEL", "HIDDEN",
|
||||
}
|
||||
staticData.ModeNames = []string{
|
||||
"DEFAULT_MODE",
|
||||
}
|
||||
staticData.LiteralNames = []string{
|
||||
"", "'=='", "'!='", "'in'", "'<'", "'<='", "'>='", "'>'", "'&&'", "'||'",
|
||||
"'['", "']'", "'{'", "'}'", "'('", "')'", "'.'", "','", "'-'", "'!'",
|
||||
"'?'", "':'", "'+'", "'*'", "'/'", "'%'", "'true'", "'false'", "'null'",
|
||||
}
|
||||
staticData.SymbolicNames = []string{
|
||||
"", "EQUALS", "NOT_EQUALS", "IN", "LESS", "LESS_EQUALS", "GREATER_EQUALS",
|
||||
"GREATER", "LOGICAL_AND", "LOGICAL_OR", "LBRACKET", "RPRACKET", "LBRACE",
|
||||
"RBRACE", "LPAREN", "RPAREN", "DOT", "COMMA", "MINUS", "EXCLAM", "QUESTIONMARK",
|
||||
"COLON", "PLUS", "STAR", "SLASH", "PERCENT", "CEL_TRUE", "CEL_FALSE",
|
||||
"NUL", "WHITESPACE", "COMMENT", "NUM_FLOAT", "NUM_INT", "NUM_UINT",
|
||||
"STRING", "BYTES", "IDENTIFIER", "ESC_IDENTIFIER",
|
||||
}
|
||||
staticData.RuleNames = []string{
|
||||
"EQUALS", "NOT_EQUALS", "IN", "LESS", "LESS_EQUALS", "GREATER_EQUALS",
|
||||
"GREATER", "LOGICAL_AND", "LOGICAL_OR", "LBRACKET", "RPRACKET", "LBRACE",
|
||||
"RBRACE", "LPAREN", "RPAREN", "DOT", "COMMA", "MINUS", "EXCLAM", "QUESTIONMARK",
|
||||
"COLON", "PLUS", "STAR", "SLASH", "PERCENT", "CEL_TRUE", "CEL_FALSE",
|
||||
"NUL", "BACKSLASH", "LETTER", "DIGIT", "EXPONENT", "HEXDIGIT", "RAW",
|
||||
"ESC_SEQ", "ESC_CHAR_SEQ", "ESC_OCT_SEQ", "ESC_BYTE_SEQ", "ESC_UNI_SEQ",
|
||||
"WHITESPACE", "COMMENT", "NUM_FLOAT", "NUM_INT", "NUM_UINT", "STRING",
|
||||
"BYTES", "IDENTIFIER", "ESC_IDENTIFIER",
|
||||
}
|
||||
staticData.PredictionContextCache = antlr.NewPredictionContextCache()
|
||||
staticData.serializedATN = []int32{
|
||||
4, 0, 37, 435, 6, -1, 2, 0, 7, 0, 2, 1, 7, 1, 2, 2, 7, 2, 2, 3, 7, 3, 2,
|
||||
4, 7, 4, 2, 5, 7, 5, 2, 6, 7, 6, 2, 7, 7, 7, 2, 8, 7, 8, 2, 9, 7, 9, 2,
|
||||
10, 7, 10, 2, 11, 7, 11, 2, 12, 7, 12, 2, 13, 7, 13, 2, 14, 7, 14, 2, 15,
|
||||
7, 15, 2, 16, 7, 16, 2, 17, 7, 17, 2, 18, 7, 18, 2, 19, 7, 19, 2, 20, 7,
|
||||
20, 2, 21, 7, 21, 2, 22, 7, 22, 2, 23, 7, 23, 2, 24, 7, 24, 2, 25, 7, 25,
|
||||
2, 26, 7, 26, 2, 27, 7, 27, 2, 28, 7, 28, 2, 29, 7, 29, 2, 30, 7, 30, 2,
|
||||
31, 7, 31, 2, 32, 7, 32, 2, 33, 7, 33, 2, 34, 7, 34, 2, 35, 7, 35, 2, 36,
|
||||
7, 36, 2, 37, 7, 37, 2, 38, 7, 38, 2, 39, 7, 39, 2, 40, 7, 40, 2, 41, 7,
|
||||
41, 2, 42, 7, 42, 2, 43, 7, 43, 2, 44, 7, 44, 2, 45, 7, 45, 2, 46, 7, 46,
|
||||
2, 47, 7, 47, 1, 0, 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 2, 1, 2, 1, 2, 1,
|
||||
3, 1, 3, 1, 4, 1, 4, 1, 4, 1, 5, 1, 5, 1, 5, 1, 6, 1, 6, 1, 7, 1, 7, 1,
|
||||
7, 1, 8, 1, 8, 1, 8, 1, 9, 1, 9, 1, 10, 1, 10, 1, 11, 1, 11, 1, 12, 1,
|
||||
12, 1, 13, 1, 13, 1, 14, 1, 14, 1, 15, 1, 15, 1, 16, 1, 16, 1, 17, 1, 17,
|
||||
1, 18, 1, 18, 1, 19, 1, 19, 1, 20, 1, 20, 1, 21, 1, 21, 1, 22, 1, 22, 1,
|
||||
23, 1, 23, 1, 24, 1, 24, 1, 25, 1, 25, 1, 25, 1, 25, 1, 25, 1, 26, 1, 26,
|
||||
1, 26, 1, 26, 1, 26, 1, 26, 1, 27, 1, 27, 1, 27, 1, 27, 1, 27, 1, 28, 1,
|
||||
28, 1, 29, 1, 29, 1, 30, 1, 30, 1, 31, 1, 31, 3, 31, 179, 8, 31, 1, 31,
|
||||
4, 31, 182, 8, 31, 11, 31, 12, 31, 183, 1, 32, 1, 32, 1, 33, 1, 33, 1,
|
||||
34, 1, 34, 1, 34, 1, 34, 3, 34, 194, 8, 34, 1, 35, 1, 35, 1, 35, 1, 36,
|
||||
1, 36, 1, 36, 1, 36, 1, 36, 1, 37, 1, 37, 1, 37, 1, 37, 1, 37, 1, 38, 1,
|
||||
38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38,
|
||||
1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 1, 38, 3, 38, 227, 8, 38, 1, 39, 4,
|
||||
39, 230, 8, 39, 11, 39, 12, 39, 231, 1, 39, 1, 39, 1, 40, 1, 40, 1, 40,
|
||||
1, 40, 5, 40, 240, 8, 40, 10, 40, 12, 40, 243, 9, 40, 1, 40, 1, 40, 1,
|
||||
41, 4, 41, 248, 8, 41, 11, 41, 12, 41, 249, 1, 41, 1, 41, 4, 41, 254, 8,
|
||||
41, 11, 41, 12, 41, 255, 1, 41, 3, 41, 259, 8, 41, 1, 41, 4, 41, 262, 8,
|
||||
41, 11, 41, 12, 41, 263, 1, 41, 1, 41, 1, 41, 1, 41, 4, 41, 270, 8, 41,
|
||||
11, 41, 12, 41, 271, 1, 41, 3, 41, 275, 8, 41, 3, 41, 277, 8, 41, 1, 42,
|
||||
4, 42, 280, 8, 42, 11, 42, 12, 42, 281, 1, 42, 1, 42, 1, 42, 1, 42, 4,
|
||||
42, 288, 8, 42, 11, 42, 12, 42, 289, 3, 42, 292, 8, 42, 1, 43, 4, 43, 295,
|
||||
8, 43, 11, 43, 12, 43, 296, 1, 43, 1, 43, 1, 43, 1, 43, 1, 43, 1, 43, 4,
|
||||
43, 305, 8, 43, 11, 43, 12, 43, 306, 1, 43, 1, 43, 3, 43, 311, 8, 43, 1,
|
||||
44, 1, 44, 1, 44, 5, 44, 316, 8, 44, 10, 44, 12, 44, 319, 9, 44, 1, 44,
|
||||
1, 44, 1, 44, 1, 44, 5, 44, 325, 8, 44, 10, 44, 12, 44, 328, 9, 44, 1,
|
||||
44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 5, 44, 337, 8, 44, 10, 44,
|
||||
12, 44, 340, 9, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1,
|
||||
44, 1, 44, 5, 44, 351, 8, 44, 10, 44, 12, 44, 354, 9, 44, 1, 44, 1, 44,
|
||||
1, 44, 1, 44, 1, 44, 1, 44, 5, 44, 362, 8, 44, 10, 44, 12, 44, 365, 9,
|
||||
44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 5, 44, 372, 8, 44, 10, 44, 12, 44,
|
||||
375, 9, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 5,
|
||||
44, 385, 8, 44, 10, 44, 12, 44, 388, 9, 44, 1, 44, 1, 44, 1, 44, 1, 44,
|
||||
1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 1, 44, 5, 44, 400, 8, 44, 10, 44, 12,
|
||||
44, 403, 9, 44, 1, 44, 1, 44, 1, 44, 1, 44, 3, 44, 409, 8, 44, 1, 45, 1,
|
||||
45, 1, 45, 1, 46, 1, 46, 3, 46, 416, 8, 46, 1, 46, 1, 46, 1, 46, 5, 46,
|
||||
421, 8, 46, 10, 46, 12, 46, 424, 9, 46, 1, 47, 1, 47, 1, 47, 1, 47, 4,
|
||||
47, 430, 8, 47, 11, 47, 12, 47, 431, 1, 47, 1, 47, 4, 338, 352, 386, 401,
|
||||
0, 48, 1, 1, 3, 2, 5, 3, 7, 4, 9, 5, 11, 6, 13, 7, 15, 8, 17, 9, 19, 10,
|
||||
21, 11, 23, 12, 25, 13, 27, 14, 29, 15, 31, 16, 33, 17, 35, 18, 37, 19,
|
||||
39, 20, 41, 21, 43, 22, 45, 23, 47, 24, 49, 25, 51, 26, 53, 27, 55, 28,
|
||||
57, 0, 59, 0, 61, 0, 63, 0, 65, 0, 67, 0, 69, 0, 71, 0, 73, 0, 75, 0, 77,
|
||||
0, 79, 29, 81, 30, 83, 31, 85, 32, 87, 33, 89, 34, 91, 35, 93, 36, 95,
|
||||
37, 1, 0, 17, 2, 0, 65, 90, 97, 122, 2, 0, 69, 69, 101, 101, 2, 0, 43,
|
||||
43, 45, 45, 3, 0, 48, 57, 65, 70, 97, 102, 2, 0, 82, 82, 114, 114, 10,
|
||||
0, 34, 34, 39, 39, 63, 63, 92, 92, 96, 98, 102, 102, 110, 110, 114, 114,
|
||||
116, 116, 118, 118, 2, 0, 88, 88, 120, 120, 3, 0, 9, 10, 12, 13, 32, 32,
|
||||
1, 0, 10, 10, 2, 0, 85, 85, 117, 117, 4, 0, 10, 10, 13, 13, 34, 34, 92,
|
||||
92, 4, 0, 10, 10, 13, 13, 39, 39, 92, 92, 1, 0, 92, 92, 3, 0, 10, 10, 13,
|
||||
13, 34, 34, 3, 0, 10, 10, 13, 13, 39, 39, 2, 0, 66, 66, 98, 98, 3, 0, 32,
|
||||
32, 45, 47, 95, 95, 471, 0, 1, 1, 0, 0, 0, 0, 3, 1, 0, 0, 0, 0, 5, 1, 0,
|
||||
0, 0, 0, 7, 1, 0, 0, 0, 0, 9, 1, 0, 0, 0, 0, 11, 1, 0, 0, 0, 0, 13, 1,
|
||||
0, 0, 0, 0, 15, 1, 0, 0, 0, 0, 17, 1, 0, 0, 0, 0, 19, 1, 0, 0, 0, 0, 21,
|
||||
1, 0, 0, 0, 0, 23, 1, 0, 0, 0, 0, 25, 1, 0, 0, 0, 0, 27, 1, 0, 0, 0, 0,
|
||||
29, 1, 0, 0, 0, 0, 31, 1, 0, 0, 0, 0, 33, 1, 0, 0, 0, 0, 35, 1, 0, 0, 0,
|
||||
0, 37, 1, 0, 0, 0, 0, 39, 1, 0, 0, 0, 0, 41, 1, 0, 0, 0, 0, 43, 1, 0, 0,
|
||||
0, 0, 45, 1, 0, 0, 0, 0, 47, 1, 0, 0, 0, 0, 49, 1, 0, 0, 0, 0, 51, 1, 0,
|
||||
0, 0, 0, 53, 1, 0, 0, 0, 0, 55, 1, 0, 0, 0, 0, 79, 1, 0, 0, 0, 0, 81, 1,
|
||||
0, 0, 0, 0, 83, 1, 0, 0, 0, 0, 85, 1, 0, 0, 0, 0, 87, 1, 0, 0, 0, 0, 89,
|
||||
1, 0, 0, 0, 0, 91, 1, 0, 0, 0, 0, 93, 1, 0, 0, 0, 0, 95, 1, 0, 0, 0, 1,
|
||||
97, 1, 0, 0, 0, 3, 100, 1, 0, 0, 0, 5, 103, 1, 0, 0, 0, 7, 106, 1, 0, 0,
|
||||
0, 9, 108, 1, 0, 0, 0, 11, 111, 1, 0, 0, 0, 13, 114, 1, 0, 0, 0, 15, 116,
|
||||
1, 0, 0, 0, 17, 119, 1, 0, 0, 0, 19, 122, 1, 0, 0, 0, 21, 124, 1, 0, 0,
|
||||
0, 23, 126, 1, 0, 0, 0, 25, 128, 1, 0, 0, 0, 27, 130, 1, 0, 0, 0, 29, 132,
|
||||
1, 0, 0, 0, 31, 134, 1, 0, 0, 0, 33, 136, 1, 0, 0, 0, 35, 138, 1, 0, 0,
|
||||
0, 37, 140, 1, 0, 0, 0, 39, 142, 1, 0, 0, 0, 41, 144, 1, 0, 0, 0, 43, 146,
|
||||
1, 0, 0, 0, 45, 148, 1, 0, 0, 0, 47, 150, 1, 0, 0, 0, 49, 152, 1, 0, 0,
|
||||
0, 51, 154, 1, 0, 0, 0, 53, 159, 1, 0, 0, 0, 55, 165, 1, 0, 0, 0, 57, 170,
|
||||
1, 0, 0, 0, 59, 172, 1, 0, 0, 0, 61, 174, 1, 0, 0, 0, 63, 176, 1, 0, 0,
|
||||
0, 65, 185, 1, 0, 0, 0, 67, 187, 1, 0, 0, 0, 69, 193, 1, 0, 0, 0, 71, 195,
|
||||
1, 0, 0, 0, 73, 198, 1, 0, 0, 0, 75, 203, 1, 0, 0, 0, 77, 226, 1, 0, 0,
|
||||
0, 79, 229, 1, 0, 0, 0, 81, 235, 1, 0, 0, 0, 83, 276, 1, 0, 0, 0, 85, 291,
|
||||
1, 0, 0, 0, 87, 310, 1, 0, 0, 0, 89, 408, 1, 0, 0, 0, 91, 410, 1, 0, 0,
|
||||
0, 93, 415, 1, 0, 0, 0, 95, 425, 1, 0, 0, 0, 97, 98, 5, 61, 0, 0, 98, 99,
|
||||
5, 61, 0, 0, 99, 2, 1, 0, 0, 0, 100, 101, 5, 33, 0, 0, 101, 102, 5, 61,
|
||||
0, 0, 102, 4, 1, 0, 0, 0, 103, 104, 5, 105, 0, 0, 104, 105, 5, 110, 0,
|
||||
0, 105, 6, 1, 0, 0, 0, 106, 107, 5, 60, 0, 0, 107, 8, 1, 0, 0, 0, 108,
|
||||
109, 5, 60, 0, 0, 109, 110, 5, 61, 0, 0, 110, 10, 1, 0, 0, 0, 111, 112,
|
||||
5, 62, 0, 0, 112, 113, 5, 61, 0, 0, 113, 12, 1, 0, 0, 0, 114, 115, 5, 62,
|
||||
0, 0, 115, 14, 1, 0, 0, 0, 116, 117, 5, 38, 0, 0, 117, 118, 5, 38, 0, 0,
|
||||
118, 16, 1, 0, 0, 0, 119, 120, 5, 124, 0, 0, 120, 121, 5, 124, 0, 0, 121,
|
||||
18, 1, 0, 0, 0, 122, 123, 5, 91, 0, 0, 123, 20, 1, 0, 0, 0, 124, 125, 5,
|
||||
93, 0, 0, 125, 22, 1, 0, 0, 0, 126, 127, 5, 123, 0, 0, 127, 24, 1, 0, 0,
|
||||
0, 128, 129, 5, 125, 0, 0, 129, 26, 1, 0, 0, 0, 130, 131, 5, 40, 0, 0,
|
||||
131, 28, 1, 0, 0, 0, 132, 133, 5, 41, 0, 0, 133, 30, 1, 0, 0, 0, 134, 135,
|
||||
5, 46, 0, 0, 135, 32, 1, 0, 0, 0, 136, 137, 5, 44, 0, 0, 137, 34, 1, 0,
|
||||
0, 0, 138, 139, 5, 45, 0, 0, 139, 36, 1, 0, 0, 0, 140, 141, 5, 33, 0, 0,
|
||||
141, 38, 1, 0, 0, 0, 142, 143, 5, 63, 0, 0, 143, 40, 1, 0, 0, 0, 144, 145,
|
||||
5, 58, 0, 0, 145, 42, 1, 0, 0, 0, 146, 147, 5, 43, 0, 0, 147, 44, 1, 0,
|
||||
0, 0, 148, 149, 5, 42, 0, 0, 149, 46, 1, 0, 0, 0, 150, 151, 5, 47, 0, 0,
|
||||
151, 48, 1, 0, 0, 0, 152, 153, 5, 37, 0, 0, 153, 50, 1, 0, 0, 0, 154, 155,
|
||||
5, 116, 0, 0, 155, 156, 5, 114, 0, 0, 156, 157, 5, 117, 0, 0, 157, 158,
|
||||
5, 101, 0, 0, 158, 52, 1, 0, 0, 0, 159, 160, 5, 102, 0, 0, 160, 161, 5,
|
||||
97, 0, 0, 161, 162, 5, 108, 0, 0, 162, 163, 5, 115, 0, 0, 163, 164, 5,
|
||||
101, 0, 0, 164, 54, 1, 0, 0, 0, 165, 166, 5, 110, 0, 0, 166, 167, 5, 117,
|
||||
0, 0, 167, 168, 5, 108, 0, 0, 168, 169, 5, 108, 0, 0, 169, 56, 1, 0, 0,
|
||||
0, 170, 171, 5, 92, 0, 0, 171, 58, 1, 0, 0, 0, 172, 173, 7, 0, 0, 0, 173,
|
||||
60, 1, 0, 0, 0, 174, 175, 2, 48, 57, 0, 175, 62, 1, 0, 0, 0, 176, 178,
|
||||
7, 1, 0, 0, 177, 179, 7, 2, 0, 0, 178, 177, 1, 0, 0, 0, 178, 179, 1, 0,
|
||||
0, 0, 179, 181, 1, 0, 0, 0, 180, 182, 3, 61, 30, 0, 181, 180, 1, 0, 0,
|
||||
0, 182, 183, 1, 0, 0, 0, 183, 181, 1, 0, 0, 0, 183, 184, 1, 0, 0, 0, 184,
|
||||
64, 1, 0, 0, 0, 185, 186, 7, 3, 0, 0, 186, 66, 1, 0, 0, 0, 187, 188, 7,
|
||||
4, 0, 0, 188, 68, 1, 0, 0, 0, 189, 194, 3, 71, 35, 0, 190, 194, 3, 75,
|
||||
37, 0, 191, 194, 3, 77, 38, 0, 192, 194, 3, 73, 36, 0, 193, 189, 1, 0,
|
||||
0, 0, 193, 190, 1, 0, 0, 0, 193, 191, 1, 0, 0, 0, 193, 192, 1, 0, 0, 0,
|
||||
194, 70, 1, 0, 0, 0, 195, 196, 3, 57, 28, 0, 196, 197, 7, 5, 0, 0, 197,
|
||||
72, 1, 0, 0, 0, 198, 199, 3, 57, 28, 0, 199, 200, 2, 48, 51, 0, 200, 201,
|
||||
2, 48, 55, 0, 201, 202, 2, 48, 55, 0, 202, 74, 1, 0, 0, 0, 203, 204, 3,
|
||||
57, 28, 0, 204, 205, 7, 6, 0, 0, 205, 206, 3, 65, 32, 0, 206, 207, 3, 65,
|
||||
32, 0, 207, 76, 1, 0, 0, 0, 208, 209, 3, 57, 28, 0, 209, 210, 5, 117, 0,
|
||||
0, 210, 211, 3, 65, 32, 0, 211, 212, 3, 65, 32, 0, 212, 213, 3, 65, 32,
|
||||
0, 213, 214, 3, 65, 32, 0, 214, 227, 1, 0, 0, 0, 215, 216, 3, 57, 28, 0,
|
||||
216, 217, 5, 85, 0, 0, 217, 218, 3, 65, 32, 0, 218, 219, 3, 65, 32, 0,
|
||||
219, 220, 3, 65, 32, 0, 220, 221, 3, 65, 32, 0, 221, 222, 3, 65, 32, 0,
|
||||
222, 223, 3, 65, 32, 0, 223, 224, 3, 65, 32, 0, 224, 225, 3, 65, 32, 0,
|
||||
225, 227, 1, 0, 0, 0, 226, 208, 1, 0, 0, 0, 226, 215, 1, 0, 0, 0, 227,
|
||||
78, 1, 0, 0, 0, 228, 230, 7, 7, 0, 0, 229, 228, 1, 0, 0, 0, 230, 231, 1,
|
||||
0, 0, 0, 231, 229, 1, 0, 0, 0, 231, 232, 1, 0, 0, 0, 232, 233, 1, 0, 0,
|
||||
0, 233, 234, 6, 39, 0, 0, 234, 80, 1, 0, 0, 0, 235, 236, 5, 47, 0, 0, 236,
|
||||
237, 5, 47, 0, 0, 237, 241, 1, 0, 0, 0, 238, 240, 8, 8, 0, 0, 239, 238,
|
||||
1, 0, 0, 0, 240, 243, 1, 0, 0, 0, 241, 239, 1, 0, 0, 0, 241, 242, 1, 0,
|
||||
0, 0, 242, 244, 1, 0, 0, 0, 243, 241, 1, 0, 0, 0, 244, 245, 6, 40, 0, 0,
|
||||
245, 82, 1, 0, 0, 0, 246, 248, 3, 61, 30, 0, 247, 246, 1, 0, 0, 0, 248,
|
||||
249, 1, 0, 0, 0, 249, 247, 1, 0, 0, 0, 249, 250, 1, 0, 0, 0, 250, 251,
|
||||
1, 0, 0, 0, 251, 253, 5, 46, 0, 0, 252, 254, 3, 61, 30, 0, 253, 252, 1,
|
||||
0, 0, 0, 254, 255, 1, 0, 0, 0, 255, 253, 1, 0, 0, 0, 255, 256, 1, 0, 0,
|
||||
0, 256, 258, 1, 0, 0, 0, 257, 259, 3, 63, 31, 0, 258, 257, 1, 0, 0, 0,
|
||||
258, 259, 1, 0, 0, 0, 259, 277, 1, 0, 0, 0, 260, 262, 3, 61, 30, 0, 261,
|
||||
260, 1, 0, 0, 0, 262, 263, 1, 0, 0, 0, 263, 261, 1, 0, 0, 0, 263, 264,
|
||||
1, 0, 0, 0, 264, 265, 1, 0, 0, 0, 265, 266, 3, 63, 31, 0, 266, 277, 1,
|
||||
0, 0, 0, 267, 269, 5, 46, 0, 0, 268, 270, 3, 61, 30, 0, 269, 268, 1, 0,
|
||||
0, 0, 270, 271, 1, 0, 0, 0, 271, 269, 1, 0, 0, 0, 271, 272, 1, 0, 0, 0,
|
||||
272, 274, 1, 0, 0, 0, 273, 275, 3, 63, 31, 0, 274, 273, 1, 0, 0, 0, 274,
|
||||
275, 1, 0, 0, 0, 275, 277, 1, 0, 0, 0, 276, 247, 1, 0, 0, 0, 276, 261,
|
||||
1, 0, 0, 0, 276, 267, 1, 0, 0, 0, 277, 84, 1, 0, 0, 0, 278, 280, 3, 61,
|
||||
30, 0, 279, 278, 1, 0, 0, 0, 280, 281, 1, 0, 0, 0, 281, 279, 1, 0, 0, 0,
|
||||
281, 282, 1, 0, 0, 0, 282, 292, 1, 0, 0, 0, 283, 284, 5, 48, 0, 0, 284,
|
||||
285, 5, 120, 0, 0, 285, 287, 1, 0, 0, 0, 286, 288, 3, 65, 32, 0, 287, 286,
|
||||
1, 0, 0, 0, 288, 289, 1, 0, 0, 0, 289, 287, 1, 0, 0, 0, 289, 290, 1, 0,
|
||||
0, 0, 290, 292, 1, 0, 0, 0, 291, 279, 1, 0, 0, 0, 291, 283, 1, 0, 0, 0,
|
||||
292, 86, 1, 0, 0, 0, 293, 295, 3, 61, 30, 0, 294, 293, 1, 0, 0, 0, 295,
|
||||
296, 1, 0, 0, 0, 296, 294, 1, 0, 0, 0, 296, 297, 1, 0, 0, 0, 297, 298,
|
||||
1, 0, 0, 0, 298, 299, 7, 9, 0, 0, 299, 311, 1, 0, 0, 0, 300, 301, 5, 48,
|
||||
0, 0, 301, 302, 5, 120, 0, 0, 302, 304, 1, 0, 0, 0, 303, 305, 3, 65, 32,
|
||||
0, 304, 303, 1, 0, 0, 0, 305, 306, 1, 0, 0, 0, 306, 304, 1, 0, 0, 0, 306,
|
||||
307, 1, 0, 0, 0, 307, 308, 1, 0, 0, 0, 308, 309, 7, 9, 0, 0, 309, 311,
|
||||
1, 0, 0, 0, 310, 294, 1, 0, 0, 0, 310, 300, 1, 0, 0, 0, 311, 88, 1, 0,
|
||||
0, 0, 312, 317, 5, 34, 0, 0, 313, 316, 3, 69, 34, 0, 314, 316, 8, 10, 0,
|
||||
0, 315, 313, 1, 0, 0, 0, 315, 314, 1, 0, 0, 0, 316, 319, 1, 0, 0, 0, 317,
|
||||
315, 1, 0, 0, 0, 317, 318, 1, 0, 0, 0, 318, 320, 1, 0, 0, 0, 319, 317,
|
||||
1, 0, 0, 0, 320, 409, 5, 34, 0, 0, 321, 326, 5, 39, 0, 0, 322, 325, 3,
|
||||
69, 34, 0, 323, 325, 8, 11, 0, 0, 324, 322, 1, 0, 0, 0, 324, 323, 1, 0,
|
||||
0, 0, 325, 328, 1, 0, 0, 0, 326, 324, 1, 0, 0, 0, 326, 327, 1, 0, 0, 0,
|
||||
327, 329, 1, 0, 0, 0, 328, 326, 1, 0, 0, 0, 329, 409, 5, 39, 0, 0, 330,
|
||||
331, 5, 34, 0, 0, 331, 332, 5, 34, 0, 0, 332, 333, 5, 34, 0, 0, 333, 338,
|
||||
1, 0, 0, 0, 334, 337, 3, 69, 34, 0, 335, 337, 8, 12, 0, 0, 336, 334, 1,
|
||||
0, 0, 0, 336, 335, 1, 0, 0, 0, 337, 340, 1, 0, 0, 0, 338, 339, 1, 0, 0,
|
||||
0, 338, 336, 1, 0, 0, 0, 339, 341, 1, 0, 0, 0, 340, 338, 1, 0, 0, 0, 341,
|
||||
342, 5, 34, 0, 0, 342, 343, 5, 34, 0, 0, 343, 409, 5, 34, 0, 0, 344, 345,
|
||||
5, 39, 0, 0, 345, 346, 5, 39, 0, 0, 346, 347, 5, 39, 0, 0, 347, 352, 1,
|
||||
0, 0, 0, 348, 351, 3, 69, 34, 0, 349, 351, 8, 12, 0, 0, 350, 348, 1, 0,
|
||||
0, 0, 350, 349, 1, 0, 0, 0, 351, 354, 1, 0, 0, 0, 352, 353, 1, 0, 0, 0,
|
||||
352, 350, 1, 0, 0, 0, 353, 355, 1, 0, 0, 0, 354, 352, 1, 0, 0, 0, 355,
|
||||
356, 5, 39, 0, 0, 356, 357, 5, 39, 0, 0, 357, 409, 5, 39, 0, 0, 358, 359,
|
||||
3, 67, 33, 0, 359, 363, 5, 34, 0, 0, 360, 362, 8, 13, 0, 0, 361, 360, 1,
|
||||
0, 0, 0, 362, 365, 1, 0, 0, 0, 363, 361, 1, 0, 0, 0, 363, 364, 1, 0, 0,
|
||||
0, 364, 366, 1, 0, 0, 0, 365, 363, 1, 0, 0, 0, 366, 367, 5, 34, 0, 0, 367,
|
||||
409, 1, 0, 0, 0, 368, 369, 3, 67, 33, 0, 369, 373, 5, 39, 0, 0, 370, 372,
|
||||
8, 14, 0, 0, 371, 370, 1, 0, 0, 0, 372, 375, 1, 0, 0, 0, 373, 371, 1, 0,
|
||||
0, 0, 373, 374, 1, 0, 0, 0, 374, 376, 1, 0, 0, 0, 375, 373, 1, 0, 0, 0,
|
||||
376, 377, 5, 39, 0, 0, 377, 409, 1, 0, 0, 0, 378, 379, 3, 67, 33, 0, 379,
|
||||
380, 5, 34, 0, 0, 380, 381, 5, 34, 0, 0, 381, 382, 5, 34, 0, 0, 382, 386,
|
||||
1, 0, 0, 0, 383, 385, 9, 0, 0, 0, 384, 383, 1, 0, 0, 0, 385, 388, 1, 0,
|
||||
0, 0, 386, 387, 1, 0, 0, 0, 386, 384, 1, 0, 0, 0, 387, 389, 1, 0, 0, 0,
|
||||
388, 386, 1, 0, 0, 0, 389, 390, 5, 34, 0, 0, 390, 391, 5, 34, 0, 0, 391,
|
||||
392, 5, 34, 0, 0, 392, 409, 1, 0, 0, 0, 393, 394, 3, 67, 33, 0, 394, 395,
|
||||
5, 39, 0, 0, 395, 396, 5, 39, 0, 0, 396, 397, 5, 39, 0, 0, 397, 401, 1,
|
||||
0, 0, 0, 398, 400, 9, 0, 0, 0, 399, 398, 1, 0, 0, 0, 400, 403, 1, 0, 0,
|
||||
0, 401, 402, 1, 0, 0, 0, 401, 399, 1, 0, 0, 0, 402, 404, 1, 0, 0, 0, 403,
|
||||
401, 1, 0, 0, 0, 404, 405, 5, 39, 0, 0, 405, 406, 5, 39, 0, 0, 406, 407,
|
||||
5, 39, 0, 0, 407, 409, 1, 0, 0, 0, 408, 312, 1, 0, 0, 0, 408, 321, 1, 0,
|
||||
0, 0, 408, 330, 1, 0, 0, 0, 408, 344, 1, 0, 0, 0, 408, 358, 1, 0, 0, 0,
|
||||
408, 368, 1, 0, 0, 0, 408, 378, 1, 0, 0, 0, 408, 393, 1, 0, 0, 0, 409,
|
||||
90, 1, 0, 0, 0, 410, 411, 7, 15, 0, 0, 411, 412, 3, 89, 44, 0, 412, 92,
|
||||
1, 0, 0, 0, 413, 416, 3, 59, 29, 0, 414, 416, 5, 95, 0, 0, 415, 413, 1,
|
||||
0, 0, 0, 415, 414, 1, 0, 0, 0, 416, 422, 1, 0, 0, 0, 417, 421, 3, 59, 29,
|
||||
0, 418, 421, 3, 61, 30, 0, 419, 421, 5, 95, 0, 0, 420, 417, 1, 0, 0, 0,
|
||||
420, 418, 1, 0, 0, 0, 420, 419, 1, 0, 0, 0, 421, 424, 1, 0, 0, 0, 422,
|
||||
420, 1, 0, 0, 0, 422, 423, 1, 0, 0, 0, 423, 94, 1, 0, 0, 0, 424, 422, 1,
|
||||
0, 0, 0, 425, 429, 5, 96, 0, 0, 426, 430, 3, 59, 29, 0, 427, 430, 3, 61,
|
||||
30, 0, 428, 430, 7, 16, 0, 0, 429, 426, 1, 0, 0, 0, 429, 427, 1, 0, 0,
|
||||
0, 429, 428, 1, 0, 0, 0, 430, 431, 1, 0, 0, 0, 431, 429, 1, 0, 0, 0, 431,
|
||||
432, 1, 0, 0, 0, 432, 433, 1, 0, 0, 0, 433, 434, 5, 96, 0, 0, 434, 96,
|
||||
1, 0, 0, 0, 38, 0, 178, 183, 193, 226, 231, 241, 249, 255, 258, 263, 271,
|
||||
274, 276, 281, 289, 291, 296, 306, 310, 315, 317, 324, 326, 336, 338, 350,
|
||||
352, 363, 373, 386, 401, 408, 415, 420, 422, 429, 431, 1, 0, 1, 0,
|
||||
}
|
||||
deserializer := antlr.NewATNDeserializer(nil)
|
||||
staticData.atn = deserializer.Deserialize(staticData.serializedATN)
|
||||
atn := staticData.atn
|
||||
staticData.decisionToDFA = make([]*antlr.DFA, len(atn.DecisionToState))
|
||||
decisionToDFA := staticData.decisionToDFA
|
||||
for index, state := range atn.DecisionToState {
|
||||
decisionToDFA[index] = antlr.NewDFA(state, index)
|
||||
}
|
||||
}
|
||||
|
||||
// CELLexerInit initializes any static state used to implement CELLexer. By default the
|
||||
@@ -280,16 +287,16 @@ func cellexerLexerInit() {
|
||||
// NewCELLexer(). You can call this function if you wish to initialize the static state ahead
|
||||
// of time.
|
||||
func CELLexerInit() {
|
||||
staticData := &CELLexerLexerStaticData
|
||||
staticData.once.Do(cellexerLexerInit)
|
||||
staticData := &CELLexerLexerStaticData
|
||||
staticData.once.Do(cellexerLexerInit)
|
||||
}
|
||||
|
||||
// NewCELLexer produces a new lexer instance for the optional input antlr.CharStream.
|
||||
func NewCELLexer(input antlr.CharStream) *CELLexer {
|
||||
CELLexerInit()
|
||||
CELLexerInit()
|
||||
l := new(CELLexer)
|
||||
l.BaseLexer = antlr.NewBaseLexer(input)
|
||||
staticData := &CELLexerLexerStaticData
|
||||
staticData := &CELLexerLexerStaticData
|
||||
l.Interpreter = antlr.NewLexerATNSimulator(l, staticData.atn, staticData.decisionToDFA, staticData.PredictionContextCache)
|
||||
l.channelNames = staticData.ChannelNames
|
||||
l.modeNames = staticData.ModeNames
|
||||
@@ -304,41 +311,41 @@ func NewCELLexer(input antlr.CharStream) *CELLexer {
|
||||
|
||||
// CELLexer tokens.
|
||||
const (
|
||||
CELLexerEQUALS = 1
|
||||
CELLexerNOT_EQUALS = 2
|
||||
CELLexerIN = 3
|
||||
CELLexerLESS = 4
|
||||
CELLexerLESS_EQUALS = 5
|
||||
CELLexerEQUALS = 1
|
||||
CELLexerNOT_EQUALS = 2
|
||||
CELLexerIN = 3
|
||||
CELLexerLESS = 4
|
||||
CELLexerLESS_EQUALS = 5
|
||||
CELLexerGREATER_EQUALS = 6
|
||||
CELLexerGREATER = 7
|
||||
CELLexerLOGICAL_AND = 8
|
||||
CELLexerLOGICAL_OR = 9
|
||||
CELLexerLBRACKET = 10
|
||||
CELLexerRPRACKET = 11
|
||||
CELLexerLBRACE = 12
|
||||
CELLexerRBRACE = 13
|
||||
CELLexerLPAREN = 14
|
||||
CELLexerRPAREN = 15
|
||||
CELLexerDOT = 16
|
||||
CELLexerCOMMA = 17
|
||||
CELLexerMINUS = 18
|
||||
CELLexerEXCLAM = 19
|
||||
CELLexerQUESTIONMARK = 20
|
||||
CELLexerCOLON = 21
|
||||
CELLexerPLUS = 22
|
||||
CELLexerSTAR = 23
|
||||
CELLexerSLASH = 24
|
||||
CELLexerPERCENT = 25
|
||||
CELLexerCEL_TRUE = 26
|
||||
CELLexerCEL_FALSE = 27
|
||||
CELLexerNUL = 28
|
||||
CELLexerWHITESPACE = 29
|
||||
CELLexerCOMMENT = 30
|
||||
CELLexerNUM_FLOAT = 31
|
||||
CELLexerNUM_INT = 32
|
||||
CELLexerNUM_UINT = 33
|
||||
CELLexerSTRING = 34
|
||||
CELLexerBYTES = 35
|
||||
CELLexerIDENTIFIER = 36
|
||||
CELLexerGREATER = 7
|
||||
CELLexerLOGICAL_AND = 8
|
||||
CELLexerLOGICAL_OR = 9
|
||||
CELLexerLBRACKET = 10
|
||||
CELLexerRPRACKET = 11
|
||||
CELLexerLBRACE = 12
|
||||
CELLexerRBRACE = 13
|
||||
CELLexerLPAREN = 14
|
||||
CELLexerRPAREN = 15
|
||||
CELLexerDOT = 16
|
||||
CELLexerCOMMA = 17
|
||||
CELLexerMINUS = 18
|
||||
CELLexerEXCLAM = 19
|
||||
CELLexerQUESTIONMARK = 20
|
||||
CELLexerCOLON = 21
|
||||
CELLexerPLUS = 22
|
||||
CELLexerSTAR = 23
|
||||
CELLexerSLASH = 24
|
||||
CELLexerPERCENT = 25
|
||||
CELLexerCEL_TRUE = 26
|
||||
CELLexerCEL_FALSE = 27
|
||||
CELLexerNUL = 28
|
||||
CELLexerWHITESPACE = 29
|
||||
CELLexerCOMMENT = 30
|
||||
CELLexerNUM_FLOAT = 31
|
||||
CELLexerNUM_INT = 32
|
||||
CELLexerNUM_UINT = 33
|
||||
CELLexerSTRING = 34
|
||||
CELLexerBYTES = 35
|
||||
CELLexerIDENTIFIER = 36
|
||||
CELLexerESC_IDENTIFIER = 37
|
||||
)
|
||||
|
||||
|
||||
29
vendor/github.com/google/cel-go/parser/gen/cel_listener.go
generated
vendored
29
vendor/github.com/google/cel-go/parser/gen/cel_listener.go
generated
vendored
@@ -1,9 +1,8 @@
|
||||
// Code generated from /usr/local/google/home/tswadell/go/src/github.com/google/cel-go/parser/gen/CEL.g4 by ANTLR 4.13.1. DO NOT EDIT.
|
||||
// Code generated from /usr/local/google/home/jdtatum/github/cel-go/parser/gen/CEL.g4 by ANTLR 4.13.1. DO NOT EDIT.
|
||||
|
||||
package gen // CEL
|
||||
import "github.com/antlr4-go/antlr/v4"
|
||||
|
||||
|
||||
// CELListener is a complete listener for a parse tree produced by CELParser.
|
||||
type CELListener interface {
|
||||
antlr.ParseTreeListener
|
||||
@@ -47,8 +46,11 @@ type CELListener interface {
|
||||
// EnterIndex is called when entering the Index production.
|
||||
EnterIndex(c *IndexContext)
|
||||
|
||||
// EnterIdentOrGlobalCall is called when entering the IdentOrGlobalCall production.
|
||||
EnterIdentOrGlobalCall(c *IdentOrGlobalCallContext)
|
||||
// EnterIdent is called when entering the Ident production.
|
||||
EnterIdent(c *IdentContext)
|
||||
|
||||
// EnterGlobalCall is called when entering the GlobalCall production.
|
||||
EnterGlobalCall(c *GlobalCallContext)
|
||||
|
||||
// EnterNested is called when entering the Nested production.
|
||||
EnterNested(c *NestedContext)
|
||||
@@ -80,6 +82,12 @@ type CELListener interface {
|
||||
// EnterMapInitializerList is called when entering the mapInitializerList production.
|
||||
EnterMapInitializerList(c *MapInitializerListContext)
|
||||
|
||||
// EnterSimpleIdentifier is called when entering the SimpleIdentifier production.
|
||||
EnterSimpleIdentifier(c *SimpleIdentifierContext)
|
||||
|
||||
// EnterEscapedIdentifier is called when entering the EscapedIdentifier production.
|
||||
EnterEscapedIdentifier(c *EscapedIdentifierContext)
|
||||
|
||||
// EnterOptExpr is called when entering the optExpr production.
|
||||
EnterOptExpr(c *OptExprContext)
|
||||
|
||||
@@ -146,8 +154,11 @@ type CELListener interface {
|
||||
// ExitIndex is called when exiting the Index production.
|
||||
ExitIndex(c *IndexContext)
|
||||
|
||||
// ExitIdentOrGlobalCall is called when exiting the IdentOrGlobalCall production.
|
||||
ExitIdentOrGlobalCall(c *IdentOrGlobalCallContext)
|
||||
// ExitIdent is called when exiting the Ident production.
|
||||
ExitIdent(c *IdentContext)
|
||||
|
||||
// ExitGlobalCall is called when exiting the GlobalCall production.
|
||||
ExitGlobalCall(c *GlobalCallContext)
|
||||
|
||||
// ExitNested is called when exiting the Nested production.
|
||||
ExitNested(c *NestedContext)
|
||||
@@ -179,6 +190,12 @@ type CELListener interface {
|
||||
// ExitMapInitializerList is called when exiting the mapInitializerList production.
|
||||
ExitMapInitializerList(c *MapInitializerListContext)
|
||||
|
||||
// ExitSimpleIdentifier is called when exiting the SimpleIdentifier production.
|
||||
ExitSimpleIdentifier(c *SimpleIdentifierContext)
|
||||
|
||||
// ExitEscapedIdentifier is called when exiting the EscapedIdentifier production.
|
||||
ExitEscapedIdentifier(c *EscapedIdentifierContext)
|
||||
|
||||
// ExitOptExpr is called when exiting the optExpr production.
|
||||
ExitOptExpr(c *OptExprContext)
|
||||
|
||||
|
||||
2367
vendor/github.com/google/cel-go/parser/gen/cel_parser.go
generated
vendored
2367
vendor/github.com/google/cel-go/parser/gen/cel_parser.go
generated
vendored
File diff suppressed because it is too large
Load Diff
19
vendor/github.com/google/cel-go/parser/gen/cel_visitor.go
generated
vendored
19
vendor/github.com/google/cel-go/parser/gen/cel_visitor.go
generated
vendored
@@ -1,9 +1,8 @@
|
||||
// Code generated from /usr/local/google/home/tswadell/go/src/github.com/google/cel-go/parser/gen/CEL.g4 by ANTLR 4.13.1. DO NOT EDIT.
|
||||
// Code generated from /usr/local/google/home/jdtatum/github/cel-go/parser/gen/CEL.g4 by ANTLR 4.13.1. DO NOT EDIT.
|
||||
|
||||
package gen // CEL
|
||||
import "github.com/antlr4-go/antlr/v4"
|
||||
|
||||
|
||||
// A complete Visitor for a parse tree produced by CELParser.
|
||||
type CELVisitor interface {
|
||||
antlr.ParseTreeVisitor
|
||||
@@ -47,8 +46,11 @@ type CELVisitor interface {
|
||||
// Visit a parse tree produced by CELParser#Index.
|
||||
VisitIndex(ctx *IndexContext) interface{}
|
||||
|
||||
// Visit a parse tree produced by CELParser#IdentOrGlobalCall.
|
||||
VisitIdentOrGlobalCall(ctx *IdentOrGlobalCallContext) interface{}
|
||||
// Visit a parse tree produced by CELParser#Ident.
|
||||
VisitIdent(ctx *IdentContext) interface{}
|
||||
|
||||
// Visit a parse tree produced by CELParser#GlobalCall.
|
||||
VisitGlobalCall(ctx *GlobalCallContext) interface{}
|
||||
|
||||
// Visit a parse tree produced by CELParser#Nested.
|
||||
VisitNested(ctx *NestedContext) interface{}
|
||||
@@ -80,6 +82,12 @@ type CELVisitor interface {
|
||||
// Visit a parse tree produced by CELParser#mapInitializerList.
|
||||
VisitMapInitializerList(ctx *MapInitializerListContext) interface{}
|
||||
|
||||
// Visit a parse tree produced by CELParser#SimpleIdentifier.
|
||||
VisitSimpleIdentifier(ctx *SimpleIdentifierContext) interface{}
|
||||
|
||||
// Visit a parse tree produced by CELParser#EscapedIdentifier.
|
||||
VisitEscapedIdentifier(ctx *EscapedIdentifierContext) interface{}
|
||||
|
||||
// Visit a parse tree produced by CELParser#optExpr.
|
||||
VisitOptExpr(ctx *OptExprContext) interface{}
|
||||
|
||||
@@ -106,5 +114,4 @@ type CELVisitor interface {
|
||||
|
||||
// Visit a parse tree produced by CELParser#Null.
|
||||
VisitNull(ctx *NullContext) interface{}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
5
vendor/github.com/google/cel-go/parser/helper.go
generated
vendored
5
vendor/github.com/google/cel-go/parser/helper.go
generated
vendored
@@ -470,6 +470,11 @@ func (e *exprHelper) NewAccuIdent() ast.Expr {
|
||||
return e.exprFactory.NewAccuIdent(e.nextMacroID())
|
||||
}
|
||||
|
||||
// AccuIdentName implements the ExprHelper interface method.
|
||||
func (e *exprHelper) AccuIdentName() string {
|
||||
return e.exprFactory.AccuIdentName()
|
||||
}
|
||||
|
||||
// NewGlobalCall implements the ExprHelper interface method.
|
||||
func (e *exprHelper) NewCall(function string, args ...ast.Expr) ast.Expr {
|
||||
return e.exprFactory.NewCall(e.nextMacroID(), function, args...)
|
||||
|
||||
32
vendor/github.com/google/cel-go/parser/macro.go
generated
vendored
32
vendor/github.com/google/cel-go/parser/macro.go
generated
vendored
@@ -225,6 +225,9 @@ type ExprHelper interface {
|
||||
// NewAccuIdent returns an accumulator identifier for use with comprehension results.
|
||||
NewAccuIdent() ast.Expr
|
||||
|
||||
// AccuIdentName returns the name of the accumulator identifier.
|
||||
AccuIdentName() string
|
||||
|
||||
// NewCall creates a function call Expr value for a global (free) function.
|
||||
NewCall(function string, args ...ast.Expr) ast.Expr
|
||||
|
||||
@@ -259,8 +262,13 @@ var (
|
||||
|
||||
// ExistsOneMacro expands "range.exists_one(var, predicate)", which is true if for exactly one
|
||||
// element in range the predicate holds.
|
||||
// Deprecated: Use ExistsOneMacroNew
|
||||
ExistsOneMacro = NewReceiverMacro(operators.ExistsOne, 2, MakeExistsOne)
|
||||
|
||||
// ExistsOneMacroNew expands "range.existsOne(var, predicate)", which is true if for exactly one
|
||||
// element in range the predicate holds.
|
||||
ExistsOneMacroNew = NewReceiverMacro("existsOne", 2, MakeExistsOne)
|
||||
|
||||
// MapMacro expands "range.map(var, function)" into a comprehension which applies the function
|
||||
// to each element in the range to produce a new list.
|
||||
MapMacro = NewReceiverMacro(operators.Map, 2, MakeMap)
|
||||
@@ -280,6 +288,7 @@ var (
|
||||
AllMacro,
|
||||
ExistsMacro,
|
||||
ExistsOneMacro,
|
||||
ExistsOneMacroNew,
|
||||
MapMacro,
|
||||
MapFilterMacro,
|
||||
FilterMacro,
|
||||
@@ -292,6 +301,11 @@ var (
|
||||
// AccumulatorName is the traditional variable name assigned to the fold accumulator variable.
|
||||
const AccumulatorName = "__result__"
|
||||
|
||||
// HiddenAccumulatorName is a proposed update to the default fold accumlator variable.
|
||||
// @result is not normally accessible from source, preventing accidental or intentional collisions
|
||||
// in user expressions.
|
||||
const HiddenAccumulatorName = "@result"
|
||||
|
||||
type quantifierKind int
|
||||
|
||||
const (
|
||||
@@ -336,6 +350,10 @@ func MakeMap(eh ExprHelper, target ast.Expr, args []ast.Expr) (ast.Expr, *common
|
||||
if !found {
|
||||
return nil, eh.NewError(args[0].ID(), "argument is not an identifier")
|
||||
}
|
||||
accu := eh.AccuIdentName()
|
||||
if v == accu || v == AccumulatorName {
|
||||
return nil, eh.NewError(args[0].ID(), "iteration variable overwrites accumulator variable")
|
||||
}
|
||||
|
||||
var fn ast.Expr
|
||||
var filter ast.Expr
|
||||
@@ -355,7 +373,7 @@ func MakeMap(eh ExprHelper, target ast.Expr, args []ast.Expr) (ast.Expr, *common
|
||||
if filter != nil {
|
||||
step = eh.NewCall(operators.Conditional, filter, step, eh.NewAccuIdent())
|
||||
}
|
||||
return eh.NewComprehension(target, v, AccumulatorName, init, condition, step, eh.NewAccuIdent()), nil
|
||||
return eh.NewComprehension(target, v, accu, init, condition, step, eh.NewAccuIdent()), nil
|
||||
}
|
||||
|
||||
// MakeFilter expands the input call arguments into a comprehension which produces a list which contains
|
||||
@@ -366,13 +384,17 @@ func MakeFilter(eh ExprHelper, target ast.Expr, args []ast.Expr) (ast.Expr, *com
|
||||
if !found {
|
||||
return nil, eh.NewError(args[0].ID(), "argument is not an identifier")
|
||||
}
|
||||
accu := eh.AccuIdentName()
|
||||
if v == accu || v == AccumulatorName {
|
||||
return nil, eh.NewError(args[0].ID(), "iteration variable overwrites accumulator variable")
|
||||
}
|
||||
|
||||
filter := args[1]
|
||||
init := eh.NewList()
|
||||
condition := eh.NewLiteral(types.True)
|
||||
step := eh.NewCall(operators.Add, eh.NewAccuIdent(), eh.NewList(args[0]))
|
||||
step = eh.NewCall(operators.Conditional, filter, step, eh.NewAccuIdent())
|
||||
return eh.NewComprehension(target, v, AccumulatorName, init, condition, step, eh.NewAccuIdent()), nil
|
||||
return eh.NewComprehension(target, v, accu, init, condition, step, eh.NewAccuIdent()), nil
|
||||
}
|
||||
|
||||
// MakeHas expands the input call arguments into a presence test, e.g. has(<operand>.field)
|
||||
@@ -389,6 +411,10 @@ func makeQuantifier(kind quantifierKind, eh ExprHelper, target ast.Expr, args []
|
||||
if !found {
|
||||
return nil, eh.NewError(args[0].ID(), "argument must be a simple name")
|
||||
}
|
||||
accu := eh.AccuIdentName()
|
||||
if v == accu || v == AccumulatorName {
|
||||
return nil, eh.NewError(args[0].ID(), "iteration variable overwrites accumulator variable")
|
||||
}
|
||||
|
||||
var init ast.Expr
|
||||
var condition ast.Expr
|
||||
@@ -416,7 +442,7 @@ func makeQuantifier(kind quantifierKind, eh ExprHelper, target ast.Expr, args []
|
||||
default:
|
||||
return nil, eh.NewError(args[0].ID(), fmt.Sprintf("unrecognized quantifier '%v'", kind))
|
||||
}
|
||||
return eh.NewComprehension(target, v, AccumulatorName, init, condition, step, result), nil
|
||||
return eh.NewComprehension(target, v, accu, init, condition, step, result), nil
|
||||
}
|
||||
|
||||
func extractIdent(e ast.Expr) (string, bool) {
|
||||
|
||||
23
vendor/github.com/google/cel-go/parser/options.go
generated
vendored
23
vendor/github.com/google/cel-go/parser/options.go
generated
vendored
@@ -26,6 +26,8 @@ type options struct {
|
||||
populateMacroCalls bool
|
||||
enableOptionalSyntax bool
|
||||
enableVariadicOperatorASTs bool
|
||||
enableIdentEscapeSyntax bool
|
||||
enableHiddenAccumulatorName bool
|
||||
}
|
||||
|
||||
// Option configures the behavior of the parser.
|
||||
@@ -127,6 +129,27 @@ func EnableOptionalSyntax(optionalSyntax bool) Option {
|
||||
}
|
||||
}
|
||||
|
||||
// EnableIdentEscapeSyntax enables backtick (`) escaped field identifiers. This
|
||||
// supports extended types of characters in identifiers, e.g. foo.`baz-bar`.
|
||||
func EnableIdentEscapeSyntax(enableIdentEscapeSyntax bool) Option {
|
||||
return func(opts *options) error {
|
||||
opts.enableIdentEscapeSyntax = enableIdentEscapeSyntax
|
||||
return nil
|
||||
}
|
||||
}
|
||||
|
||||
// EnableHiddenAccumulatorName uses an accumulator variable name that is not a
|
||||
// normally accessible identifier in source for comprehension macros. Compatibility notes:
|
||||
// with this option enabled, a parsed AST would be semantically the same as if disabled, but would
|
||||
// have different internal identifiers in any of the built-in comprehension sub-expressions. When
|
||||
// disabled, it is possible but almost certainly a logic error to access the accumulator variable.
|
||||
func EnableHiddenAccumulatorName(enabled bool) Option {
|
||||
return func(opts *options) error {
|
||||
opts.enableHiddenAccumulatorName = enabled
|
||||
return nil
|
||||
}
|
||||
}
|
||||
|
||||
// EnableVariadicOperatorASTs enables a compact representation of chained like-kind commutative
|
||||
// operators. e.g. `a || b || c || d` -> `call(op='||', args=[a, b, c, d])`
|
||||
//
|
||||
|
||||
85
vendor/github.com/google/cel-go/parser/parser.go
generated
vendored
85
vendor/github.com/google/cel-go/parser/parser.go
generated
vendored
@@ -17,6 +17,7 @@
|
||||
package parser
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"fmt"
|
||||
"regexp"
|
||||
"strconv"
|
||||
@@ -40,6 +41,7 @@ type Parser struct {
|
||||
// NewParser builds and returns a new Parser using the provided options.
|
||||
func NewParser(opts ...Option) (*Parser, error) {
|
||||
p := &Parser{}
|
||||
p.enableHiddenAccumulatorName = true
|
||||
for _, opt := range opts {
|
||||
if err := opt(&p.options); err != nil {
|
||||
return nil, err
|
||||
@@ -88,7 +90,11 @@ func mustNewParser(opts ...Option) *Parser {
|
||||
// Parse parses the expression represented by source and returns the result.
|
||||
func (p *Parser) Parse(source common.Source) (*ast.AST, *common.Errors) {
|
||||
errs := common.NewErrors(source)
|
||||
fac := ast.NewExprFactory()
|
||||
accu := AccumulatorName
|
||||
if p.enableHiddenAccumulatorName {
|
||||
accu = HiddenAccumulatorName
|
||||
}
|
||||
fac := ast.NewExprFactoryWithAccumulator(accu)
|
||||
impl := parser{
|
||||
errors: &parseErrors{errs},
|
||||
exprFactory: fac,
|
||||
@@ -101,6 +107,7 @@ func (p *Parser) Parse(source common.Source) (*ast.AST, *common.Errors) {
|
||||
populateMacroCalls: p.populateMacroCalls,
|
||||
enableOptionalSyntax: p.enableOptionalSyntax,
|
||||
enableVariadicOperatorASTs: p.enableVariadicOperatorASTs,
|
||||
enableIdentEscapeSyntax: p.enableIdentEscapeSyntax,
|
||||
}
|
||||
buf, ok := source.(runes.Buffer)
|
||||
if !ok {
|
||||
@@ -143,6 +150,27 @@ var reservedIds = map[string]struct{}{
|
||||
"while": {},
|
||||
}
|
||||
|
||||
func unescapeIdent(in string) (string, error) {
|
||||
if len(in) <= 2 {
|
||||
return "", errors.New("invalid escaped identifier: underflow")
|
||||
}
|
||||
return in[1 : len(in)-1], nil
|
||||
}
|
||||
|
||||
// normalizeIdent returns the interpreted identifier.
|
||||
func (p *parser) normalizeIdent(ctx gen.IEscapeIdentContext) (string, error) {
|
||||
switch ident := ctx.(type) {
|
||||
case *gen.SimpleIdentifierContext:
|
||||
return ident.GetId().GetText(), nil
|
||||
case *gen.EscapedIdentifierContext:
|
||||
if !p.enableIdentEscapeSyntax {
|
||||
return "", errors.New("unsupported syntax: '`'")
|
||||
}
|
||||
return unescapeIdent(ident.GetId().GetText())
|
||||
}
|
||||
return "", errors.New("unsupported ident kind")
|
||||
}
|
||||
|
||||
// Parse converts a source input a parsed expression.
|
||||
// This function calls ParseWithMacros with AllMacros.
|
||||
//
|
||||
@@ -296,6 +324,7 @@ type parser struct {
|
||||
populateMacroCalls bool
|
||||
enableOptionalSyntax bool
|
||||
enableVariadicOperatorASTs bool
|
||||
enableIdentEscapeSyntax bool
|
||||
}
|
||||
|
||||
var _ gen.CELVisitor = (*parser)(nil)
|
||||
@@ -369,8 +398,10 @@ func (p *parser) Visit(tree antlr.ParseTree) any {
|
||||
return out
|
||||
case *gen.LogicalNotContext:
|
||||
return p.VisitLogicalNot(tree)
|
||||
case *gen.IdentOrGlobalCallContext:
|
||||
return p.VisitIdentOrGlobalCall(tree)
|
||||
case *gen.IdentContext:
|
||||
return p.VisitIdent(tree)
|
||||
case *gen.GlobalCallContext:
|
||||
return p.VisitGlobalCall(tree)
|
||||
case *gen.SelectContext:
|
||||
p.checkAndIncrementRecursionDepth()
|
||||
out := p.VisitSelect(tree)
|
||||
@@ -538,7 +569,10 @@ func (p *parser) VisitSelect(ctx *gen.SelectContext) any {
|
||||
if ctx.GetId() == nil || ctx.GetOp() == nil {
|
||||
return p.helper.newExpr(ctx)
|
||||
}
|
||||
id := ctx.GetId().GetText()
|
||||
id, err := p.normalizeIdent(ctx.GetId())
|
||||
if err != nil {
|
||||
p.reportError(ctx.GetId(), "%v", err)
|
||||
}
|
||||
if ctx.GetOpt() != nil {
|
||||
if !p.enableOptionalSyntax {
|
||||
return p.reportError(ctx.GetOp(), "unsupported syntax '.?'")
|
||||
@@ -622,12 +656,14 @@ func (p *parser) VisitIFieldInitializerList(ctx gen.IFieldInitializerListContext
|
||||
p.reportError(optField, "unsupported syntax '?'")
|
||||
continue
|
||||
}
|
||||
|
||||
// The field may be empty due to a prior error.
|
||||
id := optField.IDENTIFIER()
|
||||
if id == nil {
|
||||
return []ast.EntryExpr{}
|
||||
fieldName, err := p.normalizeIdent(optField.EscapeIdent())
|
||||
if err != nil {
|
||||
p.reportError(ctx, "%v", err)
|
||||
continue
|
||||
}
|
||||
fieldName := id.GetText()
|
||||
|
||||
value := p.Visit(vals[i]).(ast.Expr)
|
||||
field := p.helper.newObjectField(initID, fieldName, value, optional)
|
||||
result[i] = field
|
||||
@@ -635,8 +671,8 @@ func (p *parser) VisitIFieldInitializerList(ctx gen.IFieldInitializerListContext
|
||||
return result
|
||||
}
|
||||
|
||||
// Visit a parse tree produced by CELParser#IdentOrGlobalCall.
|
||||
func (p *parser) VisitIdentOrGlobalCall(ctx *gen.IdentOrGlobalCallContext) any {
|
||||
// Visit a parse tree produced by CELParser#Ident.
|
||||
func (p *parser) VisitIdent(ctx *gen.IdentContext) any {
|
||||
identName := ""
|
||||
if ctx.GetLeadingDot() != nil {
|
||||
identName = "."
|
||||
@@ -651,13 +687,30 @@ func (p *parser) VisitIdentOrGlobalCall(ctx *gen.IdentOrGlobalCallContext) any {
|
||||
return p.reportError(ctx, "reserved identifier: %s", id)
|
||||
}
|
||||
identName += id
|
||||
if ctx.GetOp() != nil {
|
||||
opID := p.helper.id(ctx.GetOp())
|
||||
return p.globalCallOrMacro(opID, identName, p.visitExprList(ctx.GetArgs())...)
|
||||
}
|
||||
return p.helper.newIdent(ctx.GetId(), identName)
|
||||
}
|
||||
|
||||
// Visit a parse tree produced by CELParser#GlobalCallContext.
|
||||
func (p *parser) VisitGlobalCall(ctx *gen.GlobalCallContext) any {
|
||||
identName := ""
|
||||
if ctx.GetLeadingDot() != nil {
|
||||
identName = "."
|
||||
}
|
||||
// Handle the error case where no valid identifier is specified.
|
||||
if ctx.GetId() == nil {
|
||||
return p.helper.newExpr(ctx)
|
||||
}
|
||||
// Handle reserved identifiers.
|
||||
id := ctx.GetId().GetText()
|
||||
if _, ok := reservedIds[id]; ok {
|
||||
return p.reportError(ctx, "reserved identifier: %s", id)
|
||||
}
|
||||
identName += id
|
||||
opID := p.helper.id(ctx.GetOp())
|
||||
return p.globalCallOrMacro(opID, identName, p.visitExprList(ctx.GetArgs())...)
|
||||
|
||||
}
|
||||
|
||||
// Visit a parse tree produced by CELParser#CreateList.
|
||||
func (p *parser) VisitCreateList(ctx *gen.CreateListContext) any {
|
||||
listID := p.helper.id(ctx.GetOp())
|
||||
@@ -756,7 +809,7 @@ func (p *parser) VisitDouble(ctx *gen.DoubleContext) any {
|
||||
|
||||
// Visit a parse tree produced by CELParser#String.
|
||||
func (p *parser) VisitString(ctx *gen.StringContext) any {
|
||||
s := p.unquote(ctx, ctx.GetText(), false)
|
||||
s := p.unquote(ctx, ctx.GetTok().GetText(), false)
|
||||
return p.helper.newLiteralString(ctx, s)
|
||||
}
|
||||
|
||||
@@ -922,7 +975,7 @@ func (p *parser) expandMacro(exprID int64, function string, target ast.Expr, arg
|
||||
loc = p.helper.getLocation(exprID)
|
||||
}
|
||||
p.helper.deleteID(exprID)
|
||||
return p.reportError(loc, err.Message), true
|
||||
return p.reportError(loc, "%s", err.Message), true
|
||||
}
|
||||
// A nil value from the macro indicates that the macro implementation decided that
|
||||
// an expansion should not be performed.
|
||||
|
||||
42
vendor/github.com/google/cel-go/parser/unescape.go
generated
vendored
42
vendor/github.com/google/cel-go/parser/unescape.go
generated
vendored
@@ -15,7 +15,7 @@
|
||||
package parser
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"errors"
|
||||
"strings"
|
||||
"unicode/utf8"
|
||||
)
|
||||
@@ -30,7 +30,7 @@ func unescape(value string, isBytes bool) (string, error) {
|
||||
|
||||
// Nothing to unescape / decode.
|
||||
if n < 2 {
|
||||
return value, fmt.Errorf("unable to unescape string")
|
||||
return value, errors.New("unable to unescape string")
|
||||
}
|
||||
|
||||
// Raw string preceded by the 'r|R' prefix.
|
||||
@@ -43,7 +43,7 @@ func unescape(value string, isBytes bool) (string, error) {
|
||||
|
||||
// Quoted string of some form, must have same first and last char.
|
||||
if value[0] != value[n-1] || (value[0] != '"' && value[0] != '\'') {
|
||||
return value, fmt.Errorf("unable to unescape string")
|
||||
return value, errors.New("unable to unescape string")
|
||||
}
|
||||
|
||||
// Normalize the multi-line CEL string representation to a standard
|
||||
@@ -51,12 +51,12 @@ func unescape(value string, isBytes bool) (string, error) {
|
||||
if n >= 6 {
|
||||
if strings.HasPrefix(value, "'''") {
|
||||
if !strings.HasSuffix(value, "'''") {
|
||||
return value, fmt.Errorf("unable to unescape string")
|
||||
return value, errors.New("unable to unescape string")
|
||||
}
|
||||
value = "\"" + value[3:n-3] + "\""
|
||||
} else if strings.HasPrefix(value, `"""`) {
|
||||
if !strings.HasSuffix(value, `"""`) {
|
||||
return value, fmt.Errorf("unable to unescape string")
|
||||
return value, errors.New("unable to unescape string")
|
||||
}
|
||||
value = "\"" + value[3:n-3] + "\""
|
||||
}
|
||||
@@ -90,10 +90,10 @@ func unescape(value string, isBytes bool) (string, error) {
|
||||
|
||||
// unescapeChar takes a string input and returns the following info:
|
||||
//
|
||||
// value - the escaped unicode rune at the front of the string.
|
||||
// encode - the value should be unicode-encoded
|
||||
// tail - the remainder of the input string.
|
||||
// err - error value, if the character could not be unescaped.
|
||||
// value - the escaped unicode rune at the front of the string.
|
||||
// encode - the value should be unicode-encoded
|
||||
// tail - the remainder of the input string.
|
||||
// err - error value, if the character could not be unescaped.
|
||||
//
|
||||
// When encode is true the return value may still fit within a single byte,
|
||||
// but unicode encoding is attempted which is more expensive than when the
|
||||
@@ -113,7 +113,7 @@ func unescapeChar(s string, isBytes bool) (value rune, encode bool, tail string,
|
||||
|
||||
// 2. Last character is the start of an escape sequence.
|
||||
if len(s) <= 1 {
|
||||
err = fmt.Errorf("unable to unescape string, found '\\' as last character")
|
||||
err = errors.New("unable to unescape string, found '\\' as last character")
|
||||
return
|
||||
}
|
||||
|
||||
@@ -157,32 +157,32 @@ func unescapeChar(s string, isBytes bool) (value rune, encode bool, tail string,
|
||||
case 'u':
|
||||
n = 4
|
||||
if isBytes {
|
||||
err = fmt.Errorf("unable to unescape string")
|
||||
err = errors.New("unable to unescape string")
|
||||
return
|
||||
}
|
||||
case 'U':
|
||||
n = 8
|
||||
if isBytes {
|
||||
err = fmt.Errorf("unable to unescape string")
|
||||
err = errors.New("unable to unescape string")
|
||||
return
|
||||
}
|
||||
}
|
||||
var v rune
|
||||
if len(s) < n {
|
||||
err = fmt.Errorf("unable to unescape string")
|
||||
err = errors.New("unable to unescape string")
|
||||
return
|
||||
}
|
||||
for j := 0; j < n; j++ {
|
||||
x, ok := unhex(s[j])
|
||||
if !ok {
|
||||
err = fmt.Errorf("unable to unescape string")
|
||||
err = errors.New("unable to unescape string")
|
||||
return
|
||||
}
|
||||
v = v<<4 | x
|
||||
}
|
||||
s = s[n:]
|
||||
if !isBytes && v > utf8.MaxRune {
|
||||
err = fmt.Errorf("unable to unescape string")
|
||||
if !isBytes && !utf8.ValidRune(v) {
|
||||
err = errors.New("invalid unicode code point")
|
||||
return
|
||||
}
|
||||
value = v
|
||||
@@ -190,20 +190,20 @@ func unescapeChar(s string, isBytes bool) (value rune, encode bool, tail string,
|
||||
// 5. Octal escape sequences, must be three digits \[0-3][0-7][0-7]
|
||||
case '0', '1', '2', '3':
|
||||
if len(s) < 2 {
|
||||
err = fmt.Errorf("unable to unescape octal sequence in string")
|
||||
err = errors.New("unable to unescape octal sequence in string")
|
||||
return
|
||||
}
|
||||
v := rune(c - '0')
|
||||
for j := 0; j < 2; j++ {
|
||||
x := s[j]
|
||||
if x < '0' || x > '7' {
|
||||
err = fmt.Errorf("unable to unescape octal sequence in string")
|
||||
err = errors.New("unable to unescape octal sequence in string")
|
||||
return
|
||||
}
|
||||
v = v*8 + rune(x-'0')
|
||||
}
|
||||
if !isBytes && v > utf8.MaxRune {
|
||||
err = fmt.Errorf("unable to unescape string")
|
||||
if !isBytes && !utf8.ValidRune(v) {
|
||||
err = errors.New("invalid unicode code point")
|
||||
return
|
||||
}
|
||||
value = v
|
||||
@@ -212,7 +212,7 @@ func unescapeChar(s string, isBytes bool) (value rune, encode bool, tail string,
|
||||
|
||||
// Unknown escape sequence.
|
||||
default:
|
||||
err = fmt.Errorf("unable to unescape string")
|
||||
err = errors.New("unable to unescape string")
|
||||
}
|
||||
|
||||
tail = s
|
||||
|
||||
42
vendor/github.com/google/cel-go/parser/unparser.go
generated
vendored
42
vendor/github.com/google/cel-go/parser/unparser.go
generated
vendored
@@ -17,12 +17,14 @@ package parser
|
||||
import (
|
||||
"errors"
|
||||
"fmt"
|
||||
"regexp"
|
||||
"strconv"
|
||||
"strings"
|
||||
|
||||
"github.com/google/cel-go/common/ast"
|
||||
"github.com/google/cel-go/common/operators"
|
||||
"github.com/google/cel-go/common/types"
|
||||
"github.com/google/cel-go/common/types/ref"
|
||||
)
|
||||
|
||||
// Unparse takes an input expression and source position information and generates a human-readable
|
||||
@@ -65,6 +67,15 @@ func Unparse(expr ast.Expr, info *ast.SourceInfo, opts ...UnparserOption) (strin
|
||||
return un.str.String(), nil
|
||||
}
|
||||
|
||||
var identifierPartPattern *regexp.Regexp = regexp.MustCompile(`^[A-Za-z_][0-9A-Za-z_]*$`)
|
||||
|
||||
func maybeQuoteField(field string) string {
|
||||
if !identifierPartPattern.MatchString(field) || field == "in" {
|
||||
return "`" + field + "`"
|
||||
}
|
||||
return field
|
||||
}
|
||||
|
||||
// unparser visits an expression to reconstruct a human-readable string from an AST.
|
||||
type unparser struct {
|
||||
str strings.Builder
|
||||
@@ -263,8 +274,17 @@ func (un *unparser) visitCallUnary(expr ast.Expr) error {
|
||||
return un.visitMaybeNested(args[0], nested)
|
||||
}
|
||||
|
||||
func (un *unparser) visitConst(expr ast.Expr) error {
|
||||
val := expr.AsLiteral()
|
||||
func (un *unparser) visitConstVal(val ref.Val) error {
|
||||
optional := false
|
||||
if optVal, ok := val.(*types.Optional); ok {
|
||||
if !optVal.HasValue() {
|
||||
un.str.WriteString("optional.none()")
|
||||
return nil
|
||||
}
|
||||
optional = true
|
||||
un.str.WriteString("optional.of(")
|
||||
val = optVal.GetValue()
|
||||
}
|
||||
switch val := val.(type) {
|
||||
case types.Bool:
|
||||
un.str.WriteString(strconv.FormatBool(bool(val)))
|
||||
@@ -293,7 +313,21 @@ func (un *unparser) visitConst(expr ast.Expr) error {
|
||||
ui := strconv.FormatUint(uint64(val), 10)
|
||||
un.str.WriteString(ui)
|
||||
un.str.WriteString("u")
|
||||
case *types.Optional:
|
||||
if err := un.visitConstVal(val); err != nil {
|
||||
return err
|
||||
}
|
||||
default:
|
||||
return errors.New("unsupported constant")
|
||||
}
|
||||
if optional {
|
||||
un.str.WriteString(")")
|
||||
}
|
||||
return nil
|
||||
}
|
||||
func (un *unparser) visitConst(expr ast.Expr) error {
|
||||
val := expr.AsLiteral()
|
||||
if err := un.visitConstVal(val); err != nil {
|
||||
return fmt.Errorf("unsupported constant: %v", expr)
|
||||
}
|
||||
return nil
|
||||
@@ -352,7 +386,7 @@ func (un *unparser) visitSelectInternal(operand ast.Expr, testOnly bool, op stri
|
||||
return err
|
||||
}
|
||||
un.str.WriteString(op)
|
||||
un.str.WriteString(field)
|
||||
un.str.WriteString(maybeQuoteField(field))
|
||||
if testOnly {
|
||||
un.str.WriteString(")")
|
||||
}
|
||||
@@ -370,7 +404,7 @@ func (un *unparser) visitStructMsg(expr ast.Expr) error {
|
||||
if field.IsOptional() {
|
||||
un.str.WriteString("?")
|
||||
}
|
||||
un.str.WriteString(f)
|
||||
un.str.WriteString(maybeQuoteField(f))
|
||||
un.str.WriteString(": ")
|
||||
v := field.Value()
|
||||
err := un.visit(v)
|
||||
|
||||
Reference in New Issue
Block a user