## Class Graph-Matrix

Stub for matrix based graph. Not implemented.

### Part of:

package cl-graph, class basic-graph

### Default initargs

:vertex-class → #:undirected-edge-class → #
:initial-size → #

### Direct Superclass

basic-graph This is the root class for all graphs in CL-Graph.

### Slot

add-edge Add-edge adds an existing edge to a graph. As add-edge-between-vertexes is generally more natur... Adds an edge between two vertexes and returns it. If force-new? is true, the edge is added even i... Adds a vertex to a graph. If called with a vertex, then this vertex is added. If called with a ... Return true if vertex-1 and vertex-2 are connected by an edge. [?? compare with vertices-share-... Returns true if there are any undirected cycles in `graph`. Sets the depth of `vertex` to level and then recursively sets the depth of all of the children ... Add edges between vertexes in the new-graph for which the matching vertexes in the old-graph ha... Returns the number of connected-components of graph. Returns a union-find-container representing the connected-components of `graph`. Returns true if graph is a connected graph and nil otherwise. Delete all edges from `graph'. Returns the graph.. Delete the `edge' from the `graph' and returns it. Finds an edge in the graph between the two specified vertexes. If values (i.e., non-vertexes) a... Remove a vertex from a graph. The 'vertex-or-value'argument can be a vertex of the graph or a 'v... Returns the maximum depth of the vertexes in graph assuming that the roots are of depth 0 and t... Returns the number of edges attached to `vertex`. Compare with the more flexible `vertex-degree... Returns a list of the edges of `thing`. Removes all items from the container and returns nil. Returns a list of sub-graphs of `graph` where each sub-graph is a different connected component... Searches `graph` for an edge that connects vertex-1 and vertex-2. [?? Ignores error-if-not-fou... Returns the first edge in `thing` for which the `predicate` function returns non-nil. If the `k... Returns a list of edges in `thing` for which the `predicate` returns non-nil. [?? why no key fu... Search 'graph' for a vertex with element 'value'. The search is fast but inflexible because it ... Returns the first vertex in `thing` for which the `predicate` function returns non-nil. If the ... Returns a list of vertexes in `thing` for which the `predicate` returns non-nil. [?? why no key f... Ensures that the graph is undirected (possibly by calling change-class on the edges). Returns a version of graph which is a directed free tree rooted at root. Generates a description of `graph` in DOT file format. The formatting can be altered using `gr... Returns a list of the roots of graph. A root is defined as a vertex with no source edges (i.e.,... Returns true if `start-vertex` is in some cycle in `graph`. This uses child-vertexes to generat... Return true if-and-only-if an undirected cycle in graph is reachable from start-vertex. Adds item to the container Applies function to each node in the container. If the container doesn't have nodes, then this is... Calls `fn` on each of the vertexes of `thing`. It should not usually necessary to call this in user code. Creates a new edge between vertex-1 ... Takes a GRAPH and a TEST-FN (a single argument function returning NIL or non-NIL), and filters th... Creates a new vertex for graph `graph`. The keyword arguments include: * vertex-class : specif... Returns a minimum spanning tree of graph if one exists and nil otherwise. Creates the unimodal bipartite projects of existing-graph with vertexes for each vertex of existi... Assign a number to each edge in a graph in some unspecified order. [?? internal] Assign a number to each vertex in a graph in some unspecified order. [?? internal] Replace vertex `old` in graph `graph` with vertex `new`. The edge structure of the graph is mai... Search 'graph' for a vertex with element 'value'. The 'key' function is applied to each element... Returns the number of items currently in the container. Returns a new graph that is a subset of `graph`that contains `vertex` and all of the other verte... Sets the `tag` of all the edges of `thing` to true. [?? why does this exist?] Returns a list of vertexes sorted by the depth from the roots of the graph. See also assign-lev... WIP Sets the `tag` of all the edges of `thing` to nil. [?? why does this exist?] Returns the number of vertexes in `graph`. [?? could be a defun] Returns a list of the vertexes of `thing`.