Lines Matching defs:node
97 bool Plan::AddSubTarget(const Node* node, const Node* dependent, string* err,
99 Edge* edge = node->in_edge();
101 // Leaf node, this can be either a regular input from the manifest
106 if (node->dirty() && !node->generated_by_dep_loader()) {
110 *err = "'" + node->path() + "'" + referenced +
130 if (node->dirty() && want == kWantNothing) {
145 if (!AddSubTarget(*i, node, err, dyndep_walk) && !err->empty())
174 // and one of its dependencies share an order-only input, or if a node
221 bool Plan::NodeFinished(Node* node, string* err) {
222 // If this node provides dyndep info, load it now.
223 if (node->dyndep_pending()) {
227 return builder_->LoadDyndeps(node, err);
230 // See if we we want any edges from this node.
231 for (vector<Edge*>::const_iterator oe = node->out_edges().begin();
232 oe != node->out_edges().end(); ++oe) {
259 bool Plan::CleanNode(DependencyScan* scan, Node* node, string* err) {
260 node->set_dirty(false);
262 for (vector<Edge*>::const_iterator oe = node->out_edges().begin();
263 oe != node->out_edges().end(); ++oe) {
319 bool Plan::DyndepsLoaded(DependencyScan* scan, const Node* node,
323 if (!RefreshDyndepDependents(scan, node, err))
326 // We loaded dyndep information for those out_edges of the dyndep node that
327 // specify the node in a dyndep binding, but they may not be in the plan.
364 // Add out edges from this node that are in the plan (just as
366 for (vector<Edge*>::const_iterator oe = node->out_edges().begin();
367 oe != node->out_edges().end(); ++oe) {
387 bool Plan::RefreshDyndepDependents(DependencyScan* scan, const Node* node,
392 UnmarkDependents(node, &dependents);
400 // Check if this dependent node is now dirty. Also checks for new cycles.
434 void Plan::UnmarkDependents(const Node* node, set<Node*>* dependents) {
435 for (vector<Edge*>::const_iterator oe = node->out_edges().begin();
436 oe != node->out_edges().end(); ++oe) {
594 Node* node = state_->LookupNode(name);
595 if (!node) {
599 if (!AddTarget(node, err))
601 return node;
1042 bool Builder::LoadDyndeps(Node* node, string* err) {
1045 // Load the dyndep information provided by this node.
1047 if (!scan_.LoadDyndeps(node, &ddf, err))
1051 if (!plan_.DyndepsLoaded(&scan_, node, ddf, err))