Represents a method type S1 -> S2
Represent a method signature
Represent a method signature
The method label
The method type
Represent a method definition
Represent a method definition
The name of the method
The list of formal arguments
The body expression
Represent an a method invocation expression
Represent an a method invocation expression
The receiver
The actual arguments
The method to invoke
Top Algebraic Data Type for expression in ObSec
Represents an object in ObSec
Represents an object in ObSec
The name of the "self" variable
The ascribed type of the object
The list of method definitions
Represents an object recursive type
Represents an object recursive type
The type variable
The list of method signatures of the object type
Represents a security type
Represents a security type
The private facet
The public facet
Surface expressions start here
Represents an abstract type in ObSec T ::= Obj(X)[mtype ...] | X
Represents a type variable
Represents a type variable
The variable name
Represents a variable expression.
Represents a method type S1 -> S2
The domain type
The codomain type