|
kiama 0.9.0 API
|
|
kiama/example/lambda2/AST.scala]
object
AST
extends AnyRef| Type Summary | |
type
|
Idn
Identifiers are represented as strings.
|
| Methods inherited from AnyRef | |
| getClass, hashCode, equals, clone, toString, notify, notifyAll, wait, wait, wait, finalize, ==, !=, eq, ne, synchronized |
| Methods inherited from Any | |
| ==, !=, isInstanceOf, asInstanceOf |
| Class Summary | |
case class
|
App
(val e1 : Exp, val e2 : Exp) extends Exp
Application of l to r.
|
case class
|
Bind
(val i : java.lang.String, val t : Type, val e : Exp) extends scala.Product
A single binding from a set of parallel bindings (Letp).
|
abstract class
|
Exp
extends Attributable
Expressions.
|
case class
|
FunType
(val t1 : Type, val t2 : Type) extends Type
Function type from an argument type arg to a result type res.
|
case class
|
Lam
(val i : java.lang.String, val t : Type, val e : Exp) extends Exp
Lambda expressions binding name of type tipe within body.
|
case class
|
Let
(val i : java.lang.String, val t : Type, val e1 : Exp, val e2 : Exp) extends Exp
Bind name of type tipe to the value of exp in body.
|
case class
|
Letp
(val bs : scala.List[Bind], val e : Exp) extends Exp
Parallel bindings in body.
|
case class
|
Num
(val n : Int) extends Exp
Numeric expressions.
|
abstract class
|
Op
extends AnyRef
Primitive binary operators.
|
case class
|
Opn
(val o : Op, val e1 : Exp, val e2 : Exp) extends Exp
An application of a primitive binary operation.
|
abstract class
|
Type
extends scala.Product
Types.
|
case class
|
Var
(val i : java.lang.String) extends Exp
Variable expressions.
|
| Object Summary | |
case object
|
AddOp
extends Op with scala.Product
Primitive integer addition.
|
case object
|
IntType
extends Type
Primitive integer type.
|
case object
|
SubOp
extends Op with scala.Product
Primitive integer subtraction.
|
| Type Details |
|
kiama 0.9.0 API
|
|