parser

package
v0.0.0-...-476e9c8 Latest Latest
Warning

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

Go to latest
Published: Oct 24, 2021 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

View Source
const (
	CalcLexerT__0       = 1
	CalcLexerT__1       = 2
	CalcLexerMUL        = 3
	CalcLexerDIV        = 4
	CalcLexerADD        = 5
	CalcLexerSUB        = 6
	CalcLexerNUMBER     = 7
	CalcLexerWHITESPACE = 8
)

CalcLexer tokens.

View Source
const (
	CalcParserEOF        = antlr.TokenEOF
	CalcParserT__0       = 1
	CalcParserT__1       = 2
	CalcParserMUL        = 3
	CalcParserDIV        = 4
	CalcParserADD        = 5
	CalcParserSUB        = 6
	CalcParserNUMBER     = 7
	CalcParserWHITESPACE = 8
)

CalcParser tokens.

View Source
const (
	CalcParserRULE_start      = 0
	CalcParserRULE_expression = 1
)

CalcParser rules.

Variables

This section is empty.

Functions

This section is empty.

Types

type AddSubContext

type AddSubContext struct {
	*ExpressionContext
	// contains filtered or unexported fields
}

func NewAddSubContext

func NewAddSubContext(parser antlr.Parser, ctx antlr.ParserRuleContext) *AddSubContext

func (*AddSubContext) Accept

func (s *AddSubContext) Accept(visitor antlr.ParseTreeVisitor) interface{}

func (*AddSubContext) AllExpression

func (s *AddSubContext) AllExpression() []IExpressionContext

func (*AddSubContext) Expression

func (s *AddSubContext) Expression(i int) IExpressionContext

func (*AddSubContext) GetOp

func (s *AddSubContext) GetOp() antlr.Token

func (*AddSubContext) GetRuleContext

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

func (*AddSubContext) SetOp

func (s *AddSubContext) SetOp(v antlr.Token)

type BaseCalcVisitor

type BaseCalcVisitor struct {
	*antlr.BaseParseTreeVisitor
}

func (*BaseCalcVisitor) VisitAddSub

func (v *BaseCalcVisitor) VisitAddSub(ctx *AddSubContext) interface{}

func (*BaseCalcVisitor) VisitMulDiv

func (v *BaseCalcVisitor) VisitMulDiv(ctx *MulDivContext) interface{}

func (*BaseCalcVisitor) VisitNumber

func (v *BaseCalcVisitor) VisitNumber(ctx *NumberContext) interface{}

func (*BaseCalcVisitor) VisitParenthesis

func (v *BaseCalcVisitor) VisitParenthesis(ctx *ParenthesisContext) interface{}

func (*BaseCalcVisitor) VisitStart

func (v *BaseCalcVisitor) VisitStart(ctx *StartContext) interface{}

type CalcLexer

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

func NewCalcLexer

func NewCalcLexer(input antlr.CharStream) *CalcLexer

type CalcParser

type CalcParser struct {
	*antlr.BaseParser
}

func NewCalcParser

func NewCalcParser(input antlr.TokenStream) *CalcParser

func (*CalcParser) Expression

func (p *CalcParser) Expression() (localctx IExpressionContext)

func (*CalcParser) Expression_Sempred

func (p *CalcParser) Expression_Sempred(localctx antlr.RuleContext, predIndex int) bool

func (*CalcParser) Sempred

func (p *CalcParser) Sempred(localctx antlr.RuleContext, ruleIndex, predIndex int) bool

func (*CalcParser) Start

func (p *CalcParser) Start() (localctx IStartContext)

type CalcVisitor

type CalcVisitor interface {
	antlr.ParseTreeVisitor

	// Visit a parse tree produced by CalcParser#start.
	VisitStart(ctx *StartContext) interface{}

	// Visit a parse tree produced by CalcParser#Parenthesis.
	VisitParenthesis(ctx *ParenthesisContext) interface{}

	// Visit a parse tree produced by CalcParser#Number.
	VisitNumber(ctx *NumberContext) interface{}

	// Visit a parse tree produced by CalcParser#MulDiv.
	VisitMulDiv(ctx *MulDivContext) interface{}

	// Visit a parse tree produced by CalcParser#AddSub.
	VisitAddSub(ctx *AddSubContext) interface{}
}

A complete Visitor for a parse tree produced by CalcParser.

type ExpressionContext

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

func NewEmptyExpressionContext

func NewEmptyExpressionContext() *ExpressionContext

func NewExpressionContext

func NewExpressionContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *ExpressionContext

func (*ExpressionContext) CopyFrom

func (s *ExpressionContext) CopyFrom(ctx *ExpressionContext)

func (*ExpressionContext) GetParser

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

func (*ExpressionContext) GetRuleContext

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

func (*ExpressionContext) IsExpressionContext

func (*ExpressionContext) IsExpressionContext()

func (*ExpressionContext) ToStringTree

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

type IExpressionContext

type IExpressionContext interface {
	antlr.ParserRuleContext

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

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

IExpressionContext is an interface to support dynamic dispatch.

type IStartContext

type IStartContext interface {
	antlr.ParserRuleContext

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

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

IStartContext is an interface to support dynamic dispatch.

type MulDivContext

type MulDivContext struct {
	*ExpressionContext
	// contains filtered or unexported fields
}

func NewMulDivContext

func NewMulDivContext(parser antlr.Parser, ctx antlr.ParserRuleContext) *MulDivContext

func (*MulDivContext) Accept

func (s *MulDivContext) Accept(visitor antlr.ParseTreeVisitor) interface{}

func (*MulDivContext) AllExpression

func (s *MulDivContext) AllExpression() []IExpressionContext

func (*MulDivContext) Expression

func (s *MulDivContext) Expression(i int) IExpressionContext

func (*MulDivContext) GetOp

func (s *MulDivContext) GetOp() antlr.Token

func (*MulDivContext) GetRuleContext

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

func (*MulDivContext) SetOp

func (s *MulDivContext) SetOp(v antlr.Token)

type NumberContext

type NumberContext struct {
	*ExpressionContext
}

func NewNumberContext

func NewNumberContext(parser antlr.Parser, ctx antlr.ParserRuleContext) *NumberContext

func (*NumberContext) Accept

func (s *NumberContext) Accept(visitor antlr.ParseTreeVisitor) interface{}

func (*NumberContext) GetRuleContext

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

func (*NumberContext) NUMBER

func (s *NumberContext) NUMBER() antlr.TerminalNode

type ParenthesisContext

type ParenthesisContext struct {
	*ExpressionContext
}

func NewParenthesisContext

func NewParenthesisContext(parser antlr.Parser, ctx antlr.ParserRuleContext) *ParenthesisContext

func (*ParenthesisContext) Accept

func (s *ParenthesisContext) Accept(visitor antlr.ParseTreeVisitor) interface{}

func (*ParenthesisContext) Expression

func (s *ParenthesisContext) Expression() IExpressionContext

func (*ParenthesisContext) GetRuleContext

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

type StartContext

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

func NewEmptyStartContext

func NewEmptyStartContext() *StartContext

func NewStartContext

func NewStartContext(parser antlr.Parser, parent antlr.ParserRuleContext, invokingState int) *StartContext

func (*StartContext) Accept

func (s *StartContext) Accept(visitor antlr.ParseTreeVisitor) interface{}

func (*StartContext) EOF

func (s *StartContext) EOF() antlr.TerminalNode

func (*StartContext) Expression

func (s *StartContext) Expression() IExpressionContext

func (*StartContext) GetParser

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

func (*StartContext) GetRuleContext

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

func (*StartContext) IsStartContext

func (*StartContext) IsStartContext()

func (*StartContext) ToStringTree

func (s *StartContext) 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