Module prepona::graph[][src]

Graphs sit on top of storages defined in storage module and provide logic about how a storage should be used.

For example SimpleGraph makes sure that no more than one edge is added between two vertices. It also prevents from adding loops to graph. For more information checkout SimpleGraph documentation.

Modules

subgraph

Subgraphs are views of graphs.

Structs

DefaultEdge

Represent a default edge with only weight.

DirectedEdge

Represents a directed edge type.

Error

Error type returns in graph module.

FlowEdge

Represent a flow edge with weight, flow and capacity.

SimpleGraph

Representing a graph that does not allow loops or multiple edges between two vertices.

UndirectedEdge

Represents an undirected edge type.

Enums

ErrorKind

Types of errors that may happen when using a graph or subgraph.

Traits

Edge

Define necessary functionality for a struct to act as an edge of a graph.

EdgeDir

Defines functionalities to determine wether edges in the graph are directed or not.

Type Definitions

FlowListGraph

A SimpleGraph that uses FlowList as its storage.

FlowMatGraph

A SimpleGraph that uses FlowMat as its storage.

ListGraph

A SimpleGraph that uses List as its storage.

MatGraph

A SimpleGraph that uses Mat as its storage.