com.veromodo.tempo.sem.type
Class TypeEnum

java.lang.Object
  extended by com.veromodo.tempo.sem.type.Type
      extended by com.veromodo.tempo.sem.type.TypeEnum
All Implemented Interfaces:
java.lang.Comparable<Type>

public class TypeEnum
extends Type


Nested Class Summary
 
Nested classes/interfaces inherited from class com.veromodo.tempo.sem.type.Type
Type.Order, Type.TypeKind
 
Field Summary
 
Fields inherited from class com.veromodo.tempo.sem.type.Type
_name, DEFAULT_NAME
 
Constructor Summary
TypeEnum(java.lang.String name)
           
 
Method Summary
 TypeEnumValue addValue(java.lang.String lex)
           
 Type.Order compare(Type t)
          Determines how Type t is realted to this.
 TypeEnum downCastEnum()
           
 java.lang.String getName()
           
 java.util.Vector<EnumValue> getValues()
           
 boolean is(Type.TypeKind kind)
          Determines if the currently instance is of given TypeKind.
 Type makeSuccType()
          Manufactures the type of the succesor function required by the Sum type
 Type resolve()
          Replaces any bound type parameters with thier bound types.
 void setName(java.lang.String n)
           
 java.lang.String toString()
           
 void visit(TypeVisitor v)
           
 
Methods inherited from class com.veromodo.tempo.sem.type.Type
accept, acceptable, compareTo, constructedWith, downCastArray, downCastAugmentedReal, downCastAutomaton, downCastBasicAutomaton, downCastBool, downCastChar, downCastCompositeAutomaton, downCastConstructor, downCastDiscreteReal, downCastEnumValue, downCastFloat, downCastFunction, downCastFunctional, downCastFunctionalGeneric, downCastGeneric, downCastInstance, downCastInt, downCastInt32, downCastList, downCastMap, downCastMeta, downCastNat, downCastNumeric, downCastParameter, downCastReal, downCastSum, downCastTuple, downCastVoid, equals, equals, isArray, isAugmentedReal, isAutomaton, isBasicAutomaton, isBool, isChar, isCompositeAutomaton, isConstructor, isDiscreteReal, isEnum, isEnumValue, isEqualTo, isError, isFloat, isFun, isFunctional, isFunctionalGeneric, isGeneric, isId, isIndexed, isInstance, isInt, isInt32, isList, isMap, isMeta, isNat, isNumeric, isParameter, isReal, isSum, isTuple, isVariable, isVoid, lub, select
 
Methods inherited from class java.lang.Object
getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

TypeEnum

public TypeEnum(java.lang.String name)
Method Detail

compare

public Type.Order compare(Type t)
Description copied from class: Type
Determines how Type t is realted to this.

Specified by:
compare in class Type
Parameters:
t - to compare to this
Returns:

setName

public void setName(java.lang.String n)

getName

public java.lang.String getName()
Overrides:
getName in class Type

getValues

public java.util.Vector<EnumValue> getValues()

addValue

public TypeEnumValue addValue(java.lang.String lex)

is

public boolean is(Type.TypeKind kind)
Description copied from class: Type
Determines if the currently instance is of given TypeKind.

Overrides:
is in class Type
Parameters:
kind - the type of class to compare to
Returns:
true if this is of given TypeKind

downCastEnum

public TypeEnum downCastEnum()
Overrides:
downCastEnum in class Type

resolve

public Type resolve()
Description copied from class: Type
Replaces any bound type parameters with thier bound types. If all parameters are bound, the resulting type is not generic. If no parameters are bounf, the resulting type is this.

Overrides:
resolve in class Type
Returns:
a resolved type

toString

public java.lang.String toString()
Overrides:
toString in class Type

makeSuccType

public Type makeSuccType()
Manufactures the type of the succesor function required by the Sum type

Returns:
-> TypeEnumValue

visit

public void visit(TypeVisitor v)
Specified by:
visit in class Type