Puma Reference Manual | Puma: Puma::ACAdviceInfo Class Reference |
Semantic information about an AspectC++ 'advice' declaration. More...
#include <Puma/ACAdviceInfo.h>
Public Types | |
enum | advice_type { BEFORE, AROUND, AFTER } |
The three advice types: before, around, and after advice. More... | |
Public Member Functions | |
ACAdviceInfo (int n) | |
Construct an advice info object. | |
const char * | name () |
Get the internal name of the advice. | |
bool | is_inherited () |
Return true if the advice is inherited from another aspect. | |
void | is_inherited (bool i) |
Set the inherited state of the advice info. | |
void | parent (ACAdviceInfo *p) |
Set the parent advice. | |
ACAdviceInfo * | parent () |
Get the parent advice info. | |
ACAdviceInfo * | root () |
If an advice is inherited, this method returns the info of the advice of the aspect first defining the advice. | |
advice_type | type () |
Get the type of the advice. | |
void | def_node (CT_AdviceDecl *ad) |
Set the syntax tree node of the definition of the advice. | |
CT_AdviceDecl * | def_node () |
Get the advice definition syntax tree node. | |
void | decl_node (CT_AdviceDecl *ad) |
Set the syntax tree node of the declaration of the advice. | |
CT_AdviceDecl * | decl_node () |
Get the advice declaration syntax tree node. | |
void | Aspect (ACAspectInfo *ai) |
Set the aspect containing the advice. | |
ACAspectInfo * | Aspect () |
Get the aspect containing the advice. | |
CFunctionInfo * | function () |
Get the function info of the advice. | |
bool | uses_aspectOf () const |
Return true if the advice uses the aspectOf() function. | |
void | uses_aspectOf (bool u) |
Set the state whether the advice uses the aspectOf() function. |
Semantic information about an AspectC++ 'advice' declaration.
An advice is part of an aspect declaration.
Puma::ACAdviceInfo::ACAdviceInfo | ( | int | n | ) | [inline] |
Construct an advice info object.
Also constructs the internal name of an advice.
n | A consecutive number used for the unique internal name of the advice. |
ACAspectInfo* Puma::ACAdviceInfo::Aspect | ( | ) | [inline] |
Get the aspect containing the advice.
void Puma::ACAdviceInfo::Aspect | ( | ACAspectInfo * | ai | ) | [inline] |
Set the aspect containing the advice.
ai | The aspect info. |
CT_AdviceDecl* Puma::ACAdviceInfo::decl_node | ( | ) | [inline] |
Get the advice declaration syntax tree node.
void Puma::ACAdviceInfo::decl_node | ( | CT_AdviceDecl * | ad | ) | [inline] |
Set the syntax tree node of the declaration of the advice.
ad | The advice declaration syntax tree node. |
CT_AdviceDecl* Puma::ACAdviceInfo::def_node | ( | ) | [inline] |
Get the advice definition syntax tree node.
void Puma::ACAdviceInfo::def_node | ( | CT_AdviceDecl * | ad | ) | [inline] |
Set the syntax tree node of the definition of the advice.
ad | The advice definition syntax tree node. |
CFunctionInfo* Puma::ACAdviceInfo::function | ( | ) |
Get the function info of the advice.
Advice declarations are syntactically realized as function declaration.
void Puma::ACAdviceInfo::is_inherited | ( | bool | i | ) | [inline] |
Set the inherited state of the advice info.
i | true if the advice is inherited from another aspect. |
bool Puma::ACAdviceInfo::is_inherited | ( | ) | [inline] |
Return true if the advice is inherited from another aspect.
const char* Puma::ACAdviceInfo::name | ( | ) | [inline] |
Get the internal name of the advice.
ACAdviceInfo* Puma::ACAdviceInfo::parent | ( | ) | [inline] |
Get the parent advice info.
If an advice is inherited from another aspect, this method returns the info of the corresponding advice of the base aspect.
NULL
if advice is not inherited. void Puma::ACAdviceInfo::parent | ( | ACAdviceInfo * | p | ) | [inline] |
Set the parent advice.
The parent advice is the advice in the base aspect from which this advice inherits.
p | The advice info of the parent advice. |
ACAdviceInfo* Puma::ACAdviceInfo::root | ( | ) | [inline] |
If an advice is inherited, this method returns the info of the advice of the aspect first defining the advice.
advice_type Puma::ACAdviceInfo::type | ( | ) | [inline] |
Get the type of the advice.
void Puma::ACAdviceInfo::uses_aspectOf | ( | bool | u | ) | [inline] |
Set the state whether the advice uses the aspectOf() function.
u | true if the advice uses the aspectOf() function. |
bool Puma::ACAdviceInfo::uses_aspectOf | ( | ) | const [inline] |
Return true if the advice uses the aspectOf() function.