vidl

package
v0.0.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 10, 2025 License: Apache-2.0 Imports: 7 Imported by: 0

README

/*****************************************************************************/

Install antlr4 version 4.13.2

```bash
curl -O https://www.antlr.org/download/antlr-4.13.2-complete.jar
```

Then configure the tool directory according to the official website requirements

```bash
antlr413 -Dlanguage=Go -package parser *.g4
```

Execute the above command in the current directory to automatically generate parser code

/*****************************************************************************/

安装 antlr4 4.13.2 版本

```bash
curl -O https://www.antlr.org/download/antlr-4.13.2-complete.jar
```

然后按照官网要求配置好工具目录

```bash
antlr413 -Dlanguage=Go -package parser *.g4
```

在当前目录下执行上述命令即可自动生成 parser 代码

/*****************************************************************************/

Documentation

Index

Constants

View Source
const (
	VLexerKW_DOLLAR        = 1
	VLexerKW_NIL           = 2
	VLexerEQUAL            = 3
	VLexerNOT_EQUAL        = 4
	VLexerLESS_THAN        = 5
	VLexerGREATER_THAN     = 6
	VLexerLESS_OR_EQUAL    = 7
	VLexerGREATER_OR_EQUAL = 8
	VLexerLOGICAL_AND      = 9
	VLexerLOGICAL_OR       = 10
	VLexerLOGICAL_NOT      = 11
	VLexerLEFT_PAREN       = 12
	VLexerRIGHT_PAREN      = 13
	VLexerCOMMA            = 14
	VLexerSTRING           = 15
	VLexerINTEGER          = 16
	VLexerFLOAT            = 17
	VLexerIDENTIFIER       = 18
	VLexerWHITESPACE       = 19
)

VLexer tokens.

View Source
const (
	VParserEOF              = antlr.TokenEOF
	VParserKW_DOLLAR        = 1
	VParserKW_NIL           = 2
	VParserEQUAL            = 3
	VParserNOT_EQUAL        = 4
	VParserLESS_THAN        = 5
	VParserGREATER_THAN     = 6
	VParserLESS_OR_EQUAL    = 7
	VParserGREATER_OR_EQUAL = 8
	VParserLOGICAL_AND      = 9
	VParserLOGICAL_OR       = 10
	VParserLOGICAL_NOT      = 11
	VParserLEFT_PAREN       = 12
	VParserRIGHT_PAREN      = 13
	VParserCOMMA            = 14
	VParserSTRING           = 15
	VParserINTEGER          = 16
	VParserFLOAT            = 17
	VParserIDENTIFIER       = 18
	VParserWHITESPACE       = 19
)

VParser tokens.

View Source
const (
	VParserRULE_validateExpr   = 0
	VParserRULE_logicalOrExpr  = 1
	VParserRULE_logicalAndExpr = 2
	VParserRULE_equalityExpr   = 3
	VParserRULE_relationalExpr = 4
	VParserRULE_unaryExpr      = 5
	VParserRULE_primaryExpr    = 6
	VParserRULE_functionCall   = 7
)

VParser rules.

View Source
const VLexerWS_CHAN = 2

VLexerWS_CHAN is the VLexer channel.

Variables

View Source
var VLexerLexerStaticData struct {
	ChannelNames           []string
	ModeNames              []string
	LiteralNames           []string
	SymbolicNames          []string
	RuleNames              []string
	PredictionContextCache *antlr.PredictionContextCache
	// contains filtered or unexported fields
}
View Source
var VParserParserStaticData struct {
	LiteralNames           []string
	SymbolicNames          []string
	RuleNames              []string
	PredictionContextCache *antlr.PredictionContextCache
	// contains filtered or unexported fields
}

Functions

func InitEmptyEqualityExprContext

func InitEmptyEqualityExprContext(p *EqualityExprContext)

func InitEmptyFunctionCallContext

func InitEmptyFunctionCallContext(p *FunctionCallContext)

func InitEmptyLogicalAndExprContext

func InitEmptyLogicalAndExprContext(p *LogicalAndExprContext)

func InitEmptyLogicalOrExprContext

func InitEmptyLogicalOrExprContext(p *LogicalOrExprContext)

func InitEmptyPrimaryExprContext

func InitEmptyPrimaryExprContext(p *PrimaryExprContext)

func InitEmptyRelationalExprContext

func InitEmptyRelationalExprContext(p *RelationalExprContext)

func InitEmptyUnaryExprContext

func InitEmptyUnaryExprContext(p *UnaryExprContext)

func InitEmptyValidateExprContext

func InitEmptyValidateExprContext(p *ValidateExprContext)

func VLexerInit

func VLexerInit()

VLexerInit initializes any static state used to implement VLexer. By default the static state used to implement the lexer is lazily initialized during the first call to NewVLexer(). You can call this function if you wish to initialize the static state ahead of time.

func VParserInit

func VParserInit()

VParserInit initializes any static state used to implement VParser. By default the static state used to implement the parser is lazily initialized during the first call to NewVParser(). You can call this function if you wish to initialize the static state ahead of time.

Types

type BaseVParserListener

type BaseVParserListener struct{}

BaseVParserListener is a complete listener for a parse tree produced by VParser.

func (*BaseVParserListener) EnterEqualityExpr

func (s *BaseVParserListener) EnterEqualityExpr(ctx *EqualityExprContext)

EnterEqualityExpr is called when production equalityExpr is entered.

func (*BaseVParserListener) EnterEveryRule

func (s *BaseVParserListener) EnterEveryRule(ctx antlr.ParserRuleContext)

EnterEveryRule is called when any rule is entered.

func (*BaseVParserListener) EnterFunctionCall

func (s *BaseVParserListener) EnterFunctionCall(ctx *FunctionCallContext)

EnterFunctionCall is called when production functionCall is entered.

func (*BaseVParserListener) EnterLogicalAndExpr

func (s *BaseVParserListener) EnterLogicalAndExpr(ctx *LogicalAndExprContext)

EnterLogicalAndExpr is called when production logicalAndExpr is entered.

func (*BaseVParserListener) EnterLogicalOrExpr

func (s *BaseVParserListener) EnterLogicalOrExpr(ctx *LogicalOrExprContext)

EnterLogicalOrExpr is called when production logicalOrExpr is entered.

func (*BaseVParserListener) EnterPrimaryExpr

func (s *BaseVParserListener) EnterPrimaryExpr(ctx *PrimaryExprContext)

EnterPrimaryExpr is called when production primaryExpr is entered.

func (*BaseVParserListener) EnterRelationalExpr

func (s *BaseVParserListener) EnterRelationalExpr(ctx *RelationalExprContext)

EnterRelationalExpr is called when production relationalExpr is entered.

func (*BaseVParserListener) EnterUnaryExpr

func (s *BaseVParserListener) EnterUnaryExpr(ctx *UnaryExprContext)

EnterUnaryExpr is called when production unaryExpr is entered.

func (*BaseVParserListener) EnterValidateExpr

func (s *BaseVParserListener) EnterValidateExpr(ctx *ValidateExprContext)

EnterValidateExpr is called when production validateExpr is entered.

func (*BaseVParserListener) ExitEqualityExpr

func (s *BaseVParserListener) ExitEqualityExpr(ctx *EqualityExprContext)

ExitEqualityExpr is called when production equalityExpr is exited.

func (*BaseVParserListener) ExitEveryRule

func (s *BaseVParserListener) ExitEveryRule(ctx antlr.ParserRuleContext)

ExitEveryRule is called when any rule is exited.

func (*BaseVParserListener) ExitFunctionCall

func (s *BaseVParserListener) ExitFunctionCall(ctx *FunctionCallContext)

ExitFunctionCall is called when production functionCall is exited.

func (*BaseVParserListener) ExitLogicalAndExpr

func (s *BaseVParserListener) ExitLogicalAndExpr(ctx *LogicalAndExprContext)

ExitLogicalAndExpr is called when production logicalAndExpr is exited.

func (*BaseVParserListener) ExitLogicalOrExpr

func (s *BaseVParserListener) ExitLogicalOrExpr(ctx *LogicalOrExprContext)

ExitLogicalOrExpr is called when production logicalOrExpr is exited.

func (*BaseVParserListener) ExitPrimaryExpr

func (s *BaseVParserListener) ExitPrimaryExpr(ctx *PrimaryExprContext)

ExitPrimaryExpr is called when production primaryExpr is exited.

func (*BaseVParserListener) ExitRelationalExpr

func (s *BaseVParserListener) ExitRelationalExpr(ctx *RelationalExprContext)

ExitRelationalExpr is called when production relationalExpr is exited.

func (*BaseVParserListener) ExitUnaryExpr

func (s *BaseVParserListener) ExitUnaryExpr(ctx *UnaryExprContext)

ExitUnaryExpr is called when production unaryExpr is exited.

func (*BaseVParserListener) ExitValidateExpr

func (s *BaseVParserListener) ExitValidateExpr(ctx *ValidateExprContext)

ExitValidateExpr is called when production validateExpr is exited.

func (*BaseVParserListener) VisitErrorNode

func (s *BaseVParserListener) VisitErrorNode(node antlr.ErrorNode)

VisitErrorNode is called when an error node is visited.

func (*BaseVParserListener) VisitTerminal

func (s *BaseVParserListener) VisitTerminal(node antlr.TerminalNode)

VisitTerminal is called when a terminal node is visited.

type BinaryExpr

type BinaryExpr struct {
	Left  Expr   // Left-hand side expression
	Op    string // Operator (e.g., &&, ||, ==, <)
	Right Expr   // Right-hand side expression
}

BinaryExpr represents a binary expression (e.g., a && b, x == y).

func (BinaryExpr) Text

func (e BinaryExpr) Text() string

type EqualityExprContext

type EqualityExprContext struct {
	antlr.BaseParserRuleContext
	// contains filtered or unexported fields
}

func NewEmptyEqualityExprContext

func NewEmptyEqualityExprContext() *EqualityExprContext

func NewEqualityExprContext

func NewEqualityExprContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *EqualityExprContext

func (*EqualityExprContext) AllRelationalExpr

func (s *EqualityExprContext) AllRelationalExpr() []IRelationalExprContext

func (*EqualityExprContext) EQUAL

func (s *EqualityExprContext) EQUAL() antlr.TerminalNode

func (*EqualityExprContext) EnterRule

func (s *EqualityExprContext) EnterRule(listener antlr.ParseTreeListener)

func (*EqualityExprContext) ExitRule

func (s *EqualityExprContext) ExitRule(listener antlr.ParseTreeListener)

func (*EqualityExprContext) GetParser

func (s *EqualityExprContext) GetParser() antlr.Parser

func (*EqualityExprContext) GetRuleContext

func (s *EqualityExprContext) GetRuleContext() antlr.RuleContext

func (*EqualityExprContext) IsEqualityExprContext

func (*EqualityExprContext) IsEqualityExprContext()

func (*EqualityExprContext) NOT_EQUAL

func (s *EqualityExprContext) NOT_EQUAL() antlr.TerminalNode

func (*EqualityExprContext) RelationalExpr

func (s *EqualityExprContext) RelationalExpr(i int) IRelationalExprContext

func (*EqualityExprContext) ToStringTree

func (s *EqualityExprContext) ToStringTree(ruleNames []string, recog antlr.Recognizer) string

type ErrorListener

type ErrorListener struct {
	*antlr.DefaultErrorListener
	// contains filtered or unexported fields
}

ErrorListener implements a custom ANTLR error listener that records syntax errors.

func (*ErrorListener) SyntaxError

func (l *ErrorListener) SyntaxError(_ antlr.Recognizer, _ any, line, column int, msg string, e antlr.RecognitionException)

SyntaxError is called by ANTLR when a syntax error occurs.

type Expr

type Expr interface {
	Text() string
}

Expr represents a generic expression node.

func Parse

func Parse(s string) (expr Expr, err error)

Parse parses the input string and returns an Expr AST.

type FuncCall

type FuncCall struct {
	Name string // Function name
	Args []Expr // Arguments
}

FuncCall represents a function call expression with arguments.

func (FuncCall) Text

func (f FuncCall) Text() string

type FunctionCallContext

type FunctionCallContext struct {
	antlr.BaseParserRuleContext
	// contains filtered or unexported fields
}

func NewEmptyFunctionCallContext

func NewEmptyFunctionCallContext() *FunctionCallContext

func NewFunctionCallContext

func NewFunctionCallContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *FunctionCallContext

func (*FunctionCallContext) AllCOMMA

func (s *FunctionCallContext) AllCOMMA() []antlr.TerminalNode

func (*FunctionCallContext) AllValidateExpr

func (s *FunctionCallContext) AllValidateExpr() []IValidateExprContext

func (*FunctionCallContext) COMMA

func (s *FunctionCallContext) COMMA(i int) antlr.TerminalNode

func (*FunctionCallContext) EnterRule

func (s *FunctionCallContext) EnterRule(listener antlr.ParseTreeListener)

func (*FunctionCallContext) ExitRule

func (s *FunctionCallContext) ExitRule(listener antlr.ParseTreeListener)

func (*FunctionCallContext) GetParser

func (s *FunctionCallContext) GetParser() antlr.Parser

func (*FunctionCallContext) GetRuleContext

func (s *FunctionCallContext) GetRuleContext() antlr.RuleContext

func (*FunctionCallContext) IDENTIFIER

func (s *FunctionCallContext) IDENTIFIER() antlr.TerminalNode

func (*FunctionCallContext) IsFunctionCallContext

func (*FunctionCallContext) IsFunctionCallContext()

func (*FunctionCallContext) LEFT_PAREN

func (s *FunctionCallContext) LEFT_PAREN() antlr.TerminalNode

func (*FunctionCallContext) RIGHT_PAREN

func (s *FunctionCallContext) RIGHT_PAREN() antlr.TerminalNode

func (*FunctionCallContext) ToStringTree

func (s *FunctionCallContext) ToStringTree(ruleNames []string, recog antlr.Recognizer) string

func (*FunctionCallContext) ValidateExpr

func (s *FunctionCallContext) ValidateExpr(i int) IValidateExprContext

type IEqualityExprContext

type IEqualityExprContext interface {
	antlr.ParserRuleContext

	// GetParser returns the parser.
	GetParser() antlr.Parser

	// Getter signatures
	AllRelationalExpr() []IRelationalExprContext
	RelationalExpr(i int) IRelationalExprContext
	EQUAL() antlr.TerminalNode
	NOT_EQUAL() antlr.TerminalNode

	// IsEqualityExprContext differentiates from other interfaces.
	IsEqualityExprContext()
}

IEqualityExprContext is an interface to support dynamic dispatch.

type IFunctionCallContext

type IFunctionCallContext interface {
	antlr.ParserRuleContext

	// GetParser returns the parser.
	GetParser() antlr.Parser

	// Getter signatures
	IDENTIFIER() antlr.TerminalNode
	LEFT_PAREN() antlr.TerminalNode
	RIGHT_PAREN() antlr.TerminalNode
	AllValidateExpr() []IValidateExprContext
	ValidateExpr(i int) IValidateExprContext
	AllCOMMA() []antlr.TerminalNode
	COMMA(i int) antlr.TerminalNode

	// IsFunctionCallContext differentiates from other interfaces.
	IsFunctionCallContext()
}

IFunctionCallContext is an interface to support dynamic dispatch.

type ILogicalAndExprContext

type ILogicalAndExprContext interface {
	antlr.ParserRuleContext

	// GetParser returns the parser.
	GetParser() antlr.Parser

	// Getter signatures
	AllEqualityExpr() []IEqualityExprContext
	EqualityExpr(i int) IEqualityExprContext
	LOGICAL_AND() antlr.TerminalNode

	// IsLogicalAndExprContext differentiates from other interfaces.
	IsLogicalAndExprContext()
}

ILogicalAndExprContext is an interface to support dynamic dispatch.

type ILogicalOrExprContext

type ILogicalOrExprContext interface {
	antlr.ParserRuleContext

	// GetParser returns the parser.
	GetParser() antlr.Parser

	// Getter signatures
	AllLogicalAndExpr() []ILogicalAndExprContext
	LogicalAndExpr(i int) ILogicalAndExprContext
	LOGICAL_OR() antlr.TerminalNode

	// IsLogicalOrExprContext differentiates from other interfaces.
	IsLogicalOrExprContext()
}

ILogicalOrExprContext is an interface to support dynamic dispatch.

type IPrimaryExprContext

type IPrimaryExprContext interface {
	antlr.ParserRuleContext

	// GetParser returns the parser.
	GetParser() antlr.Parser

	// Getter signatures
	IDENTIFIER() antlr.TerminalNode
	KW_DOLLAR() antlr.TerminalNode
	KW_NIL() antlr.TerminalNode
	INTEGER() antlr.TerminalNode
	FLOAT() antlr.TerminalNode
	STRING() antlr.TerminalNode
	FunctionCall() IFunctionCallContext
	LEFT_PAREN() antlr.TerminalNode
	ValidateExpr() IValidateExprContext
	RIGHT_PAREN() antlr.TerminalNode

	// IsPrimaryExprContext differentiates from other interfaces.
	IsPrimaryExprContext()
}

IPrimaryExprContext is an interface to support dynamic dispatch.

type IRelationalExprContext

type IRelationalExprContext interface {
	antlr.ParserRuleContext

	// GetParser returns the parser.
	GetParser() antlr.Parser

	// Getter signatures
	AllUnaryExpr() []IUnaryExprContext
	UnaryExpr(i int) IUnaryExprContext
	LESS_THAN() antlr.TerminalNode
	LESS_OR_EQUAL() antlr.TerminalNode
	GREATER_THAN() antlr.TerminalNode
	GREATER_OR_EQUAL() antlr.TerminalNode

	// IsRelationalExprContext differentiates from other interfaces.
	IsRelationalExprContext()
}

IRelationalExprContext is an interface to support dynamic dispatch.

type IUnaryExprContext

type IUnaryExprContext interface {
	antlr.ParserRuleContext

	// GetParser returns the parser.
	GetParser() antlr.Parser

	// Getter signatures
	LOGICAL_NOT() antlr.TerminalNode
	UnaryExpr() IUnaryExprContext
	PrimaryExpr() IPrimaryExprContext

	// IsUnaryExprContext differentiates from other interfaces.
	IsUnaryExprContext()
}

IUnaryExprContext is an interface to support dynamic dispatch.

type IValidateExprContext

type IValidateExprContext interface {
	antlr.ParserRuleContext

	// GetParser returns the parser.
	GetParser() antlr.Parser

	// Getter signatures
	LogicalOrExpr() ILogicalOrExprContext

	// IsValidateExprContext differentiates from other interfaces.
	IsValidateExprContext()
}

IValidateExprContext is an interface to support dynamic dispatch.

type InnerExpr

type InnerExpr struct {
	Expr Expr
}

InnerExpr represents a parenthesized expression.

func (InnerExpr) Text

func (e InnerExpr) Text() string

type LogicalAndExprContext

type LogicalAndExprContext struct {
	antlr.BaseParserRuleContext
	// contains filtered or unexported fields
}

func NewEmptyLogicalAndExprContext

func NewEmptyLogicalAndExprContext() *LogicalAndExprContext

func NewLogicalAndExprContext

func NewLogicalAndExprContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *LogicalAndExprContext

func (*LogicalAndExprContext) AllEqualityExpr

func (s *LogicalAndExprContext) AllEqualityExpr() []IEqualityExprContext

func (*LogicalAndExprContext) EnterRule

func (s *LogicalAndExprContext) EnterRule(listener antlr.ParseTreeListener)

func (*LogicalAndExprContext) EqualityExpr

func (s *LogicalAndExprContext) EqualityExpr(i int) IEqualityExprContext

func (*LogicalAndExprContext) ExitRule

func (s *LogicalAndExprContext) ExitRule(listener antlr.ParseTreeListener)

func (*LogicalAndExprContext) GetParser

func (s *LogicalAndExprContext) GetParser() antlr.Parser

func (*LogicalAndExprContext) GetRuleContext

func (s *LogicalAndExprContext) GetRuleContext() antlr.RuleContext

func (*LogicalAndExprContext) IsLogicalAndExprContext

func (*LogicalAndExprContext) IsLogicalAndExprContext()

func (*LogicalAndExprContext) LOGICAL_AND

func (s *LogicalAndExprContext) LOGICAL_AND() antlr.TerminalNode

func (*LogicalAndExprContext) ToStringTree

func (s *LogicalAndExprContext) ToStringTree(ruleNames []string, recog antlr.Recognizer) string

type LogicalOrExprContext

type LogicalOrExprContext struct {
	antlr.BaseParserRuleContext
	// contains filtered or unexported fields
}

func NewEmptyLogicalOrExprContext

func NewEmptyLogicalOrExprContext() *LogicalOrExprContext

func NewLogicalOrExprContext

func NewLogicalOrExprContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *LogicalOrExprContext

func (*LogicalOrExprContext) AllLogicalAndExpr

func (s *LogicalOrExprContext) AllLogicalAndExpr() []ILogicalAndExprContext

func (*LogicalOrExprContext) EnterRule

func (s *LogicalOrExprContext) EnterRule(listener antlr.ParseTreeListener)

func (*LogicalOrExprContext) ExitRule

func (s *LogicalOrExprContext) ExitRule(listener antlr.ParseTreeListener)

func (*LogicalOrExprContext) GetParser

func (s *LogicalOrExprContext) GetParser() antlr.Parser

func (*LogicalOrExprContext) GetRuleContext

func (s *LogicalOrExprContext) GetRuleContext() antlr.RuleContext

func (*LogicalOrExprContext) IsLogicalOrExprContext

func (*LogicalOrExprContext) IsLogicalOrExprContext()

func (*LogicalOrExprContext) LOGICAL_OR

func (s *LogicalOrExprContext) LOGICAL_OR() antlr.TerminalNode

func (*LogicalOrExprContext) LogicalAndExpr

func (s *LogicalOrExprContext) LogicalAndExpr(i int) ILogicalAndExprContext

func (*LogicalOrExprContext) ToStringTree

func (s *LogicalOrExprContext) ToStringTree(ruleNames []string, recog antlr.Recognizer) string

type ParseTreeListener

type ParseTreeListener struct {
	BaseVParserListener
	Tokens *antlr.CommonTokenStream
	Expr   Expr
}

ParseTreeListener walks the parse tree and constructs the expression AST.

func (*ParseTreeListener) ExitValidateExpr

func (l *ParseTreeListener) ExitValidateExpr(ctx *ValidateExprContext)

type PrimaryExpr

type PrimaryExpr struct {
	Value string     // Literal value or identifier
	Call  *FuncCall  // Optional function call
	Inner *InnerExpr // Optional parenthesized expression
}

PrimaryExpr represents an atomic expression, which can be a literal, identifier, function call, or parenthesized expression.

func (PrimaryExpr) Text

func (e PrimaryExpr) Text() string

type PrimaryExprContext

type PrimaryExprContext struct {
	antlr.BaseParserRuleContext
	// contains filtered or unexported fields
}

func NewEmptyPrimaryExprContext

func NewEmptyPrimaryExprContext() *PrimaryExprContext

func NewPrimaryExprContext

func NewPrimaryExprContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *PrimaryExprContext

func (*PrimaryExprContext) EnterRule

func (s *PrimaryExprContext) EnterRule(listener antlr.ParseTreeListener)

func (*PrimaryExprContext) ExitRule

func (s *PrimaryExprContext) ExitRule(listener antlr.ParseTreeListener)

func (*PrimaryExprContext) FLOAT

func (s *PrimaryExprContext) FLOAT() antlr.TerminalNode

func (*PrimaryExprContext) FunctionCall

func (s *PrimaryExprContext) FunctionCall() IFunctionCallContext

func (*PrimaryExprContext) GetParser

func (s *PrimaryExprContext) GetParser() antlr.Parser

func (*PrimaryExprContext) GetRuleContext

func (s *PrimaryExprContext) GetRuleContext() antlr.RuleContext

func (*PrimaryExprContext) IDENTIFIER

func (s *PrimaryExprContext) IDENTIFIER() antlr.TerminalNode

func (*PrimaryExprContext) INTEGER

func (s *PrimaryExprContext) INTEGER() antlr.TerminalNode

func (*PrimaryExprContext) IsPrimaryExprContext

func (*PrimaryExprContext) IsPrimaryExprContext()

func (*PrimaryExprContext) KW_DOLLAR

func (s *PrimaryExprContext) KW_DOLLAR() antlr.TerminalNode

func (*PrimaryExprContext) KW_NIL

func (s *PrimaryExprContext) KW_NIL() antlr.TerminalNode

func (*PrimaryExprContext) LEFT_PAREN

func (s *PrimaryExprContext) LEFT_PAREN() antlr.TerminalNode

func (*PrimaryExprContext) RIGHT_PAREN

func (s *PrimaryExprContext) RIGHT_PAREN() antlr.TerminalNode

func (*PrimaryExprContext) STRING

func (s *PrimaryExprContext) STRING() antlr.TerminalNode

func (*PrimaryExprContext) ToStringTree

func (s *PrimaryExprContext) ToStringTree(ruleNames []string, recog antlr.Recognizer) string

func (*PrimaryExprContext) ValidateExpr

func (s *PrimaryExprContext) ValidateExpr() IValidateExprContext

type RelationalExprContext

type RelationalExprContext struct {
	antlr.BaseParserRuleContext
	// contains filtered or unexported fields
}

func NewEmptyRelationalExprContext

func NewEmptyRelationalExprContext() *RelationalExprContext

func NewRelationalExprContext

func NewRelationalExprContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *RelationalExprContext

func (*RelationalExprContext) AllUnaryExpr

func (s *RelationalExprContext) AllUnaryExpr() []IUnaryExprContext

func (*RelationalExprContext) EnterRule

func (s *RelationalExprContext) EnterRule(listener antlr.ParseTreeListener)

func (*RelationalExprContext) ExitRule

func (s *RelationalExprContext) ExitRule(listener antlr.ParseTreeListener)

func (*RelationalExprContext) GREATER_OR_EQUAL

func (s *RelationalExprContext) GREATER_OR_EQUAL() antlr.TerminalNode

func (*RelationalExprContext) GREATER_THAN

func (s *RelationalExprContext) GREATER_THAN() antlr.TerminalNode

func (*RelationalExprContext) GetParser

func (s *RelationalExprContext) GetParser() antlr.Parser

func (*RelationalExprContext) GetRuleContext

func (s *RelationalExprContext) GetRuleContext() antlr.RuleContext

func (*RelationalExprContext) IsRelationalExprContext

func (*RelationalExprContext) IsRelationalExprContext()

func (*RelationalExprContext) LESS_OR_EQUAL

func (s *RelationalExprContext) LESS_OR_EQUAL() antlr.TerminalNode

func (*RelationalExprContext) LESS_THAN

func (s *RelationalExprContext) LESS_THAN() antlr.TerminalNode

func (*RelationalExprContext) ToStringTree

func (s *RelationalExprContext) ToStringTree(ruleNames []string, recog antlr.Recognizer) string

func (*RelationalExprContext) UnaryExpr

type UnaryExpr

type UnaryExpr struct {
	Op   string // Operator (e.g., !)
	Expr Expr   // Operand expression
}

UnaryExpr represents a unary expression (e.g., !x).

func (UnaryExpr) Text

func (e UnaryExpr) Text() string

type UnaryExprContext

type UnaryExprContext struct {
	antlr.BaseParserRuleContext
	// contains filtered or unexported fields
}

func NewEmptyUnaryExprContext

func NewEmptyUnaryExprContext() *UnaryExprContext

func NewUnaryExprContext

func NewUnaryExprContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *UnaryExprContext

func (*UnaryExprContext) EnterRule

func (s *UnaryExprContext) EnterRule(listener antlr.ParseTreeListener)

func (*UnaryExprContext) ExitRule

func (s *UnaryExprContext) ExitRule(listener antlr.ParseTreeListener)

func (*UnaryExprContext) GetParser

func (s *UnaryExprContext) GetParser() antlr.Parser

func (*UnaryExprContext) GetRuleContext

func (s *UnaryExprContext) GetRuleContext() antlr.RuleContext

func (*UnaryExprContext) IsUnaryExprContext

func (*UnaryExprContext) IsUnaryExprContext()

func (*UnaryExprContext) LOGICAL_NOT

func (s *UnaryExprContext) LOGICAL_NOT() antlr.TerminalNode

func (*UnaryExprContext) PrimaryExpr

func (s *UnaryExprContext) PrimaryExpr() IPrimaryExprContext

func (*UnaryExprContext) ToStringTree

func (s *UnaryExprContext) ToStringTree(ruleNames []string, recog antlr.Recognizer) string

func (*UnaryExprContext) UnaryExpr

func (s *UnaryExprContext) UnaryExpr() IUnaryExprContext

type VLexer

type VLexer struct {
	*antlr.BaseLexer
	// contains filtered or unexported fields
}

func NewVLexer

func NewVLexer(input antlr.CharStream) *VLexer

NewVLexer produces a new lexer instance for the optional input antlr.CharStream.

type VParser

type VParser struct {
	*antlr.BaseParser
}

func NewVParser

func NewVParser(input antlr.TokenStream) *VParser

NewVParser produces a new parser instance for the optional input antlr.TokenStream.

func (*VParser) EqualityExpr

func (p *VParser) EqualityExpr() (localctx IEqualityExprContext)

func (*VParser) FunctionCall

func (p *VParser) FunctionCall() (localctx IFunctionCallContext)

func (*VParser) LogicalAndExpr

func (p *VParser) LogicalAndExpr() (localctx ILogicalAndExprContext)

func (*VParser) LogicalOrExpr

func (p *VParser) LogicalOrExpr() (localctx ILogicalOrExprContext)

func (*VParser) PrimaryExpr

func (p *VParser) PrimaryExpr() (localctx IPrimaryExprContext)

func (*VParser) RelationalExpr

func (p *VParser) RelationalExpr() (localctx IRelationalExprContext)

func (*VParser) UnaryExpr

func (p *VParser) UnaryExpr() (localctx IUnaryExprContext)

func (*VParser) ValidateExpr

func (p *VParser) ValidateExpr() (localctx IValidateExprContext)

type VParserListener

type VParserListener interface {
	antlr.ParseTreeListener

	// EnterValidateExpr is called when entering the validateExpr production.
	EnterValidateExpr(c *ValidateExprContext)

	// EnterLogicalOrExpr is called when entering the logicalOrExpr production.
	EnterLogicalOrExpr(c *LogicalOrExprContext)

	// EnterLogicalAndExpr is called when entering the logicalAndExpr production.
	EnterLogicalAndExpr(c *LogicalAndExprContext)

	// EnterEqualityExpr is called when entering the equalityExpr production.
	EnterEqualityExpr(c *EqualityExprContext)

	// EnterRelationalExpr is called when entering the relationalExpr production.
	EnterRelationalExpr(c *RelationalExprContext)

	// EnterUnaryExpr is called when entering the unaryExpr production.
	EnterUnaryExpr(c *UnaryExprContext)

	// EnterPrimaryExpr is called when entering the primaryExpr production.
	EnterPrimaryExpr(c *PrimaryExprContext)

	// EnterFunctionCall is called when entering the functionCall production.
	EnterFunctionCall(c *FunctionCallContext)

	// ExitValidateExpr is called when exiting the validateExpr production.
	ExitValidateExpr(c *ValidateExprContext)

	// ExitLogicalOrExpr is called when exiting the logicalOrExpr production.
	ExitLogicalOrExpr(c *LogicalOrExprContext)

	// ExitLogicalAndExpr is called when exiting the logicalAndExpr production.
	ExitLogicalAndExpr(c *LogicalAndExprContext)

	// ExitEqualityExpr is called when exiting the equalityExpr production.
	ExitEqualityExpr(c *EqualityExprContext)

	// ExitRelationalExpr is called when exiting the relationalExpr production.
	ExitRelationalExpr(c *RelationalExprContext)

	// ExitUnaryExpr is called when exiting the unaryExpr production.
	ExitUnaryExpr(c *UnaryExprContext)

	// ExitPrimaryExpr is called when exiting the primaryExpr production.
	ExitPrimaryExpr(c *PrimaryExprContext)

	// ExitFunctionCall is called when exiting the functionCall production.
	ExitFunctionCall(c *FunctionCallContext)
}

VParserListener is a complete listener for a parse tree produced by VParser.

type ValidateExprContext

type ValidateExprContext struct {
	antlr.BaseParserRuleContext
	// contains filtered or unexported fields
}

func NewEmptyValidateExprContext

func NewEmptyValidateExprContext() *ValidateExprContext

func NewValidateExprContext

func NewValidateExprContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *ValidateExprContext

func (*ValidateExprContext) EnterRule

func (s *ValidateExprContext) EnterRule(listener antlr.ParseTreeListener)

func (*ValidateExprContext) ExitRule

func (s *ValidateExprContext) ExitRule(listener antlr.ParseTreeListener)

func (*ValidateExprContext) GetParser

func (s *ValidateExprContext) GetParser() antlr.Parser

func (*ValidateExprContext) GetRuleContext

func (s *ValidateExprContext) GetRuleContext() antlr.RuleContext

func (*ValidateExprContext) IsValidateExprContext

func (*ValidateExprContext) IsValidateExprContext()

func (*ValidateExprContext) LogicalOrExpr

func (s *ValidateExprContext) LogicalOrExpr() ILogicalOrExprContext

func (*ValidateExprContext) ToStringTree

func (s *ValidateExprContext) ToStringTree(ruleNames []string, recog antlr.Recognizer) string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL