15 #ifndef NINJA_DEPS_LOG_H_ 16 #define NINJA_DEPS_LOG_H_ 69 DepsLog() : needs_recompaction_(false), file_(NULL) {}
73 bool OpenForWrite(
const string& path,
string* err);
74 bool RecordDeps(
Node* node,
TimeStamp mtime,
const vector<Node*>& nodes);
81 : mtime(mtime), node_count(node_count), nodes(new
Node*[node_count]) {}
87 bool Load(
const string& path,
State* state,
string* err);
91 bool Recompact(
const string& path,
string* err);
99 bool IsDepsEntryLiveFor(
Node* node);
102 const vector<Node*>&
nodes()
const {
return nodes_; }
103 const vector<Deps*>&
deps()
const {
return deps_; }
108 bool UpdateDeps(
int out_id, Deps* deps);
110 bool RecordId(
Node* node);
120 friend struct DepsLogTest;
123 #endif // NINJA_DEPS_LOG_H_ const vector< Node * > & nodes() const
Used for tests.
vector< Deps * > deps_
Maps id -> deps of that id.
Information about a node in the dependency graph: the file, whether it's dirty, mtime, etc.
As build commands run they can output extra dependency information (e.g.
signed long long int64_t
A 64-bit integer type.
vector< Node * > nodes_
Maps id -> Node.
const vector< Deps * > & deps() const
Deps(int64_t mtime, int node_count)
Global state (file status) for a single run.