orc.ast.oil.type
Class Datatype

java.lang.Object
  extended by orc.ast.oil.type.Type
      extended by orc.ast.oil.type.Datatype

public class Datatype
extends Type

A type encompassing all of the information associated with a datatype.

Author:
dkitchin

Field Summary
 java.util.List<java.util.List<Type>> members
           
 int typeArity
           
 
Fields inherited from class orc.ast.oil.type.Type
BOT, TOP
 
Constructor Summary
Datatype(java.util.List<java.util.List<Type>> members, int typeArity, java.lang.String name)
           
 
Method Summary
 boolean equals(java.lang.Object obj)
           
 int hashCode()
           
 Type marshal()
          Convert this type into an XML-isomorphic format for serialization.
 Type transform(TypingContext ctx)
          Convert this syntactic type into an actual type, given an appropriate type context
 
Methods inherited from class orc.ast.oil.type.Type
inferredTypes, marshalAll, transformAll
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

members

public java.util.List<java.util.List<Type>> members

typeArity

public int typeArity
Constructor Detail

Datatype

public Datatype(java.util.List<java.util.List<Type>> members,
                int typeArity,
                java.lang.String name)
Method Detail

hashCode

public int hashCode()
Specified by:
hashCode in class Type

equals

public boolean equals(java.lang.Object obj)
Specified by:
equals in class Type

transform

public Type transform(TypingContext ctx)
               throws TypeException
Description copied from class: Type
Convert this syntactic type into an actual type, given an appropriate type context

Specified by:
transform in class Type
Parameters:
ctx - TODO
Returns:
A new node.
Throws:
TypeException - TODO

marshal

public Type marshal()
Description copied from class: Type
Convert this type into an XML-isomorphic format for serialization.

Specified by:
marshal in class Type