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 <Decl.h>
Public Member Functions | |
virtual | ~Decl () |
IdentifierInfo * | getIdInfo () const |
const char * | getString () const |
Location | getLocation () const |
void | setDeclRegion (DeclRegion *region) |
DeclRegion * | getDeclRegion () |
const DeclRegion * | getDeclRegion () const |
bool | isDeclaredIn (const DeclRegion *region) const |
DeclRegion * | asDeclRegion () |
Decl * | getOrigin () |
const Decl * | getOrigin () const |
bool | hasOrigin () const |
Returns true if this decl has an origin. | |
void | setOrigin (Decl *decl) |
Sets the origin of this decl. | |
Decl * | resolveOrigin () |
Walks the chain of origins returning the final non-null declaration;. | |
const Decl * | resolveOrigin () const |
bool | isImmediate () const |
Static Public Member Functions | |
static bool | classof (const Decl *node) |
Support isa and dyn_cast. | |
static bool | classof (const Ast *node) |
Protected Member Functions | |
Decl (AstKind kind, IdentifierInfo *info=0, Location loc=0, DeclRegion *region=0) | |
Protected Attributes | |
IdentifierInfo * | idInfo |
Location | location |
DeclRegion * | context |
Decl * | origin |
Definition at line 32 of file Decl.h.
comma::Decl::Decl | ( | AstKind | kind, | |
IdentifierInfo * | info = 0 , |
|||
Location | loc = 0 , |
|||
DeclRegion * | region = 0 | |||
) | [inline, protected] |
DeclRegion * Decl::asDeclRegion | ( | ) |
Returns this cast to a DeclRegion, or null if this decl is not also a declarative region.
static bool comma::Decl::classof | ( | const Ast * | node | ) | [inline, static] |
Reimplemented in comma::FunctionAttribDecl, comma::PosAD, comma::ValAD, comma::ImportDecl, comma::ExceptionDecl, comma::ModelDecl, comma::Sigoid, comma::SignatureDecl, comma::VarietyDecl, comma::Domoid, comma::AddDecl, comma::DomainDecl, comma::FunctorDecl, comma::SigInstanceDecl, comma::ValueDecl, comma::ParamValueDecl, comma::ObjectDecl, comma::RenamedObjectDecl, comma::LoopDecl, comma::SubroutineDecl, comma::ProcedureDecl, comma::FunctionDecl, comma::EnumLiteral, comma::TypeDecl, comma::IncompleteTypeDecl, comma::CarrierDecl, comma::EnumerationDecl, comma::IntegerDecl, comma::ArrayDecl, comma::RecordDecl, comma::ComponentDecl, comma::AccessDecl, comma::DomainTypeDecl, comma::AbstractDomainDecl, comma::DomainInstanceDecl, and comma::PercentDecl.
static bool comma::Decl::classof | ( | const Decl * | node | ) | [inline, static] |
Support isa and dyn_cast.
Reimplemented from comma::Ast.
Reimplemented in comma::FunctionAttribDecl, comma::PosAD, comma::ValAD, comma::ImportDecl, comma::ExceptionDecl, comma::ModelDecl, comma::Sigoid, comma::SignatureDecl, comma::VarietyDecl, comma::Domoid, comma::AddDecl, comma::DomainDecl, comma::FunctorDecl, comma::SigInstanceDecl, comma::ValueDecl, comma::ParamValueDecl, comma::ObjectDecl, comma::RenamedObjectDecl, comma::LoopDecl, comma::SubroutineDecl, comma::ProcedureDecl, comma::FunctionDecl, comma::EnumLiteral, comma::TypeDecl, comma::IncompleteTypeDecl, comma::CarrierDecl, comma::EnumerationDecl, comma::IntegerDecl, comma::ArrayDecl, comma::RecordDecl, comma::ComponentDecl, comma::AccessDecl, comma::DomainTypeDecl, comma::AbstractDomainDecl, comma::DomainInstanceDecl, and comma::PercentDecl.
const DeclRegion* comma::Decl::getDeclRegion | ( | ) | const [inline] |
Reimplemented in comma::EnumLiteral, and comma::ComponentDecl.
DeclRegion* comma::Decl::getDeclRegion | ( | ) | [inline] |
Reimplemented in comma::EnumLiteral, and comma::ComponentDecl.
IdentifierInfo* comma::Decl::getIdInfo | ( | ) | const [inline] |
Location comma::Decl::getLocation | ( | ) | const [inline, virtual] |
Accesses the location of this node.
If no location information is available, or if this node was created internally by the compiler, an invalid location object (queriable by Location::isValid()) is returned.
Reimplemented from comma::Ast.
const Decl* comma::Decl::getOrigin | ( | ) | const [inline] |
Reimplemented in comma::SubroutineDecl.
Decl* comma::Decl::getOrigin | ( | ) | [inline] |
Returns the origin of this decl, or null if there is no associated origin.
A declaration has an origin if it is not an immediate declaration. That is to say, the declaration was implicitly generated due to inheritance from a supersignature. The returned node is the actual declaration object provided by some supersignature.
Reimplemented in comma::SubroutineDecl.
bool comma::Decl::hasOrigin | ( | ) | const [inline] |
bool comma::Decl::isDeclaredIn | ( | const DeclRegion * | region | ) | const [inline] |
bool comma::Decl::isImmediate | ( | ) | const [inline] |
Returns true if this declaration is immediate.
An immediate declaration is one which directly corresponds to a declaration voiced in the source code -- as opposed to one implicitly generated by the compiler. The canonical example of a non-immediate declaration is one which was inherited from a supersignature.
const Decl* comma::Decl::resolveOrigin | ( | ) | const [inline] |
Reimplemented in comma::SubroutineDecl.
Decl * Decl::resolveOrigin | ( | ) |
Walks the chain of origins returning the final non-null declaration;.
Reimplemented in comma::SubroutineDecl.
void comma::Decl::setDeclRegion | ( | DeclRegion * | region | ) | [inline] |
void comma::Decl::setOrigin | ( | Decl * | decl | ) | [inline] |
DeclRegion* comma::Decl::context [protected] |
IdentifierInfo* comma::Decl::idInfo [protected] |
Location comma::Decl::location [protected] |
Decl* comma::Decl::origin [protected] |