:vertex-class → 'CL-GRAPH:GRAPH-MATRIX-VERTEX | :undirected-edge-class → 'CL-GRAPH:GRAPH-MATRIX-EDGE |
---|---|
:initial-size → 25 |
basic-graph | This is the root class for all graphs in CL-Graph. |
---|
adjencency-matrix | Reader:adjencency-matrix. |
---|---|
contains-directed-edge-p | Returns true if graph contains at least one directed edge. [?? Not sure if this is really keep up-to-date.] Accessors:contains-directed-edge-p. |
contains-undirected-edge-p | Returns true if graph contains at least one undirected edge. [?? Not sure if this is really keep up-to-date.] Accessors:contains-undirected-edge-p. |
default-edge-class | The default edge class for the graph. Initargs:default-edge-class; Reader:default-edge-class. |
default-edge-type | The default edge type for the graph. This should be one of :undirected or :directed. Initargs:default-edge-type; Reader:default-edge-type. |
directed-edge-class | The class used to create directed edges in the graph. This must extend the base-class for edges of the graph type and directed-edge-mixin. E.g., the directed-edge-class of a graph-container must extend graph-container-edge and directed-edge-mixin. Initform:'basic-directed-edge, Initargs:directed-edge-class; Reader:directed-edge-class. |
edge-key | Initform:#'identity, Initargs:edge-key; Reader:edge-key. |
edge-test | Initform:#'eq, Initargs:edge-test; Reader:edge-test. |
graph-edges | Initargs:graph-edges; Reader:graph-edges. |
graph-vertexes | Initargs:graph-vertexes; Reader:graph-vertexes. |
largest-edge-id | Initform:0; Reader:largest-edge-id. |
largest-vertex-id | Initform:0; Reader:largest-vertex-id. |
undirected-edge-class | The class used to create undirected edges in the graph. This must extend the base-class for edges of the graph type. E.g., all edges of a graph-container must extend graph-container-edge Initform:'basic-edge, Initargs:undirected-edge-class; Reader:undirected-edge-class. |
vertex-class | The class of the vertexes in the graph. This must extend the base-class for vertexes of the graph type. E.g., all vertexes of a graph-container must extend graph-container-vertex. Initform:'basic-vertex, Initargs:vertex-class; Reader:vertex-class. |
vertex-key | Initform:#'identity, Initargs:vertex-key; Reader:vertex-key. |
vertex-test | Initform:#'eq, Initargs:vertex-test; Reader:vertex-test. |
make-edge-container | Make-edge-container is called during graph creation and can be used to create specialized contain... |
---|---|
make-vertex-container | Make-vertex-container is called during graph creation and can be used to create specialized conta... |
add-edge | Add-edge adds an existing edge to a graph. As add-edge-between-vertexes is generally more natural... |
---|---|
add-edge-between-vertexes | Adds an edge between two vertexes and returns it. If force-new? is true, the edge is added eve... |
add-edges-to-graph | |
add-vertex | Adds a vertex to a graph. If called with a vertex, then this vertex is added. If called with a va... |
adjacentp | Return true if vertex-1 and vertex-2 are connected by an edge. [?? compare with vertices-share-ed... |
any-undirected-cycle-p | Returns true if there are any undirected cycles in `graph`. |
assign-level | Sets the depth of `vertex` to level and then recursively sets the depth of all of the children of... |
breadth-first-search-graph | |
breadth-first-visitor | |
complete-links | Add edges between vertexes in the new-graph for which the matching vertexes in the old-graph hav... |
connected-component-count | Returns the number of connected-components of graph. |
connected-components | Returns a union-find-container representing the connected-components of `graph`. |
connected-graph-p | Returns true if graph is a connected graph and nil otherwise. |
delete-edge | Delete the `edge' from the `graph' and returns it. |
delete-edge-between-vertexes | Finds an edge in the graph between the two specified vertexes. If values (i.e., non-vertexes) are... |
delete-vertex | Remove a vertex from a graph. The 'vertex-or-value' argument can be a vertex of the graph or a 'v... |
depth | Returns the maximum depth of the vertexes in graph assuming that the roots are of depth 0 and tha... |
dfs | |
edge-count | Returns the number of edges attached to `vertex`. Compare with the more flexible `vertex-degree`. |
edges | Returns a list of the edges of `thing`. |
empty! | Removes all items from the container and returns nil. |
find-connected-components | Returns a list of sub-graphs of `graph` where each sub-graph is a different connected component o... |
find-edge-between-vertexes | Searches `graph` for an edge that connects vertex-1 and vertex-2. [?? Ignores error-if-not-found... |
find-edge-if | Returns the first edge in `thing` for which the `predicate` function returns non-nil. If the `key... |
find-edges-if | Returns a list of edges in `thing` for which the `predicate` returns non-nil. [?? why no key func... |
find-vertex | Search 'graph' for a vertex with element 'value'. The search is fast but inflexible because it us... |
find-vertex-if | Returns the first vertex in `thing` for which the `predicate` function returns non-nil. If the `k... |
find-vertexes-if | Returns a list of vertexes in `thing` for which the `predicate` returns non-nil. [?? why no key f... |
force-undirected | Ensures that the graph is undirected (possibly by calling change-class on the edges). |
generate-directed-free-tree | Returns a version of graph which is a directed free tree rooted at root. |
graph->dot | Generates a description of `graph` in DOT file format. The formatting can be altered using `graph... |
graph->dot-external | |
graph-edge-mixture-matrix | Return the `mixing-matrix` of graph based on the classifier and the edge-weight function. The mix... |
graph-mixing-matrix | Return the `mixing-matrix` of graph based on the classifier and the edge-weight function. The mix... |
graph-roots | Returns a list of the roots of graph. A root is defined as a vertex with no source edges (i.e., a... |
in-cycle-p | Returns true if `start-vertex` is in some cycle in `graph`. This uses child-vertexes to generate ... |
in-undirected-cycle-p | Return true if-and-only-if an undirected cycle in graph is reachable from start-vertex. |
initialize-vertex-data | |
insert-item | Adds item to the container |
iterate-elements | |
iterate-nodes | Applies function to each node in the container. If the container doesn't have nodes, then this is... |
iterate-vertexes | Calls `fn` on each of the vertexes of `thing`. |
make-edge-for-graph | It should not usually necessary to call this in user code. Creates a new edge between vertex-1 an... |
make-filtered-graph | Takes a GRAPH and a TEST-FN (a single argument function returning NIL or non-NIL), and filters th... |
make-vertex-for-graph | Creates a new vertex for graph `graph`. The keyword arguments include: * vertex-class : specify ... |
map-over-all-combinations-of-k-edges | |
map-over-all-combinations-of-k-vertexes | |
minimum-spanning-tree | Returns a minimum spanning tree of graph if one exists and nil otherwise. |
project-bipartite-graph | Creates the unimodal bipartite projects of existing-graph with vertexes for each vertex of existi... |
renumber-edges | Assign a number to each edge in a graph in some unspecified order. [?? internal] |
renumber-vertexes | Assign a number to each vertex in a graph in some unspecified order. [?? internal] |
replace-vertex | Replace vertex `old` in graph `graph` with vertex `new`. The edge structure of the graph is maint... |
search-for-vertex | Search 'graph' for a vertex with element 'value'. The 'key' function is applied to each element b... |
size | Returns the number of items currently in the container. |
subgraph-containing | Returns a new graph that is a subset of `graph` that contains `vertex` and all of the other verte... |
tag-all-edges | Sets the `tag` of all the edges of `thing` to true. [?? why does this exist?] |
topological-sort | Returns a list of vertexes sorted by the depth from the roots of the graph. See also assign-level... |
traverse-elements | WIP |
untag-all-edges | Sets the `tag` of all the edges of `thing` to nil. [?? why does this exist?] |
vertex-count | Returns the number of vertexes in `graph`. [?? could be a defun] |
vertexes | Returns a list of the vertexes of `thing`. |