15 #ifndef NINJA_DEPS_LOG_H_
16 #define NINJA_DEPS_LOG_H_
73 bool OpenForWrite(
const std::string& path, std::string* err);
93 bool Recompact(
const std::string& path, std::string* err);
105 const std::vector<Deps*>&
deps()
const {
return deps_; }
Deps(int64_t mtime, int node_count)
As build commands run they can output extra dependency information (e.g.
Deps * GetDeps(Node *node)
const std::vector< Node * > & nodes() const
Used for tests.
bool UpdateDeps(int out_id, Deps *deps)
Node * GetFirstReverseDepsNode(Node *node)
bool OpenForWriteIfNeeded()
Should be called before using file_.
bool Recompact(const std::string &path, std::string *err)
Rewrite the known log entries, throwing away old data.
friend struct DepsLogTest
bool OpenForWrite(const std::string &path, std::string *err)
static bool IsDepsEntryLiveFor(const Node *node)
Returns if the deps entry for a node is still reachable from the manifest.
std::vector< Node * > nodes_
Maps id -> Node.
bool RecordId(Node *node)
bool RecordDeps(Node *node, TimeStamp mtime, const std::vector< Node * > &nodes)
const std::vector< Deps * > & deps() const
std::vector< Deps * > deps_
Maps id -> deps of that id.
LoadStatus Load(const std::string &path, State *state, std::string *err)
Information about a node in the dependency graph: the file, whether it's dirty, mtime,...
Global state (file status) for a single run.
signed long long int64_t
A 64-bit integer type.