From 5db1a71fb365cf12e4e41e334e22a2e5a1205371 Mon Sep 17 00:00:00 2001 From: Jed Barber Date: Thu, 23 Apr 2020 16:33:35 +1000 Subject: API more or less complete --- design_notes.txt | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) (limited to 'design_notes.txt') diff --git a/design_notes.txt b/design_notes.txt index 08993b8..700ed9d 100644 --- a/design_notes.txt +++ b/design_notes.txt @@ -20,14 +20,14 @@ Ada.Containers.Directed_Graphs List of types: Extended_Node_Type Edge_Type - Edge_Array_Type + Edge_Array Path (derived from the node array type) Graph Cursor - Node_Label_Reference_Type - Constant_Node_Label_Reference_Type - Edge_Label_Reference_Type - Constant_Edge_Label_Reference_Type + Node_Label_Reference + Constant_Node_Label_Reference + Edge_Label_Reference + Constant_Edge_Label_Reference Constants: No_Node (of Extended_Node_Type) @@ -45,6 +45,8 @@ List of Cursor funcs: List of Graph funcs: "=" + To_Graph + To_Cursor Assign Copy @@ -53,11 +55,9 @@ List of Graph funcs: Is_Empty Clear Clear_Labels - To_Cursor (node -> cursor) Node_Count (a measure of number of nodes in the graph) Edge_Count (a measure of number of edges in the graph) - Nodes (array of all nodes in the graph) Edges (array of all edges in the graph) Node_Range (returns minimum and maximum of nodes in the graph) @@ -90,10 +90,12 @@ List of Graph funcs: Has_Labeled_Edge (check whether two nodes are connected with a labeled edge) Has_Neighbor (check whether two nodes are neighbors) - Find (find a node or edge with a particular label) + Find (find nodes or edges with a particular label) Find_In_Subgraph Contains (check whether a node or an edge is in the graph) Contains_Label (check if graph contains a particular node/edge label) + Contains_In_Subgraph + Contains_Label_In_Subgraph Iterate Iterate_Subgraph -- cgit