button.state

Members

Aliases

EdgeIndex
alias EdgeIndex(A, B) = Index!(Edge!(A, B))

Convenience type for an index of the edge itself.

EdgeRow
alias EdgeRow(A, B, Data = EdgeType) = Edge!(Index!A, Index!B, Data)

An edge row in the database.

Index
alias Index(A, B) = Edge!(Index!A, Index!B)

Convenience type for an edge composed of two indices.

NeighborIndex
alias NeighborIndex(V : Index!V) = EdgeIndex!(V, Other!V)

Convenience template to construct an edge from the starting vertex.

Other
alias Other(A : Resource) = Task

Convenience templates to get the other type of vertex from the given vertex.

Other
alias Other(A : Task) = Resource
Undocumented in source.

Classes

BuildState
class BuildState

Stores the current state of the build.

InvalidEdge
class InvalidEdge

Thrown when an edge does not exist.

Functions

parse
Vertex parse(SQLite3.Statement s)

Deserializes a vertex from a SQLite statement. This assumes that the statement has every column of the vertex except the row ID.

parse
E parse(SQLite3.Statement s)

Deserializes an edge from a SQLite statement. This assumes that the statement has every column of the vertex except the row ID.

parse
E parse(SQLite3.Statement s)

Parses an edge without the associated data.

parse
E parse(SQLite3.Statement s)

Deserializes edge data.

parse
E parse(SQLite3.Statement s)

Deserializes a neighbor.

parse
E parse(SQLite3.Statement s)

Parses a vertex key.

parse
E parse(SQLite3.Statement s)

Deserializes a neighbor.

parse
E parse(SQLite3.Statement s)

Parses a vertex key.

Structs

Index
struct Index(T)

Simple type to leverage the type system to help to differentiate between storage indices.

Neighbor
struct Neighbor(Vertex, Data)

A vertex paired with some data. This is useful for representing a neighbor.

Meta

Authors

Jason White

Description: Stores the persistent state of the build.