Documentation ¶
Index ¶
- type AssignExpr
- type BinaryExpr
- type BlockStmt
- type CallExpr
- type ClassStmt
- type DictExpr
- type ExprStmt
- type ExprVisitor
- type Expression
- type FunctionStmt
- type GetExpr
- type GroupingExpr
- type IfStmt
- type IndexExpr
- type ListExpr
- type LiteralExpr
- type LogicalExpr
- type PrintStmt
- type ReturnStmt
- type SetExpr
- type Statement
- type StmtVisitor
- type StubExprVisitor
- func (s StubExprVisitor) VisitAssignExpr(_ *AssignExpr) (interface{}, error)
- func (s StubExprVisitor) VisitBinaryExpr(_ *BinaryExpr) (interface{}, error)
- func (s StubExprVisitor) VisitBlockStmt(_ *BlockStmt) error
- func (s StubExprVisitor) VisitCallExpr(_ *CallExpr) (interface{}, error)
- func (s StubExprVisitor) VisitClassStmt(_ *ClassStmt) error
- func (s StubExprVisitor) VisitDictExpr(_ *DictExpr) (interface{}, error)
- func (s StubExprVisitor) VisitExprStmt(_ *ExprStmt) error
- func (s StubExprVisitor) VisitFunctionStmt(_ *FunctionStmt) error
- func (s StubExprVisitor) VisitGetExpr(_ *GetExpr) (interface{}, error)
- func (s StubExprVisitor) VisitGroupingExpr(_ *GroupingExpr) (interface{}, error)
- func (s StubExprVisitor) VisitIfStmt(_ *IfStmt) error
- func (s StubExprVisitor) VisitIndexExpr(_ *IndexExpr) (interface{}, error)
- func (s StubExprVisitor) VisitListExpr(_ *ListExpr) (interface{}, error)
- func (s StubExprVisitor) VisitLiteralExpr(_ *LiteralExpr) (interface{}, error)
- func (s StubExprVisitor) VisitLogicalExpr(_ *LogicalExpr) (interface{}, error)
- func (s StubExprVisitor) VisitPrintStmt(_ *PrintStmt) error
- func (s StubExprVisitor) VisitReturnStmt(_ *ReturnStmt) error
- func (s StubExprVisitor) VisitSetExpr(_ *SetExpr) (interface{}, error)
- func (s StubExprVisitor) VisitSuperExpr(_ *SuperExpr) (interface{}, error)
- func (s StubExprVisitor) VisitThisExpr(_ *ThisExpr) (interface{}, error)
- func (s StubExprVisitor) VisitUnaryExpr(_ *UnaryExpr) (interface{}, error)
- func (s StubExprVisitor) VisitVarStmt(_ *VarStmt) error
- func (s StubExprVisitor) VisitVariableExpr(_ *VariableExpr) (interface{}, error)
- func (s StubExprVisitor) VisitWhileStmt(_ *WhileStmt) error
- type StubStmtVisitor
- type SuperExpr
- type ThisExpr
- type UnaryExpr
- type VarStmt
- type VariableExpr
- type WhileStmt
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AssignExpr ¶
type AssignExpr struct { Name *token.Token Value Expression }
func (*AssignExpr) Accept ¶
func (b *AssignExpr) Accept(visitor ExprVisitor) (result interface{}, err error)
type BinaryExpr ¶
type BinaryExpr struct { Left Expression Operator *token.Token Right Expression }
func (*BinaryExpr) Accept ¶
func (b *BinaryExpr) Accept(visitor ExprVisitor) (result interface{}, err error)
type BlockStmt ¶
type BlockStmt struct {
Stmts []Statement
}
func (*BlockStmt) Accept ¶
func (b *BlockStmt) Accept(visitor StmtVisitor) (err error)
type CallExpr ¶
type CallExpr struct { Callee Expression Paren *token.Token Arguments []Expression }
func (*CallExpr) Accept ¶
func (b *CallExpr) Accept(visitor ExprVisitor) (result interface{}, err error)
type ClassStmt ¶
type ClassStmt struct { Name *token.Token SuperClass *VariableExpr Methods []*FunctionStmt }
func (*ClassStmt) Accept ¶
func (b *ClassStmt) Accept(visitor StmtVisitor) (err error)
type DictExpr ¶
type DictExpr struct {
Values map[interface{}]Expression
}
variable: dict
func (*DictExpr) Accept ¶
func (b *DictExpr) Accept(visitor ExprVisitor) (result interface{}, err error)
type ExprStmt ¶
type ExprStmt struct {
Expr Expression
}
func (*ExprStmt) Accept ¶
func (b *ExprStmt) Accept(visitor StmtVisitor) (err error)
type ExprVisitor ¶
type ExprVisitor interface { VisitAssignExpr(v *AssignExpr) (result interface{}, err error) VisitBinaryExpr(v *BinaryExpr) (result interface{}, err error) VisitCallExpr(v *CallExpr) (result interface{}, err error) VisitDictExpr(v *DictExpr) (result interface{}, err error) VisitGetExpr(v *GetExpr) (result interface{}, err error) VisitGroupingExpr(v *GroupingExpr) (result interface{}, err error) VisitIndexExpr(v *IndexExpr) (result interface{}, err error) VisitListExpr(v *ListExpr) (result interface{}, err error) VisitLiteralExpr(v *LiteralExpr) (result interface{}, err error) VisitLogicalExpr(v *LogicalExpr) (result interface{}, err error) VisitSetExpr(v *SetExpr) (result interface{}, err error) VisitSuperExpr(v *SuperExpr) (result interface{}, err error) VisitThisExpr(v *ThisExpr) (result interface{}, err error) VisitUnaryExpr(v *UnaryExpr) (result interface{}, err error) VisitVariableExpr(v *VariableExpr) (result interface{}, err error) }
type Expression ¶
type Expression interface {
Accept(visitor ExprVisitor) (result interface{}, err error)
}
type FunctionStmt ¶
func (*FunctionStmt) Accept ¶
func (b *FunctionStmt) Accept(visitor StmtVisitor) (err error)
type GetExpr ¶
type GetExpr struct { Object Expression Name *token.Token }
func (*GetExpr) Accept ¶
func (b *GetExpr) Accept(visitor ExprVisitor) (result interface{}, err error)
type GroupingExpr ¶
type GroupingExpr struct {
Expr Expression
}
func (*GroupingExpr) Accept ¶
func (b *GroupingExpr) Accept(visitor ExprVisitor) (result interface{}, err error)
type IfStmt ¶
type IfStmt struct { Condition Expression ThenBranch Statement ElseBranch Statement }
func (*IfStmt) Accept ¶
func (b *IfStmt) Accept(visitor StmtVisitor) (err error)
type IndexExpr ¶
func (*IndexExpr) Accept ¶
func (b *IndexExpr) Accept(visitor ExprVisitor) (result interface{}, err error)
type ListExpr ¶
type ListExpr struct { Values []Expression Idx *token.Token }
func (*ListExpr) Accept ¶
func (b *ListExpr) Accept(visitor ExprVisitor) (result interface{}, err error)
type LiteralExpr ¶
type LiteralExpr struct {
Value interface{}
}
func (*LiteralExpr) Accept ¶
func (b *LiteralExpr) Accept(visitor ExprVisitor) (result interface{}, err error)
type LogicalExpr ¶
type LogicalExpr struct { Left Expression Operator *token.Token Right Expression }
func (*LogicalExpr) Accept ¶
func (b *LogicalExpr) Accept(visitor ExprVisitor) (result interface{}, err error)
type PrintStmt ¶
type PrintStmt struct {
Expr Expression
}
func (*PrintStmt) Accept ¶
func (b *PrintStmt) Accept(visitor StmtVisitor) (err error)
type ReturnStmt ¶
type ReturnStmt struct { Keyword *token.Token Value Expression }
func (*ReturnStmt) Accept ¶
func (b *ReturnStmt) Accept(visitor StmtVisitor) (err error)
type SetExpr ¶
type SetExpr struct { Object Expression Name *token.Token Value Expression }
func (*SetExpr) Accept ¶
func (b *SetExpr) Accept(visitor ExprVisitor) (result interface{}, err error)
type Statement ¶
type Statement interface {
Accept(visitor StmtVisitor) (err error)
}
type StmtVisitor ¶
type StmtVisitor interface { VisitBlockStmt(v *BlockStmt) (err error) VisitClassStmt(v *ClassStmt) (err error) VisitExprStmt(v *ExprStmt) (err error) VisitFunctionStmt(v *FunctionStmt) (err error) VisitIfStmt(v *IfStmt) (err error) VisitPrintStmt(v *PrintStmt) (err error) VisitReturnStmt(v *ReturnStmt) (err error) VisitVarStmt(v *VarStmt) (err error) VisitWhileStmt(v *WhileStmt) (err error) }
type StubExprVisitor ¶
type StubExprVisitor struct{}
func (StubExprVisitor) VisitAssignExpr ¶
func (s StubExprVisitor) VisitAssignExpr(_ *AssignExpr) (interface{}, error)
func (StubExprVisitor) VisitBinaryExpr ¶
func (s StubExprVisitor) VisitBinaryExpr(_ *BinaryExpr) (interface{}, error)
func (StubExprVisitor) VisitBlockStmt ¶
func (s StubExprVisitor) VisitBlockStmt(_ *BlockStmt) error
func (StubExprVisitor) VisitCallExpr ¶
func (s StubExprVisitor) VisitCallExpr(_ *CallExpr) (interface{}, error)
func (StubExprVisitor) VisitClassStmt ¶
func (s StubExprVisitor) VisitClassStmt(_ *ClassStmt) error
func (StubExprVisitor) VisitDictExpr ¶
func (s StubExprVisitor) VisitDictExpr(_ *DictExpr) (interface{}, error)
func (StubExprVisitor) VisitExprStmt ¶
func (s StubExprVisitor) VisitExprStmt(_ *ExprStmt) error
func (StubExprVisitor) VisitFunctionStmt ¶
func (s StubExprVisitor) VisitFunctionStmt(_ *FunctionStmt) error
func (StubExprVisitor) VisitGetExpr ¶
func (s StubExprVisitor) VisitGetExpr(_ *GetExpr) (interface{}, error)
func (StubExprVisitor) VisitGroupingExpr ¶
func (s StubExprVisitor) VisitGroupingExpr(_ *GroupingExpr) (interface{}, error)
func (StubExprVisitor) VisitIfStmt ¶
func (s StubExprVisitor) VisitIfStmt(_ *IfStmt) error
func (StubExprVisitor) VisitIndexExpr ¶
func (s StubExprVisitor) VisitIndexExpr(_ *IndexExpr) (interface{}, error)
func (StubExprVisitor) VisitListExpr ¶
func (s StubExprVisitor) VisitListExpr(_ *ListExpr) (interface{}, error)
func (StubExprVisitor) VisitLiteralExpr ¶
func (s StubExprVisitor) VisitLiteralExpr(_ *LiteralExpr) (interface{}, error)
func (StubExprVisitor) VisitLogicalExpr ¶
func (s StubExprVisitor) VisitLogicalExpr(_ *LogicalExpr) (interface{}, error)
func (StubExprVisitor) VisitPrintStmt ¶
func (s StubExprVisitor) VisitPrintStmt(_ *PrintStmt) error
func (StubExprVisitor) VisitReturnStmt ¶
func (s StubExprVisitor) VisitReturnStmt(_ *ReturnStmt) error
func (StubExprVisitor) VisitSetExpr ¶
func (s StubExprVisitor) VisitSetExpr(_ *SetExpr) (interface{}, error)
func (StubExprVisitor) VisitSuperExpr ¶
func (s StubExprVisitor) VisitSuperExpr(_ *SuperExpr) (interface{}, error)
func (StubExprVisitor) VisitThisExpr ¶
func (s StubExprVisitor) VisitThisExpr(_ *ThisExpr) (interface{}, error)
func (StubExprVisitor) VisitUnaryExpr ¶
func (s StubExprVisitor) VisitUnaryExpr(_ *UnaryExpr) (interface{}, error)
func (StubExprVisitor) VisitVarStmt ¶
func (s StubExprVisitor) VisitVarStmt(_ *VarStmt) error
func (StubExprVisitor) VisitVariableExpr ¶
func (s StubExprVisitor) VisitVariableExpr(_ *VariableExpr) (interface{}, error)
func (StubExprVisitor) VisitWhileStmt ¶
func (s StubExprVisitor) VisitWhileStmt(_ *WhileStmt) error
type StubStmtVisitor ¶
type StubStmtVisitor struct{}
type SuperExpr ¶
func (*SuperExpr) Accept ¶
func (b *SuperExpr) Accept(visitor ExprVisitor) (result interface{}, err error)
type ThisExpr ¶
func (*ThisExpr) Accept ¶
func (b *ThisExpr) Accept(visitor ExprVisitor) (result interface{}, err error)
type UnaryExpr ¶
type UnaryExpr struct { Operator *token.Token Right Expression }
func (*UnaryExpr) Accept ¶
func (b *UnaryExpr) Accept(visitor ExprVisitor) (result interface{}, err error)
type VarStmt ¶
type VarStmt struct { Name *token.Token Initializer Expression }
func (*VarStmt) Accept ¶
func (b *VarStmt) Accept(visitor StmtVisitor) (err error)
type VariableExpr ¶
func (*VariableExpr) Accept ¶
func (b *VariableExpr) Accept(visitor ExprVisitor) (result interface{}, err error)
type WhileStmt ¶
type WhileStmt struct { Condition Expression Body Statement }
func (*WhileStmt) Accept ¶
func (b *WhileStmt) Accept(visitor StmtVisitor) (err error)
Click to show internal directories.
Click to hide internal directories.