A generic Graph library for Scala.
Scala Versions: 2.13, 3 Scala Targets: JVM, JS
- Models a graph with directed edges
inbound
andoutbound
methods for any node
- Models a graph with directed edges, and can hold data in the nodes and edges
inbound
andoutbound
methods for any node
- Supports routefinding across any
SimpleGraph
orDataGraph
- Supports finding multiple routes at once with
multi
variant
validate
- check if anySimpleGraph
orDataGraph
is a Directed Acyclic Graph, flags any nodes with cyclesisDag
- checks if a graph is a DAG, returns a Boolean
countDisconnectedSubgraphs
- checks how many disconnected subgraphs are in a graph
- Can render any
DataGraph
which is a DAG into a mermaid graph
- Interface which can be implemented to describe how to run a
DataGraph
- Runs a
DagVisitor
against a compatibleDataGraph
- Runs concurrently, starts nodes as soon as they can be run
- Can run different
RunMode
s, indicating the direction edges runFlow
will makeA->B
runA
thenB
, this is the defaultDependency
will makeA->B
runB
thenA