This machine mirrors various open-source projects.
20 Gbit/s uplink.
If there are any issues or you want another project mirrored, please contact
mirror-service -=AT=- netcologne DOT de !
#include <Type.h>
Public Member Functions | |
bool | isSubtype () const |
Returns true if this node denotes a subtype. | |
bool | isRootType () const |
Returns true if this node denotes a root type. | |
bool | isDerivedType () const |
Returns true if this is a derived type. | |
virtual bool | isConstrained () const |
bool | isUnconstrained () const |
Returns true if this type is unconstrained. | |
bool | isSubtypeOf (const PrimaryType *type) const |
const PrimaryType * | getRootType () const |
PrimaryType * | getRootType () |
PrimaryType * | getParentType () |
Returns the parent type of this type, or null if isDerivedType() returns false. | |
const PrimaryType * | getParentType () const |
const PrimaryType * | getAncestorType () const |
Returns the first ancestor type of this type, or null if this is a root type without a parent. | |
PrimaryType * | getAncestorType () |
Static Public Member Functions | |
static bool | classof (const PrimaryType *node) |
Support isa and dyn_cast. | |
static bool | classof (const Ast *node) |
Protected Member Functions | |
PrimaryType (AstKind kind, PrimaryType *rootOrParent, bool subtype) |
The PrimaryType class forms the principle root of the type hierarchy. Most type nodes inherit from PrimaryType, with the notable exception of SubroutineType.
Definition at line 328 of file Type.h.
comma::PrimaryType::PrimaryType | ( | AstKind | kind, | |
PrimaryType * | rootOrParent, | |||
bool | subtype | |||
) | [inline, protected] |
Protected constructor for primary types.
kind | The concrete kind tag for this node. | |
rootOrParent | If this is to represent a root type, then this argument is a pointer to the parent type or null. If this is to represent a subtype, then rootOrParent should point to the type of this subtype. | |
subtype | When true, the type under construction is a subtype. When false, the type is a root type. |
static bool comma::PrimaryType::classof | ( | const Ast * | node | ) | [inline, static] |
Reimplemented from comma::Type.
Reimplemented in comma::IncompleteType, comma::DomainType, comma::DiscreteType, comma::EnumerationType, comma::IntegerType, comma::CompositeType, comma::ArrayType, comma::RecordType, and comma::AccessType.
static bool comma::PrimaryType::classof | ( | const PrimaryType * | node | ) | [inline, static] |
Support isa and dyn_cast.
Reimplemented from comma::Type.
Reimplemented in comma::IncompleteType, comma::DomainType, comma::DiscreteType, comma::EnumerationType, comma::IntegerType, comma::CompositeType, comma::ArrayType, comma::RecordType, and comma::AccessType.
PrimaryType* comma::PrimaryType::getAncestorType | ( | ) | [inline] |
const PrimaryType* comma::PrimaryType::getAncestorType | ( | ) | const [inline] |
const PrimaryType* comma::PrimaryType::getParentType | ( | ) | const [inline] |
PrimaryType* comma::PrimaryType::getParentType | ( | ) | [inline] |
Returns the parent type of this type, or null if isDerivedType() returns false.
PrimaryType* comma::PrimaryType::getRootType | ( | ) | [inline] |
Returns the root type of this type. If this is a root type, returns a pointer to this, otherwise the type of this subtype is returned.
Reimplemented in comma::IncompleteType, comma::DomainType, comma::DiscreteType, comma::EnumerationType, comma::IntegerType, comma::ArrayType, comma::RecordType, and comma::AccessType.
const PrimaryType* comma::PrimaryType::getRootType | ( | ) | const [inline] |
Returns the root type of this type. If this is a root type, returns a pointer to this, otherwise the type of this subtype is returned.
Reimplemented in comma::IncompleteType, comma::DomainType, comma::DiscreteType, comma::EnumerationType, comma::IntegerType, comma::ArrayType, comma::RecordType, and comma::AccessType.
virtual bool comma::PrimaryType::isConstrained | ( | ) | const [inline, virtual] |
Returns true if this type is constrained.
Reimplemented in comma::EnumerationType, comma::IntegerType, comma::ArrayType, and comma::RecordType.
bool comma::PrimaryType::isDerivedType | ( | ) | const [inline] |
bool comma::PrimaryType::isRootType | ( | ) | const [inline] |
bool comma::PrimaryType::isSubtype | ( | ) | const [inline] |
bool comma::PrimaryType::isSubtypeOf | ( | const PrimaryType * | type | ) | const [inline] |
bool comma::PrimaryType::isUnconstrained | ( | ) | const [inline] |