See only external symbols

CL-Graph is a Common Lisp library for manipulating graphs and running graph algorithms.

Package Cl-Graph uses the packages Common-Lisp, Metabang.Cl-Containers and Metabang.Utilities. It is also known as Metabang.Graph. It has 386 total symbols and 154 external ones.

*depth-first-search-timer* | |
---|---|

*dot-edge-attributes* | |

*dot-graph-attributes* | |

*dot-path* | Path to |

*dot-vertex-attributes* |

.inv-node-color | |
---|---|

.inv-node-depth | |

.inv-node-parent | |

append-unique | |

copy-vertex-datum | |

format-dot-attributes | |

get-nodelist-relatives | Collects set of unique relatives of nodes in node-list. |

get-transitive-closure | Given a list of vertices, returns a combined list of all of the nodes |

graph-search-for-cl-graph | Find a state that satisfies goal-p. Start with states, |

make-vertex-datum | |

map-paths | Apply fn to each path that starts at start-vertex and is of exactly length |

map-shortest-paths | Apply fn to each shortest path starting at |

neighbors-to-children | |

node-color | |

node-depth | |

node-parent | |

print-dot-key-value | |

remove-list | Removes all elements in original from target. |

textify |

add-edge | Add-edge adds an existing edge to a graph. As |
---|---|

add-edge-between-vertexes | Adds an edge between two vertexes and returns it. |

add-edge-to-vertex | Attaches the edge |

add-edges-to-graph | |

add-vertex | Adds a vertex to a graph. If called with a vertex, |

adjacentp | Return true if vertex-1 and vertex-2 are connected |

any-undirected-cycle-p | Returns true if there are any undirected cycles in |

assign-level | Sets the depth of |

breadth-first-search-graph | |

breadth-first-visitor | |

child-vertexes | Returns a list of the vertexes to which |

complete-links | Add edges between vertexes in the new-graph for |

connected-component-count | Returns the number of connected-components of |

connected-components | Returns a union-find-container representing the |

connected-graph-p | Returns true if graph is a connected graph and nil otherwise. |

delete-all-edges | Delete all edges from `graph'. Returns the graph.. |

delete-edge | Delete the |

delete-edge-between-vertexes | Finds an edge in the graph between the two |

delete-vertex | Remove a vertex from a graph. The 'vertex-or-value' |

depth | Returns the maximum depth of the vertexes in graph |

dfs | |

dfs-back-edge-p | |

dfs-cross-edge-p | |

dfs-edge-type | |

dfs-forward-edge-p | |

dfs-tree-edge-p | |

dfs-visit | |

directed-edge-p | Returns true if-and-only-if edge is directed |

dot-attribute-value | |

edge->dot | Used by graph->dot to output edge formatting for |

edge-count | Returns the number of edges attached to |

edge-lessp-by-direction | Returns true if and only if edge-1 is undirected and edge-2 is directed. |

edge-lessp-by-weight | Returns true if the weight of edge-1 is strictly less than the weight of edge-2. |

edges | Returns a list of the edges of |

ensure-valid-dot-attribute | |

find-connected-components | Returns a list of sub-graphs of |

find-edge | Search |

find-edge-between-vertexes | Searches |

find-edge-between-vertexes-if | Finds and returns an edge between value-or-vertex-1 |

find-edge-if | Returns the first edge in |

find-edges-if | Returns a list of edges in |

find-vertex | Search 'graph' for a vertex with element |

find-vertex-if | Returns the first vertex in |

find-vertexes-if | Returns a list of vertexes in |

force-undirected | Ensures that the graph is undirected (possibly by |

generate-directed-free-tree | Returns a version of graph which is a directed free |

graph->dot | Generates a description of |

graph->dot-external | |

graph->dot-properties | Unless a different graph-formatter is specified, |

graph-roots | Returns a list of the roots of graph. A root is |

has-children-p | In a directed graph, returns true if vertex has any |

has-parent-p | In a directed graph, returns true if vertex has any |

height-in-pixels | |

in-cycle-p | Returns true if |

in-undirected-cycle-p | Return true if-and-only-if an undirected cycle in |

initialize-vertex-data | |

iterate-edges | Calls |

iterate-neighbors | Calls fn on every vertex adjecent to vertex See |

iterate-parents | Calls fn on every vertex that is either connected |

iterate-source-edges | In a directed graph, calls |

iterate-target-edges | In a directed graph, calls |

iterate-vertexes | Calls |

make-edge-container | Make-edge-container is called during graph creation |

make-edge-for-graph | It should not usually necessary to call this in |

make-filtered-graph | Takes a GRAPH and a TEST-FN (a single argument |

make-graph | Create a new graph of type `graph-type'. Graph type |

make-graph-from-vertexes | Create a new graph given a list of vertexes (which |

make-vertex-container | Make-vertex-container is called during graph |

make-vertex-edges-container | Called during the initialization of a vertex to |

make-vertex-for-graph | Creates a new vertex for graph |

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. |

mst-find-set | |

mst-link | |

mst-make-set | |

mst-tree-union | |

neighbor-vertexes | Returns a list of the vertexes to which |

number-of-neighbors | Returns the number of neighbors of |

other-vertex | Assuming that the value-or-vertex corresponds to |

out-edge-for-vertex-p | Returns true if the edge is connected to vertex and |

parent-vertexes | Returns a list of the vertexes to which |

project-bipartite-graph | Creates the unimodal bipartite projects of |

renumber-edges | Assign a number to each edge in a graph in some |

renumber-vertexes | Assign a number to each vertex in a graph in some |

replace-vertex | Replace vertex |

rootp | Returns true if |

search-for-vertex | Search 'graph' for a vertex with element |

source-edge-count | Returns the number of source edges of |

source-edges | Returns a list of the source edges of |

source-vertex | Returns the source-vertex of a directed |

subgraph-containing | Returns a new graph that is a subset of |

tag-all-edges | Sets the |

tag-edges | Sets the |

tagged-edge-p | Returns true if-and-only-if edge's tag slot is t |

target-edge-count | Returns the number of target edges of |

target-edges | Returns a list of the target edges of |

target-vertex | Returns the target-vertex of a directed |

topological-sort | Returns a list of vertexes sorted by the depth from |

traverse-elements | WIP |

traverse-elements-helper | WIP |

undirected-edge-p | Returns true if-and-only-if edge is undirected |

untag-all-edges | Sets the |

untag-edges | Sets the |

untagged-edge-p | Returns true if-and-only-if edge's tage slot is nil |

vertex->dot | Unless a different vertex-formatter is specified |

vertex-count | Returns the number of vertexes in |

vertexes | Returns a list of the vertexes of |

vertices-share-edge-p | Return true if vertex-1 and vertex-2 are connected |

width-in-pixels | |

write-name-for-dot |

defpixel-inch-accessors | |
---|---|

with-changing-vertex | This is used to maintain consistency when changing the value of vertex elements while iterating o... |