Ninja
Public Member Functions | Public Attributes
Edge Struct Reference

An edge in the dependency graph; links between Nodes using Rules. More...

#include <graph.h>

List of all members.

Public Member Functions

void Dump ()
 Edge ()
string EvaluateCommand ()
string GetDescription ()
bool is_implicit (int index)
bool is_order_only (int index)
bool is_phony () const
bool LoadDepFile (State *state, DiskInterface *disk_interface, string *err)
bool outputs_ready () const
bool RecomputeDirty (State *state, DiskInterface *disk_interface, string *err)
void RecomputeOutputDirty (BuildLog *build_log, time_t most_recent_input, bool dirty, const string &command, Node *output)

Public Attributes

Envenv_
int implicit_deps_
vector< Node * > inputs_
int order_only_deps_
vector< Node * > outputs_
bool outputs_ready_
const Rulerule_

Detailed Description

An edge in the dependency graph; links between Nodes using Rules.

Definition at line 79 of file graph.h.


Constructor & Destructor Documentation

Edge::Edge ( ) [inline]

Definition at line 80 of file graph.h.


Member Function Documentation

void Edge::Dump ( )

Definition at line 236 of file graph.cc.

References inputs_, Rule::name_, outputs_, and rule_.

string Edge::EvaluateCommand ( )
string Edge::GetDescription ( )

Definition at line 168 of file graph.cc.

References Rule::description_, EvalString::Evaluate(), and rule_.

Referenced by BuildStatus::PrintStatus().

bool Edge::is_implicit ( int  index) [inline]

Definition at line 113 of file graph.h.

Referenced by TEST_F().

bool Edge::is_order_only ( int  index) [inline]

Definition at line 117 of file graph.h.

Referenced by GraphViz::AddTarget(), RecomputeDirty(), and TEST_F().

bool Edge::is_phony ( ) const
bool Edge::LoadDepFile ( State state,
DiskInterface disk_interface,
string *  err 
)
bool Edge::outputs_ready ( ) const [inline]

Definition at line 98 of file graph.h.

Referenced by Plan::AddSubTarget().

bool Edge::RecomputeDirty ( State state,
DiskInterface disk_interface,
string *  err 
)
void Edge::RecomputeOutputDirty ( BuildLog build_log,
time_t  most_recent_input,
bool  dirty,
const string &  command,
Node output 
)

Member Data Documentation

Definition at line 95 of file graph.h.

Referenced by State::AddEdge(), EdgeEnv::LookupVariable(), and ManifestParser::ParseEdge().

Definition at line 111 of file graph.h.

Referenced by LoadDepFile(), EdgeEnv::LookupVariable(), ManifestParser::ParseEdge(), and TEST_F().

vector<Node*> Edge::inputs_
vector<Node*> Edge::outputs_

Definition at line 96 of file graph.h.

Referenced by Plan::EdgeFinished(), LoadDepFile(), and RecomputeDirty().

const Rule* Edge::rule_

The documentation for this struct was generated from the following files: