Uses of Interface
org.norecess.citkit.types.HobbesType

Packages that use HobbesType
org.norecess.citkit.tir This package provides the classes necessary to implement a Tree Intermediate Representation (TIR) of a program. 
org.norecess.citkit.tir.data   
org.norecess.citkit.tir.expressions This package provides the classes for the expressions in a language. 
org.norecess.citkit.tir.lvalues   
org.norecess.citkit.types   
 

Uses of HobbesType in org.norecess.citkit.tir
 

Methods in org.norecess.citkit.tir that return HobbesType
 HobbesType ExpressionTIR.getType()
          Retrieves the type of the expression.
 HobbesType LValueTIR.getType()
          Returns the type of the l-value.
 

Methods in org.norecess.citkit.tir with parameters of type HobbesType
 void LValueTIR.setType(HobbesType type)
          Sets the type of the l-value.
 

Uses of HobbesType in org.norecess.citkit.tir.data
 

Methods in org.norecess.citkit.tir.data that return HobbesType
 HobbesType DatumTIR.getType()
           
 

Uses of HobbesType in org.norecess.citkit.tir.expressions
 

Methods in org.norecess.citkit.tir.expressions that return HobbesType
 HobbesType ForETIR.getType()
           
 HobbesType OperatorETIR.getType()
          Currently, this method returns the type of the left subtree.
 HobbesType RecordETIR.getType()
           
 HobbesType LetETIR.getType()
           
 HobbesType AssignmentETIR.getType()
           
 HobbesType BooleanETIR.getType()
           
 HobbesType LambdaETIR.getType()
           
 HobbesType VariableETIR.getType()
           
 HobbesType IfETIR.getType()
          By default, this returns the type of the then clause.
 HobbesType ArrayETIR.getType()
           
 HobbesType NilETIR.getType()
           
 HobbesType SequenceETIR.getType()
           
 HobbesType CallETIR.getType()
           
 HobbesType BreakETIR.getType()
           
 HobbesType FieldAssignmentTIR.getType()
           
 

Methods in org.norecess.citkit.tir.expressions that return types with arguments of type HobbesType
 SymbolTable<HobbesType> LetETIR.getTypeTable()
           
 

Methods in org.norecess.citkit.tir.expressions with parameters of type HobbesType
 void ICallETIR.setType(HobbesType type)
           
 void VariableETIR.setType(HobbesType type)
           
 void CallETIR.setType(HobbesType type)
           
 

Method parameters in org.norecess.citkit.tir.expressions with type arguments of type HobbesType
 void LetETIR.setTypeTable(SymbolTable<HobbesType> typeTable)
           
 

Constructors in org.norecess.citkit.tir.expressions with parameters of type HobbesType
CallETIR(ExpressionTIR function, java.util.List<? extends ExpressionTIR> arguments, HobbesType type)
          Basic constructor.
CallETIR(IPosition position, ExpressionTIR function, java.util.List<? extends ExpressionTIR> arguments, HobbesType type)
          Constructs a function invocation.
VariableETIR(IPosition position, LValueTIR lvalue, HobbesType type)
          Constructs a variable expression.
VariableETIR(LValueTIR lvalue, HobbesType type)
          Basic constructor.
 

Uses of HobbesType in org.norecess.citkit.tir.lvalues
 

Methods in org.norecess.citkit.tir.lvalues that return HobbesType
 HobbesType FieldLValueTIR.getType()
           
 HobbesType SubscriptLValueTIR.getType()
           
 HobbesType SimpleLValueTIR.getType()
           
 

Methods in org.norecess.citkit.tir.lvalues with parameters of type HobbesType
 void FieldLValueTIR.setType(HobbesType type)
           
 void SubscriptLValueTIR.setType(HobbesType type)
           
 void SimpleLValueTIR.setType(HobbesType type)
           
 

Constructors in org.norecess.citkit.tir.lvalues with parameters of type HobbesType
SimpleLValueTIR(IPosition position, ISymbol name, HobbesType type)
          Constructs a simple variable reference.
SimpleLValueTIR(ISymbol name, HobbesType type)
          Basic constructor.
 

Uses of HobbesType in org.norecess.citkit.types
 

Subinterfaces of HobbesType in org.norecess.citkit.types
 interface IArrayType
           
 interface IFunctionType
           
 interface INameType
           
 interface IRecordType
           
 interface PrimitiveType
          Primitive language types (like int and string).
 

Classes in org.norecess.citkit.types that implement HobbesType
 class ArrayType
          Data type for arrays.
 class BooleanType
           
 class FunctionType
          Entry in type table for functions.
 class IntegerType
          Data type for integers.
 class NameType
          Data type for a named type.
 class NilType
          Data type for the nil object.
 class RecordType
          Data type for records.
 class StringType
          Data type for strings.
 class VoidType
          Data type for the void type.
 

Methods in org.norecess.citkit.types that return HobbesType
 HobbesType FunctionType.actual()
           
 HobbesType BooleanType.actual()
           
 HobbesType NilType.actual()
           
 HobbesType StringType.actual()
           
 HobbesType VoidType.actual()
           
 HobbesType NameType.actual()
          Returns the actual data type this named type represents.
 HobbesType IntegerType.actual()
           
 HobbesType RecordType.actual()
           
 HobbesType ArrayType.actual()
           
 HobbesType HobbesType.actual()
           
 HobbesType RecordType.get(ISymbol symbol)
           
 HobbesType IRecordType.get(ISymbol symbol)
           
 HobbesType RecordType.get(java.lang.String name)
           
 HobbesType IRecordType.get(java.lang.String name)
           
 HobbesType INameType.getBinding()
          Returns the binding of this named type.
 HobbesType NameType.getBinding()
          Returns the binding of this named type.
 HobbesType IArrayType.getElementType()
           
 HobbesType ArrayType.getElementType()
           
 HobbesType FunctionType.getReturnType()
           
 HobbesType IFunctionType.getReturnType()
           
 HobbesType TypeExpression.getType()
           
 HobbesType RecordType.getTypeFromLexicalEnvironment(ISymbol symbol)
           
 HobbesType IRecordType.getTypeFromLexicalEnvironment(ISymbol symbol)
           
 

Methods in org.norecess.citkit.types that return types with arguments of type HobbesType
 java.util.List<HobbesType> ParametersTypes.getParameters()
           
 java.util.Iterator<HobbesType> ParametersTypes.iterator()
           
 

Methods in org.norecess.citkit.types with parameters of type HobbesType
 void INameType.bind(HobbesType type)
          Binds the named type to another type.
 void NameType.bind(HobbesType type)
          Binds the named type to another type.
 

Constructors in org.norecess.citkit.types with parameters of type HobbesType
ArrayType(HobbesType elementType)
           
FunctionType(ParametersTypes formals, HobbesType returnType)
          Constructs the types for a function call.
NameType(ISymbol symbol, HobbesType binding)
           
NameType(java.lang.String name, HobbesType binding)
           
TypeExpression(HobbesType type)
           
TypeExpression(HobbesType type, HobbesTIR expression)
           
 

Constructor parameters in org.norecess.citkit.types with type arguments of type HobbesType
ParametersTypes(java.util.List<HobbesType> parameters)
           
RecordType(java.util.Map<Symbol,HobbesType> fields)
          Deprecated. Use RecordType.RecordType(Map, SymbolTable) instead.
RecordType(java.util.Map<Symbol,HobbesType> fields, SymbolTable<HobbesType> environment)
           
RecordType(java.util.Map<Symbol,HobbesType> fields, SymbolTable<HobbesType> environment)