Enables to quickly assemble immutable constrained graph companion modules.
Aims defining a constraint valid for
Graph instances in the scope:
Template to be mixed in by any constrained graph class.
Template to be implemented and passed to a dynamically constrained graph class by the user.
Base trait for ordinary
Constraint companion objects.
Facilitates binary operations on
Base class for any operation on
This template contains handler methods that are called by constrained graphs whenever a constraint has been violated.
This template contains all methods that constrained graphs call to decide whether operations altering a mutable graph or operations yielding a new graph from an immutable or mutable graph are valid.
Default (immutable) directed acyclic
Default (immutable) undirected acyclic
A trait for dynamically constrained graphs.
the type of the nodes (vertices) in this graph.
the kind of the edges in this graph.
A template trait for graphs.
the user type of the nodes (vertices) in this graph.
the higher kinded type of the edges (links) in this graph.
the higher kinded type of the graph itself.
The return type of any pre-check.
Default (immutable) undirected connected acyclic
Companion object to configure
Graph instances in the scope including
Companion module for default (immutable) directed acyclic
Companion module for default (immutable) undirected acyclic
Default factory for constrained graphs.
Enumerates the possible return statuses (also: follow-up activity) of a pre-check:
Abort instructs the caller to cancel the operation because the pre-check failed;
PostCheck means that the post-check (commit) still must be called;
Complete means that the operation can safely be completed without invoking the post-check.
Companion module for default (immutable) undirected connected acyclic
constraint to an instance of
Predefined constraints that may be passed to constrained
Constraint representing a DAG.
Constraint representing a forest.
Mutable constrained graph templates.
Constraint representing an undirected tree.