#include <Type.h>


Public Member Functions | |
| virtual | ~EnumerationType () | 
| void | getLowerLimit (llvm::APInt &res) const | 
| void | getUpperLimit (llvm::APInt &res) const | 
| uint64_t | getSize () const | 
| uint64_t | getNumLiterals () const | 
| Returns the number of literals in this enumeration type.   | |
| bool | isCharacterType () const | 
| Returns true if this enumeration type is a character type.   | |
| bool | isConstrained () const | 
| Returns true if this type is constrained.   | |
| PosAD * | getPosAttribute () | 
| ValAD * | getValAttribute () | 
| EnumKind | getEnumKind () const | 
| Returns the EnumKind of this node. For internal use only.   | |
| Range * | getConstraint () | 
| const Range * | getConstraint () const | 
| EnumerationType * | getRootType () | 
| Specialize PrimaryType::getRootType().   | |
| const EnumerationType * | getRootType () const | 
| EnumerationType * | getBaseSubtype () | 
| Returns the base (unconstrained) subtype of this enumeration type.   | |
| const EnumerationType * | getBaseSubtype () const | 
| const EnumerationDecl * | getDefiningDecl () const | 
| Returns the underlying enumeration declaration for this type.   | |
| EnumerationDecl * | getDefiningDecl () | 
Static Public Member Functions | |
| static bool | classof (const EnumerationType *node) | 
| Support isa and dyn_cast.   | |
| static bool | classof (const Ast *node) | 
Protected Types | |
| enum | EnumKind { RootEnumType_KIND, UnconstrainedEnumType_KIND, ConstrainedEnumType_KIND } | 
EnumerationType nodes are implemented using three internal classes. More... | |
Protected Member Functions | |
| EnumerationType (EnumKind kind, EnumerationType *rootOrParent) | |
| Constructor for the internal subclasses (not for use by AstResource).   | |
Static Protected Member Functions | |
| static bool | isSubtypeKind (EnumKind kind) | 
| Returns true if the given kind denotes a subtype.   | |
Friends | |
| class | AstResource | 
Definition at line 736 of file Type.h.
enum comma::EnumerationType::EnumKind [protected] | 
        
EnumerationType nodes are implemented using three internal classes.
| virtual comma::EnumerationType::~EnumerationType | ( | ) |  [inline, virtual] | 
        
| comma::EnumerationType::EnumerationType | ( | EnumKind | kind, | |
| EnumerationType * | rootOrParent | |||
| ) |  [inline, protected] | 
        
Constructor for the internal subclasses (not for use by AstResource).
| static bool comma::EnumerationType::classof | ( | const Ast * | node | ) |  [inline, static] | 
        
Reimplemented from comma::DiscreteType.
| static bool comma::EnumerationType::classof | ( | const EnumerationType * | node | ) |  [inline, static] | 
        
Support isa and dyn_cast.
Reimplemented from comma::DiscreteType.
| const EnumerationType * EnumerationType::getBaseSubtype | ( | ) | const | 
| EnumerationType * EnumerationType::getBaseSubtype | ( | ) | 
| const Range * EnumerationType::getConstraint | ( | ) |  const [virtual] | 
        
Returns the constraint associated with this enumeration or null if this is an unconstrained type.
Implements comma::DiscreteType.
| Range * EnumerationType::getConstraint | ( | ) |  [virtual] | 
        
Returns the constraint associated with this enumeration or null if this is an unconstrained type.
Implements comma::DiscreteType.
| EnumerationDecl * EnumerationType::getDefiningDecl | ( | ) | 
| const EnumerationDecl* comma::EnumerationType::getDefiningDecl | ( | ) |  const [inline] | 
        
| EnumKind comma::EnumerationType::getEnumKind | ( | ) |  const [inline] | 
        
| void EnumerationType::getLowerLimit | ( | llvm::APInt & | res | ) |  const [virtual] | 
        
Returns the lower limit for this type.
Implements comma::DiscreteType.
| uint64_t EnumerationType::getNumLiterals | ( | ) | const | 
| PosAD * EnumerationType::getPosAttribute | ( | ) |  [virtual] | 
        
Returns the declaration corresponding to the Pos attribute for this type.
Implements comma::DiscreteType.
| const EnumerationType* comma::EnumerationType::getRootType | ( | ) |  const [inline] | 
        
Returns the constraint associated with this enumeration or null if this is an unconstrained type.
Reimplemented from comma::DiscreteType.
| EnumerationType* comma::EnumerationType::getRootType | ( | ) |  [inline] | 
        
Specialize PrimaryType::getRootType().
Reimplemented from comma::DiscreteType.
| uint64_t EnumerationType::getSize | ( | ) |  const [virtual] | 
        
Returns the number of bits needed to represent this type.
Implements comma::DiscreteType.
| void EnumerationType::getUpperLimit | ( | llvm::APInt & | res | ) |  const [virtual] | 
        
Returns the upper limit for this type.
Implements comma::DiscreteType.
| ValAD * EnumerationType::getValAttribute | ( | ) |  [virtual] | 
        
Returns the declaration corresponding to the Val attribute for this type.
Implements comma::DiscreteType.
| bool EnumerationType::isCharacterType | ( | ) | const | 
| bool comma::EnumerationType::isConstrained | ( | ) |  const [inline, virtual] | 
        
Returns true if this type is constrained.
Reimplemented from comma::PrimaryType.
| static bool comma::EnumerationType::isSubtypeKind | ( | EnumKind | kind | ) |  [inline, static, protected] | 
        
friend class AstResource [friend] | 
        
 1.6.1