package
AST
Type Members
-
case class
ASTBoolConstant(loc: Position, value: Boolean) extends Expr with Product with Serializable
-
case class
ASTDoubleConstant(loc: Position, value: Double) extends Expr with Product with Serializable
-
case class
ASTIdentifier(loc: Position, name: String) extends ASTNode with Product with Serializable
-
case class
ASTIntConstant(loc: Position, value: Int) extends Expr with Product with Serializable
-
sealed abstract
class
ASTNode extends Positional
-
case class
ASTNullConstant(loc: Position) extends Expr with Product with Serializable
-
case class
ASTOperator(loc: Position, token: String) extends ASTNode with Product with Serializable
-
case class
ASTStringConstant(loc: Position, value: String) extends Expr with Product with Serializable
-
-
case class
ArrayAccess(loc: Position, base: Expr, subscript: Expr) extends LValue with Product with Serializable
-
case class
ArrayType(locat: Position, elemType: Type) extends Type with Product with Serializable
-
case class
AssignExpr(l: Position, lhs: Expr, rhs: Expr) extends CompoundExpr with Product with Serializable
-
case class
BoolType(loc: Position) extends Type with Product with Serializable
-
case class
BreakStmt(loc: Position) extends Stmt with Product with Serializable
-
case class
Call(loc: Position, base: Option[Expr], field: ASTIdentifier, args: List[Expr]) extends Expr with Product with Serializable
-
case class
CaseStmt(value: Expr, body: List[Stmt], loc: Position) extends Stmt with Product with Serializable
-
case class
ClassDecl(name: ASTIdentifier, extnds: Option[NamedType] = None, implements: List[NamedType], members: List[Decl]) extends Decl with Product with Serializable
-
-
-
abstract
class
Decl extends ASTNode
-
case class
DefaultCase(body: List[Stmt], loc: Position) extends Stmt with Product with Serializable
-
case class
DoubleType(loc: Position) extends Type with Product with Serializable
-
case class
EmptyExpr(loc: Position) extends Expr with Product with Serializable
-
-
-
abstract
class
Expr extends Stmt
-
case class
FieldAccess(loc: Position, base: Option[Expr], field: ASTIdentifier) extends LValue with Product with Serializable
-
case class
FnDecl(name: ASTIdentifier, returnType: Type, formals: List[VarDecl], body: Option[StmtBlock]) extends Decl with Product with Serializable
-
case class
ForStmt(init: Option[Expr], test: Expr, step: Option[Expr], loopBody: Stmt) extends LoopStmt with Product with Serializable
-
case class
IfStmt(test: Expr, testBody: Stmt, elseBody: Option[Stmt]) extends ConditionalStmt with Product with Serializable
-
case class
IntType(loc: Position) extends Type with Product with Serializable
-
case class
InterfaceDecl(name: ASTIdentifier, members: List[Decl]) extends Decl with Product with Serializable
-
abstract
class
LValue extends Expr
-
-
case class
LogicalExpr(l: Position, lhs: Option[Expr], o: ASTOperator, rhs: Expr) extends CompoundExpr with Product with Serializable
-
-
-
case class
NamedType(name: ASTIdentifier) extends Type with Product with Serializable
-
case class
NewArrayExpr(loc: Position, size: Expr, elemType: Type) extends Expr with Product with Serializable
-
case class
NewExpr(loc: Position, cType: NamedType) extends Expr with Product with Serializable
-
case class
NullType(loc: Position) extends Type with Product with Serializable
-
-
case class
PrintStmt(args: List[Expr], loc: Position) extends Stmt with Product with Serializable
-
case class
Program(decls: List[Decl], loc: Position) extends ASTNode with Product with Serializable
-
case class
ReadIntegerExpr(loc: Position) extends Expr with Product with Serializable
-
case class
ReadLineExpr(loc: Position) extends Expr with Product with Serializable
-
-
case class
ReturnStmt(loc: Position, expr: Option[Expr]) extends Stmt with Product with Serializable
-
-
abstract
class
Stmt extends ASTNode
-
case class
StmtBlock(decls: List[VarDecl], stmts: List[Stmt], loc: Position) extends Stmt with Product with Serializable
-
case class
StringType(loc: Position) extends Type with Product with Serializable
-
case class
SwitchStmt(variable: Option[Expr], cases: List[CaseStmt], default: Option[DefaultCase], loc: Position) extends Stmt with Product with Serializable
-
case class
This(loc: Position) extends Expr with Product with Serializable
-
abstract
class
Type extends ASTNode
-
case class
UndeclaredType(m: String, w: Position) extends ErrorType with Product with Serializable
-
case class
VarDecl(n: ASTIdentifier, t: Type) extends Decl with Product with Serializable
-
case class
VoidType(loc: Position) extends Type with Product with Serializable
-
case class
WhileStmt(test: Expr, loopBody: Stmt) extends LoopStmt with Product with Serializable
Value Members
-
-
implicit
def
errorType2TypeError(e: ErrorType): List[Exception]
Inherited from AnyRef
Inherited from Any
Contains the Decaf Abstract Syntax Tree and related types Created by hawk on 11/14/14.