com.veromodo.tempo.sem.type
Class TypeFunctional

java.lang.Object
  extended by com.veromodo.tempo.sem.type.Type
      extended by com.veromodo.tempo.sem.type.TypeFunctional
All Implemented Interfaces:
java.lang.Comparable<Type>
Direct Known Subclasses:
TypeAutomaton, TypeFunction, TypeFunctionalGeneric, TypeIndexed

public abstract class TypeFunctional
extends Type

An abstraction of the group of types which can be interperated transformation from [T1] -> T2.


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
TypeFunctional()
           
 
Method Summary
abstract  Type.Order compare(Type t)
          Determines how Type t is realted to this.
 TypeFunctional downCastFunctional()
           
abstract  Type getCoDom()
           
abstract  TypeTuple getDom()
           
 boolean is(Type.TypeKind kind)
          Determines if the currently instance is of given TypeKind.
 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, downCastEnum, downCastEnumValue, downCastFloat, downCastFunction, downCastFunctionalGeneric, downCastGeneric, downCastInstance, downCastInt, downCastInt32, downCastList, downCastMap, downCastMeta, downCastNat, downCastNumeric, downCastParameter, downCastReal, downCastSum, downCastTuple, downCastVoid, equals, equals, getName, 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, resolve, select, toString
 
Methods inherited from class java.lang.Object
getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

TypeFunctional

public TypeFunctional()
Method Detail

compare

public abstract 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:

visit

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

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

downCastFunctional

public TypeFunctional downCastFunctional()
Overrides:
downCastFunctional in class Type

getDom

public abstract TypeTuple getDom()

getCoDom

public abstract Type getCoDom()