summaryrefslogtreecommitdiff
path: root/src/packrat-graphs.adb
diff options
context:
space:
mode:
Diffstat (limited to 'src/packrat-graphs.adb')
-rw-r--r--src/packrat-graphs.adb371
1 files changed, 371 insertions, 0 deletions
diff --git a/src/packrat-graphs.adb b/src/packrat-graphs.adb
new file mode 100644
index 0000000..2cf74b3
--- /dev/null
+++ b/src/packrat-graphs.adb
@@ -0,0 +1,371 @@
+
+
+package body Packrat.Graphs is
+
+
+ function Is_Nothing
+ (Position : in Cursor)
+ return Boolean is
+ begin
+ return True;
+ end Is_Nothing;
+
+
+
+
+
+ function Depth
+ (Position : in Cursor)
+ return Natural is
+ begin
+ return 0;
+ end Depth;
+
+
+ function Is_Root
+ (Position : in Cursor)
+ return Boolean is
+ begin
+ return False;
+ end Is_Root;
+
+
+ function Is_Branch
+ (Position : in Cursor)
+ return Boolean is
+ begin
+ return False;
+ end Is_Branch;
+
+
+ function Is_Leaf
+ (Position : in Cursor)
+ return Boolean is
+ begin
+ return False;
+ end Is_Leaf;
+
+
+ function Label
+ (Position : in Cursor)
+ return Label_Enum is
+ begin
+ return Label_Enum'First;
+ end Label;
+
+
+ function Elements
+ (Position : in Cursor)
+ return Element_Array
+ is
+ Empty : Element_Array (1 .. 0);
+ begin
+ return Empty;
+ end Elements;
+
+
+
+
+
+ function Start
+ (Position : in Cursor)
+ return Positive is
+ begin
+ return 1;
+ end Start;
+
+
+ function Finish
+ (Position : in Cursor)
+ return Natural is
+ begin
+ return 0;
+ end Finish;
+
+
+ function Choices
+ (Position : in Cursor)
+ return Natural is
+ begin
+ return 0;
+ end Choices;
+
+
+
+
+
+ function Parent
+ (Position : in Cursor)
+ return Cursor is
+ begin
+ return This : Cursor;
+ end Parent;
+
+
+ function Child_Count
+ (Position : in Cursor;
+ Choice : in Positive)
+ return Natural is
+ begin
+ return 0;
+ end Child_Count;
+
+
+ function Child_Count
+ (Position : in Cursor)
+ return Natural is
+ begin
+ return 0;
+ end Child_Count;
+
+
+ function All_Child_Count
+ (Position : in Cursor)
+ return Natural is
+ begin
+ return 0;
+ end All_Child_Count;
+
+
+ function First_Child
+ (Position : in Cursor;
+ Choice : in Positive)
+ return Cursor is
+ begin
+ return This : Cursor;
+ end First_Child;
+
+
+ function Last_Child
+ (Position : in Cursor;
+ Choice : in Positive)
+ return Cursor is
+ begin
+ return This : Cursor;
+ end Last_Child;
+
+
+ function First_Child
+ (Position : in Cursor)
+ return Cursor is
+ begin
+ return This : Cursor;
+ end First_Child;
+
+
+ function Last_Child
+ (Position : in Cursor)
+ return Cursor is
+ begin
+ return This : Cursor;
+ end Last_Child;
+
+
+ function Next_Sibling
+ (Position : in Cursor)
+ return Cursor is
+ begin
+ return This : Cursor;
+ end Next_Sibling;
+
+
+ function Prev_Sibling
+ (Position : in Cursor)
+ return Cursor is
+ begin
+ return This : Cursor;
+ end Prev_Sibling;
+
+
+ procedure Delete_Children
+ (Position : in out Cursor;
+ Choice : in Positive) is
+ begin
+ null;
+ end Delete_Children;
+
+
+ procedure Delete_Children
+ (Position : in out Cursor) is
+ begin
+ null;
+ end Delete_Children;
+
+
+ procedure Delete_All_Children
+ (Position : in out Cursor) is
+ begin
+ null;
+ end Delete_All_Children;
+
+
+
+
+
+ function Equal_Subgraph
+ (Left, Right : in Cursor)
+ return Boolean is
+ begin
+ return False;
+ end Equal_Subgraph;
+
+
+ function Subgraph_Node_Count
+ (Position : in Cursor)
+ return Natural is
+ begin
+ return 0;
+ end Subgraph_Node_Count;
+
+
+ function Find_In_Subgraph
+ (Position : in Cursor;
+ Item : in Element_Array)
+ return Cursor is
+ begin
+ return This : Cursor;
+ end Find_In_Subgraph;
+
+
+
+
+
+ function Contains
+ (Container : in Parse_Graph;
+ Position : in My_Interfaces.Cursor'Class)
+ return Boolean is
+ begin
+ return False;
+ end Contains;
+
+
+
+
+ function Leaf
+ (New_Item : in Element_Array;
+ Start : in Positive;
+ Finish : in Natural)
+ return Parse_Graph is
+ begin
+ return This : Parse_Graph;
+ end Leaf;
+
+
+ function Branch
+ (Label : in Label_Enum;
+ Start : in Positive;
+ Finish : in Natural)
+ return Parse_Graph is
+ begin
+ return This : Parse_Graph;
+ end Branch;
+
+
+
+
+
+ function Is_Empty
+ (Container : in Parse_Graph)
+ return Boolean is
+ begin
+ return True;
+ end Is_Empty;
+
+
+ function Is_Ambiguous
+ (Container : in Parse_Graph)
+ return Boolean is
+ begin
+ return False;
+ end Is_Ambiguous;
+
+
+ function Node_Count
+ (Container : in Parse_Graph)
+ return Natural is
+ begin
+ return 0;
+ end Node_Count;
+
+
+
+
+
+ function Root_Count
+ (Container : in Parse_Graph)
+ return Natural is
+ begin
+ return 0;
+ end Root_Count;
+
+
+ function Root
+ (Container : in Parse_Graph;
+ Index : in Positive)
+ return My_Interfaces.Cursor'Class is
+ begin
+ return This : Cursor;
+ end Root;
+
+
+
+
+
+ procedure Append
+ (Container : in out Parse_Graph;
+ Addition : in Parse_Graph) is
+ begin
+ null;
+ end Append;
+
+
+ procedure Prepend
+ (Container : in out Parse_Graph;
+ Addition : in Parse_Graph) is
+ begin
+ null;
+ end Prepend;
+
+
+ procedure Attach_Choice
+ (Container : in out Parse_Graph;
+ Position : in My_Interfaces.Cursor'Class;
+ Addition : in Parse_Graph) is
+ begin
+ null;
+ end Attach_Choice;
+
+
+
+
+
+ procedure Clear
+ (Container : in out Parse_Graph) is
+ begin
+ null;
+ end Clear;
+
+
+ procedure Delete_Position
+ (Container : in out Parse_Graph;
+ Position : in out My_Interfaces.Cursor'Class) is
+ begin
+ null;
+ end Delete_Position;
+
+
+
+
+
+ function Find
+ (Container : in Parse_Graph;
+ Item : in Element_Array)
+ return My_Interfaces.Cursor'Class is
+ begin
+ return This : Cursor;
+ end Find;
+
+
+end Packrat.Graphs;
+
+