Documentation ¶
Index ¶
- Variables
- type Parser
- type PrintVisitor
- func (pv PrintVisitor) Print(expr expressions.Experssion) (string, error)
- func (pv PrintVisitor) VisitAssgin(expr expressions.Assgin) (interface{}, error)
- func (pv PrintVisitor) VisitBinary(expr expressions.Binary) (interface{}, error)
- func (pv PrintVisitor) VisitCall(expr expressions.Call) (interface{}, error)
- func (pv PrintVisitor) VisitGrouping(expr expressions.Grouping) (interface{}, error)
- func (pv PrintVisitor) VisitLiteral(expr expressions.Literal) (interface{}, error)
- func (pv PrintVisitor) VisitLogical(expr expressions.Logical) (interface{}, error)
- func (pv PrintVisitor) VisitPropertyAccess(expr expressions.PropertyAccess) (interface{}, error)
- func (pv PrintVisitor) VisitPropertyAssignment(expr expressions.PropertyAssignment) (interface{}, error)
- func (pv PrintVisitor) VisitSuper(expr expressions.Super) (interface{}, error)
- func (pv PrintVisitor) VisitThis(expr expressions.This) (interface{}, error)
- func (pv PrintVisitor) VisitUnary(expr expressions.Unary) (interface{}, error)
- func (pv PrintVisitor) VisitVairable(expr expressions.Variable) (interface{}, error)
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrorInvalidAssginTarget = errors.New("error invalid assgin target")
View Source
var ErrorParsing = errors.New("error while parsing expressions")
View Source
var ErrorPrinterVisitor = errors.New("error in printer visitor")
Functions ¶
This section is empty.
Types ¶
type Parser ¶
type Parser struct {
// contains filtered or unexported fields
}
func New ¶
func New(tokens []expressions.Token) *Parser
func (*Parser) Parse ¶
func (p *Parser) Parse() []statements.Statement
start parsing prog → declaration* EOF ;
type PrintVisitor ¶
type PrintVisitor struct{}
Debug Visitor implements the expressions.ExpressionVisitor interface
func (PrintVisitor) Print ¶
func (pv PrintVisitor) Print(expr expressions.Experssion) (string, error)
func (PrintVisitor) VisitAssgin ¶
func (pv PrintVisitor) VisitAssgin(expr expressions.Assgin) (interface{}, error)
not implemented
func (PrintVisitor) VisitBinary ¶
func (pv PrintVisitor) VisitBinary(expr expressions.Binary) (interface{}, error)
visit binary expression
func (PrintVisitor) VisitCall ¶
func (pv PrintVisitor) VisitCall(expr expressions.Call) (interface{}, error)
not implemented
func (PrintVisitor) VisitGrouping ¶
func (pv PrintVisitor) VisitGrouping(expr expressions.Grouping) (interface{}, error)
visit grouping expression
func (PrintVisitor) VisitLiteral ¶
func (pv PrintVisitor) VisitLiteral(expr expressions.Literal) (interface{}, error)
visit literal and reflect its value
func (PrintVisitor) VisitLogical ¶
func (pv PrintVisitor) VisitLogical(expr expressions.Logical) (interface{}, error)
not implemented
func (PrintVisitor) VisitPropertyAccess ¶
func (pv PrintVisitor) VisitPropertyAccess(expr expressions.PropertyAccess) (interface{}, error)
not implemented
func (PrintVisitor) VisitPropertyAssignment ¶
func (pv PrintVisitor) VisitPropertyAssignment(expr expressions.PropertyAssignment) (interface{}, error)
not implemented
func (PrintVisitor) VisitSuper ¶
func (pv PrintVisitor) VisitSuper(expr expressions.Super) (interface{}, error)
not implemented
func (PrintVisitor) VisitThis ¶
func (pv PrintVisitor) VisitThis(expr expressions.This) (interface{}, error)
not implemented
func (PrintVisitor) VisitUnary ¶
func (pv PrintVisitor) VisitUnary(expr expressions.Unary) (interface{}, error)
visit unary expression
func (PrintVisitor) VisitVairable ¶
func (pv PrintVisitor) VisitVairable(expr expressions.Variable) (interface{}, error)
not implemented
Click to show internal directories.
Click to hide internal directories.