Expand description
§Design
graph-types divides the graph into adjacency storage engine and entry storage engine.
§Adjacency Storage Engine
The core property of a graph is nodes and edges.
There are many different ways to represent a graph.
Such as adjacency matrix, adjacency list, adjacency set, etc.
The most common one is adjacency list.
§Entry Storage Engine
Other properties of the graph are stored in the entry storage engine.
For example weights, labels, colors, etc.
Each of the entry can be stored in different data structures.
For example, weights can be stored in a vector, labels can be stored in a hash map, some complex structures can even be stored in disk or a database.
Modules§
Structs§
- Directed
Edge - DirectedEdge represents an bidirectional edge between two nodes.
- Indeterminate
Edge - DynamicEdge represents an bidirectional edge between two nodes.
- Node
Range Visitor - Arguments
- Node
Slice Visitor - Arguments
- Nodes
Visitor - A double-ended iterator over the nodes of a graph.
- Undirected
Edge - UndirectedEdge represents an bidirectional edge between two nodes.
Enums§
- Edge
Direction - Determines the direction between two nodes
- Edge
InsertID - Arguments
- Edge
Query - Arguments
- Graph
Entry - Arguments
- Graph
Kind - Mark the graph as directed or undirected.
- Query
- Arguments
- Visit
Order - used to determine the direction of an edge
Traits§
- Edge
- Marker trait for edges
- Entry
Engine - Graph
Engine - Represent a graph storage, with a set of nodes and edges.
- Mutable
Graph - Mark a graph engine that can add and delete edges or points
- Named
Graph - Labeling a graph can provide Weight information
- Node
- Represents a node in a graph
- Weighted
Graph - Labeling a graph can provide Weight information