Otawa
0.10
|
A feature dependency represents the dependencies used to implement a feature and is a node of the dependency graph. More...
#include <otawa/proc/FeatureDependency.h>
Classes | |
class | Dependent |
Public Member Functions | |
FeatureDependency (const AbstractFeature *_feature) | |
Build a dependency for the given feature. More... | |
~FeatureDependency (void) | |
void | add (FeatureDependency *to) |
Create a dependency from the current feature to the given one. More... | |
void | remove (FeatureDependency *from) |
Remove the dependency of the current feature from the given one. More... | |
const AbstractFeature * | getFeature (void) const |
Get the feature supported by this dependency. More... | |
void | add (Cleaner *cleaner) |
void | clean (void) |
Cleaner * | operator() (Cleaner *cleaner) |
const AutoPtr< T > & | operator() (const AutoPtr< T > &object) |
T * | operator() (T *object) |
Private Types | |
typedef genstruct::SLList < FeatureDependency * > | list_t |
Private Attributes | |
const AbstractFeature * | feature |
list_t | parents |
list_t | children |
A feature dependency represents the dependencies used to implement a feature and is a node of the dependency graph.
|
private |
otawa::FeatureDependency::FeatureDependency | ( | const AbstractFeature * | _feature | ) |
Build a dependency for the given feature.
_feature | Feature this dependency represents. |
otawa::FeatureDependency::~FeatureDependency | ( | void | ) |
References children, elm::genstruct::SLList< T, E >::isEmpty(), and parents.
void otawa::FeatureDependency::add | ( | FeatureDependency * | to | ) |
Create a dependency from the current feature to the given one.
to | Feature which the current feature depends to. |
References elm::genstruct::SLList< T, E >::add(), children, and parents.
Referenced by otawa::WorkSpace::provide().
|
inline |
Get the feature supported by this dependency.
void otawa::FeatureDependency::remove | ( | FeatureDependency * | from | ) |
Remove the dependency of the current feature from the given one.
from | Feature to remove depedency from. |
References children, parents, and elm::genstruct::SLList< T, E >::remove().
|
private |
Referenced by add(), remove(), and ~FeatureDependency().
|
private |
|
private |
Referenced by add(), remove(), and ~FeatureDependency().