object ObrTree
- Alphabetic
- By Inheritance
- ObrTree
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
case class
AndExp
(left: Expression, right: Expression) extends Expression with Product with Serializable
An expression whose value is the logical AND of the values of two expressions.
-
case class
ArrayVar
(idn: IdnDef, size: Int) extends Declaration with Product with Serializable
A declaration of an array variable of the given size.
-
case class
AssignStmt
(left: AssignTree, right: Expression) extends Statement with Product with Serializable
A statement that evaluates its second expression and assigns it to the variable or array element denoted by its first expression.
-
trait
AssignTree
extends Expression with EntityTree
Marker trait for all expression node types that can be assigned.
-
case class
BoolExp
(value: Boolean) extends Expression with Product with Serializable
An expression whose value is an Boolean constant.
-
case class
BoolVar
(idn: IdnDef) extends Declaration with Product with Serializable
A declaration of a Boolean variable.
- case class Catch (idn: IdnUse, stmts: Seq[Statement]) extends ObrTree with Product with Serializable
-
sealed abstract
class
Declaration
extends ObrTree with EntityTree
Superclass of all declaration classes.
-
trait
EntityTree
extends ObrTree
Marker trait for all node types that have an entity.
-
case class
EnumConst
(idn: IdnDef) extends ObrTree with EntityTree with Product with Serializable
A declaration of an enumeration constant
-
case class
EnumVar
(idn: IdnDef, consts: Seq[EnumConst]) extends Declaration with Product with Serializable
A declaration of an enumeration variable with given enumeration constants.
-
case class
EqualExp
(left: Expression, right: Expression) extends Expression with Product with Serializable
An expression that compares the values of two expressions for equality.
-
case class
ExitStmt
() extends Statement with Product with Serializable
A statement that exits the nearest enclosing loop.
-
case class
ExnConst
(idn: IdnDef) extends Declaration with Product with Serializable
A declaration of a new exception value
-
abstract
class
Expression
extends ObrTree
Superclass of all expression classes.
-
case class
FieldExp
(idn: IdnUse, field: Identifier) extends Expression with AssignTree with Product with Serializable
An expression that accesses a field of a record.
-
case class
ForStmt
(idn: IdnUse, min: Expression, max: Expression, body: Seq[Statement]) extends Statement with EntityTree with Product with Serializable
A statement that executes its body statements for each value of a variable in a range given by its two expressions.
-
case class
GreaterExp
(left: Expression, right: Expression) extends Expression with Product with Serializable
An expression that compares the values of two expressions for greater-than order.
-
type
Identifier = String
A representation of identifiers as strings.
-
case class
IdnDef
(idn: Identifier) extends IdnTree with Product with Serializable
A defining occurrence of an identifier.
-
case class
IdnExp
(idn: IdnUse) extends Expression with AssignTree with Product with Serializable
An expression whose value is the current value of a named variable or constant.
-
abstract
class
IdnTree
extends ObrTree
An identifier reference.
-
case class
IdnUse
(idn: Identifier) extends IdnTree with Product with Serializable
An applied occurrence (use) of an identifier.
-
case class
IfStmt
(cond: Expression, thens: Seq[Statement], elses: Seq[Statement]) extends Statement with Product with Serializable
A conditional statement that evaluates a Boolean expression and, if it is true, executes its first sequence of statements, and if its is false, executes its second sequence of statements.
-
case class
IndexExp
(idn: IdnUse, indx: Expression) extends Expression with AssignTree with Product with Serializable
An expression that indexes an array.
-
case class
IntConst
(idn: IdnDef, value: Int) extends Declaration with Product with Serializable
A declaration of an integer constant with the given value.
-
case class
IntExp
(num: Int) extends Expression with Product with Serializable
An expression whose value is an integer constant.
-
case class
IntParam
(idn: IdnDef) extends Declaration with Product with Serializable
A declaration of an integer parameter.
-
case class
IntVar
(idn: IdnDef) extends Declaration with Product with Serializable
A declaration of an integer variable.
-
case class
LessExp
(left: Expression, right: Expression) extends Expression with Product with Serializable
An expression that compares the values of two expressions for less-than order.
-
case class
LoopStmt
(body: Seq[Statement]) extends Statement with Product with Serializable
A loop that executes forever.
-
case class
MinusExp
(left: Expression, right: Expression) extends Expression with Product with Serializable
An expression whose value is the difference between the values of two expressions.
-
case class
ModExp
(left: Expression, right: Expression) extends Expression with Product with Serializable
An expression whose value is the modulus of its two expressions.
-
case class
NegExp
(exp: Expression) extends Expression with Product with Serializable
An expression whose value is the negation of the value of an expression.
-
case class
NotEqualExp
(left: Expression, right: Expression) extends Expression with Product with Serializable
An expression that compares the values of two expressions for inequality.
-
case class
NotExp
(exp: Expression) extends Expression with Product with Serializable
An expression whose value is the logical negation of the value of an expression.
-
case class
ObrInt
(idn1: Identifier, decls: Seq[Declaration], stmts: Seq[Statement], idn2: Identifier) extends ObrTree with Product with Serializable
An Obr program consisting of the given declarations and statements and returning an integer value.
An Obr program consisting of the given declarations and statements and returning an integer value. The two identifiers name the program and must be the same.
-
sealed abstract
class
ObrTree
extends TreeNode
Interface for all Obr tree nodes.
-
case class
OrExp
(left: Expression, right: Expression) extends Expression with Product with Serializable
An expression whose value is the logical OR of the values of two expressions.
-
case class
PlusExp
(left: Expression, right: Expression) extends Expression with Product with Serializable
An expression whose value is the sum of the values of two expressions.
-
case class
RaiseStmt
(idn: IdnUse) extends Statement with Product with Serializable
A statement that raises a specified exception.
-
case class
RecordVar
(idn: IdnDef, fields: Seq[Identifier]) extends Declaration with Product with Serializable
A declaration of a record variable with the given fields.
-
case class
ReturnStmt
(value: Expression) extends Statement with Product with Serializable
A statement that returns a value and terminates the program.
-
case class
SlashExp
(left: Expression, right: Expression) extends Expression with Product with Serializable
An expression whose value is the division of the values of two expressions.
-
case class
StarExp
(left: Expression, right: Expression) extends Expression with Product with Serializable
An expression whose value is the product of the values of two expressions.
-
sealed abstract
class
Statement
extends ObrTree
Superclass of all statement classes.
- case class TryBody (stmts: Seq[Statement]) extends ObrTree with Product with Serializable
-
case class
TryStmt
(body: TryBody, catches: Seq[Catch]) extends Statement with Product with Serializable
A statement that is used to catch exception
-
case class
WhileStmt
(cond: Expression, body: Seq[Statement]) extends Statement with Product with Serializable
A statement that executes its body while its expression is true.
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )