AstNode

interface AstNode

Inheritors

Types

Link copied to clipboard
Link copied to clipboard
data class BinaryOp(val left: AstNode.Expression, val op: BinOp, val right: AstNode.Expression) : AstNode.Expression
Link copied to clipboard
data class Block(val statements: List<AstNode.Statement>, val span: Span) : AstNode.Statement, List<AstNode.Statement>
Link copied to clipboard
data class Break(val span: Span) : AstNode.Statement
Link copied to clipboard
data class Call(val expr: AstNode.Expression, val args: List<AstNode.Expression>, val span: Span) : AstNode.Expression
Link copied to clipboard
data class CombinedCall(val expr: AstNode.Expression, val name: String, val args: List<AstNode.Expression>, val span: Span) : AstNode.Expression
Link copied to clipboard
data class Continue(val span: Span) : AstNode.Statement
Link copied to clipboard
data class DoExcept(val body: AstNode.Block, val excepts: List<AstNode.Except>, val finally: AstNode.Block?, val span: Span) : AstNode.Statement
Link copied to clipboard
data class ErrorLiteral(val type: String, val message: AstNode.Expression, val companionData: AstNode.TableLiteral?, val span: Span) : AstNode.Expression
Link copied to clipboard
data class Except(val name: String, val variable: String?, val body: AstNode.Block)
Link copied to clipboard
Link copied to clipboard
data class For(val name: String, val iterable: AstNode.Expression, val body: AstNode.Block, val span: Span) : AstNode.Statement
Link copied to clipboard
data class FunctionLiteral(val args: List<String>, val body: AstNode.Block, val name: String?, val span: Span) : AstNode.Expression
Link copied to clipboard
data class If(val condition: AstNode.Expression, val body: AstNode.Block, val elseBody: AstNode.Block?, val span: Span) : AstNode.Statement
Link copied to clipboard
data class Import(val name: String, val global: Boolean, val span: Span) : AstNode.Statement
Link copied to clipboard
Link copied to clipboard
data class ListLiteral(val values: List<AstNode.Expression>, val span: Span) : AstNode.Expression
Link copied to clipboard
data class Literal(val value: Value, val span: Span) : AstNode.Expression
Link copied to clipboard
data class Raise(val value: AstNode.Expression, val span: Span) : AstNode.Statement
Link copied to clipboard
data class Return(val value: AstNode.Expression, val span: Span) : AstNode.Statement
Link copied to clipboard
interface Statement : AstNode
Link copied to clipboard
Link copied to clipboard
data class TernaryOp(val condition: AstNode.Expression, val trueExpr: AstNode.Expression, val falseExpr: AstNode.Expression) : AstNode.Expression
Link copied to clipboard
data class UnaryOp(val op: UnOp, val expr: AstNode.Expression, val span: Span) : AstNode.Expression
Link copied to clipboard
data class Var(val name: String, val span: Span) : AstNode.Expression, AstNode.AssignTarget
Link copied to clipboard
data class VarAssign(val target: AstNode.AssignTarget, val value: AstNode.Expression, val type: AssignType?, val span: Span) : AstNode.Statement
Link copied to clipboard
data class VarDecl(val visibility: Visibility, val name: String, val value: AstNode.Expression, val span: Span) : AstNode.Statement
Link copied to clipboard
data class While(val condition: AstNode.Expression, val body: AstNode.Block, val span: Span) : AstNode.Statement

Properties

Link copied to clipboard
abstract val span: Span