#include <Type.h>


Public Types | |
| enum | Classification {  CLASS_Scalar, CLASS_Discrete, CLASS_Enum, CLASS_Integer, CLASS_Composite, CLASS_Array, CLASS_String, CLASS_Access, CLASS_Record }  | 
Public Member Functions | |
| virtual | ~Type () | 
| bool | memberOf (Classification ID) const | 
| Returns true if this type is a member of the given classification.   | |
| bool | isScalarType () const | 
| Returns true if this type denotes a scalar type.   | |
| bool | isDiscreteType () const | 
| Returns true if this type denotes a discrete type.   | |
| bool | isIntegerType () const | 
| Returns true if this type denotes an integer type.   | |
| bool | isEnumType () const | 
| Returns true if this type denotes an enumeration type.   | |
| bool | isCompositeType () const | 
| Returns true if this type denotes a composite type.   | |
| bool | isArrayType () const | 
| Returns true if this type denotes an array type.   | |
| bool | isRecordType () const | 
| Returns true if this type denotes a record type.   | |
| bool | isStringType () const | 
| Returns true if this type denotes a string type.   | |
| bool | isAccessType () const | 
| Returns true if this type denotes an access type.   | |
| bool | isFatAccessType () const | 
| Returns true if this type denotes a fat access type.   | |
| bool | isThinAccessType () const | 
| Returns true if this type denotes a thin access type.   | |
| bool | isUniversalType () const | 
| Returns true if this is a universal type.   | |
| bool | isUniversalIntegerType () const | 
| Returns true if this is the universal integer type.   | |
| bool | isUniversalAccessType () const | 
| Returns true if this is the universal access type.   | |
| bool | isUniversalFixedType () const | 
| Returns true if this is the universal fixed type.   | |
| bool | isUniversalRealType () const | 
| Returns true if this is the universal real type.   | |
| bool | isUniversalTypeOf (const Type *type) const | 
| ArrayType * | getAsArrayType () | 
| IntegerType * | getAsIntegerType () | 
| EnumerationType * | getAsEnumType () | 
| bool | involvesPercent () const | 
| bool | isIndefiniteType () const | 
| Returns true if this is an indenfinite type.   | |
| bool | isDefiniteType () const | 
| Returns true if this is a definite type.   | |
Static Public Member Functions | |
| static bool | classof (const Type *node) | 
| Support isa and dyn_cast.   | |
| static bool | classof (const Ast *node) | 
Protected Member Functions | |
| Type (AstKind kind) | |
Definition at line 28 of file Type.h.
| static bool comma::Type::classof | ( | const Ast * | node | ) |  [inline, static] | 
        
Reimplemented in comma::SubroutineType, comma::FunctionType, comma::ProcedureType, comma::UniversalType, comma::PrimaryType, comma::IncompleteType, comma::DomainType, comma::DiscreteType, comma::EnumerationType, comma::IntegerType, comma::CompositeType, comma::ArrayType, comma::RecordType, and comma::AccessType.
| static bool comma::Type::classof | ( | const Type * | node | ) |  [inline, static] | 
        
Support isa and dyn_cast.
Reimplemented from comma::Ast.
Reimplemented in comma::SubroutineType, comma::FunctionType, comma::ProcedureType, comma::UniversalType, comma::PrimaryType, comma::IncompleteType, comma::DomainType, comma::DiscreteType, comma::EnumerationType, comma::IntegerType, comma::CompositeType, comma::ArrayType, comma::RecordType, and comma::AccessType.
| EnumerationType * Type::getAsEnumType | ( | ) | 
| IntegerType * Type::getAsIntegerType | ( | ) | 
| bool Type::involvesPercent | ( | ) | const | 
| bool Type::isAccessType | ( | ) | const | 
| bool Type::isArrayType | ( | ) | const | 
| bool Type::isCompositeType | ( | ) | const | 
| bool comma::Type::isDefiniteType | ( | ) |  const [inline] | 
        
| bool Type::isDiscreteType | ( | ) | const | 
| bool Type::isEnumType | ( | ) | const | 
| bool Type::isFatAccessType | ( | ) | const | 
| bool Type::isIndefiniteType | ( | ) | const | 
| bool Type::isIntegerType | ( | ) | const | 
| bool Type::isRecordType | ( | ) | const | 
| bool Type::isScalarType | ( | ) | const | 
| bool Type::isStringType | ( | ) | const | 
| bool Type::isThinAccessType | ( | ) | const | 
| bool Type::isUniversalAccessType | ( | ) | const | 
Returns true if this is the universal access type.
Reimplemented in comma::UniversalType.
| bool Type::isUniversalFixedType | ( | ) | const | 
Returns true if this is the universal fixed type.
Reimplemented in comma::UniversalType.
| bool Type::isUniversalIntegerType | ( | ) | const | 
Returns true if this is the universal integer type.
Reimplemented in comma::UniversalType.
| bool Type::isUniversalRealType | ( | ) | const | 
Returns true if this is the universal real type.
Reimplemented in comma::UniversalType.
| bool Type::isUniversalType | ( | ) | const | 
| bool Type::isUniversalTypeOf | ( | const Type * | type | ) | const | 
| bool Type::memberOf | ( | Classification | ID | ) | const | 
 1.6.1