#include <Type.h>


Public Member Functions | |
| virtual | ~IntegerType () |
| void | getLowerLimit (llvm::APInt &res) const |
| void | getUpperLimit (llvm::APInt &res) const |
| bool | baseContains (const llvm::APInt &value) const |
| uint64_t | getSize () const |
| bool | isConstrained () const |
| Returns true if this type is constrained. | |
| PosAD * | getPosAttribute () |
| ValAD * | getValAttribute () |
| IntegerKind | getIntegerKind () const |
| Returns the IntegerKind of this node. For internal use only. | |
Static Public Member Functions | |
| static bool | classof (const IntegerType *node) |
| Support isa and dyn_cast. | |
| static bool | classof (const Ast *node) |
Protected Types | |
| enum | IntegerKind { RootIntegerType_KIND, UnconstrainedIntegerType_KIND, ConstrainedIntegerType_KIND } |
Protected Member Functions | |
| IntegerType (IntegerKind kind, IntegerType *rootOrParent) | |
| Constructor for the internal subclasses (not for use by AstResource). | |
Static Protected Member Functions | |
| static bool | isSubtypeKind (IntegerKind kind) |
| Returns true if the given kind denotes a subtype. | |
Friends | |
| class | AstResource |
|
| |
| const IntegerType * | getBaseSubtype () const |
| Returns the base subtype. | |
| IntegerType * | getBaseSubtype () |
| Returns the base subtype. | |
| Range * | getConstraint () |
| Returns the Range associated with this IntegerType, or null if this is an unconstrained type. | |
| const Range * | getConstraint () const |
| Returns the base subtype. | |
| IntegerType * | getRootType () |
| Specialize PrimaryType::getRootType(). | |
| const IntegerType * | getRootType () const |
| Returns the base subtype. | |
Definition at line 864 of file Type.h.
enum comma::IntegerType::IntegerKind [protected] |
IntegerType nodes are implemented using three internal classes represeting the root, constrained, and unconstrained cases. The following enumeration identifies each of these classes and is encoded into the AST::bits field.
| virtual comma::IntegerType::~IntegerType | ( | ) | [inline, virtual] |
| comma::IntegerType::IntegerType | ( | IntegerKind | kind, | |
| IntegerType * | rootOrParent | |||
| ) | [inline, protected] |
Constructor for the internal subclasses (not for use by AstResource).
| bool IntegerType::baseContains | ( | const llvm::APInt & | value | ) | const |
| static bool comma::IntegerType::classof | ( | const Ast * | node | ) | [inline, static] |
Reimplemented from comma::DiscreteType.
| static bool comma::IntegerType::classof | ( | const IntegerType * | node | ) | [inline, static] |
Support isa and dyn_cast.
Reimplemented from comma::DiscreteType.
| IntegerType * IntegerType::getBaseSubtype | ( | ) |
| const IntegerType* comma::IntegerType::getBaseSubtype | ( | ) | const [inline] |
| const Range * IntegerType::getConstraint | ( | ) | const [virtual] |
Returns the base subtype.
The base subtype is a distinguished unconstrained subtype corresponding to the attribute S'Base.
Implements comma::DiscreteType.
| Range * IntegerType::getConstraint | ( | ) | [virtual] |
Returns the Range associated with this IntegerType, or null if this is an unconstrained type.
Implements comma::DiscreteType.
| IntegerKind comma::IntegerType::getIntegerKind | ( | ) | const [inline] |
| void IntegerType::getLowerLimit | ( | llvm::APInt & | res | ) | const [virtual] |
Returns the lower limit for this type.
Implements comma::DiscreteType.
| PosAD * IntegerType::getPosAttribute | ( | ) | [virtual] |
Returns the declaration corresponding to the Pos attribute for this type.
Implements comma::DiscreteType.
| const IntegerType* comma::IntegerType::getRootType | ( | ) | const [inline] |
Returns the base subtype.
The base subtype is a distinguished unconstrained subtype corresponding to the attribute S'Base.
Reimplemented from comma::DiscreteType.
| IntegerType* comma::IntegerType::getRootType | ( | ) | [inline] |
Specialize PrimaryType::getRootType().
Reimplemented from comma::DiscreteType.
| uint64_t IntegerType::getSize | ( | ) | const [virtual] |
Returns the number of bits needed to represent this type.
Implements comma::DiscreteType.
| void IntegerType::getUpperLimit | ( | llvm::APInt & | res | ) | const [virtual] |
Returns the upper limit for this type.
Implements comma::DiscreteType.
| ValAD * IntegerType::getValAttribute | ( | ) | [virtual] |
Returns the declaration corresponding to the Val attribute for this type.
Implements comma::DiscreteType.
| bool comma::IntegerType::isConstrained | ( | ) | const [inline, virtual] |
Returns true if this type is constrained.
Reimplemented from comma::PrimaryType.
| static bool comma::IntegerType::isSubtypeKind | ( | IntegerKind | kind | ) | [inline, static, protected] |
friend class AstResource [friend] |
1.6.1