summaryrefslogtreecommitdiff
path: root/src/vytree/vytree.mli
diff options
context:
space:
mode:
authorDaniil Baturin <daniil@baturin.org>2015-02-28 09:01:01 +0600
committerDaniil Baturin <daniil@baturin.org>2015-02-28 09:01:01 +0600
commitb99887811733fef23ada237d0cfb6ab4708ee04c (patch)
treedcfa5e4e3bd5c448d04b66d2390d06565ad9d3e0 /src/vytree/vytree.mli
parent8e52169fb45931873679b85491bbf179cc18c0d2 (diff)
downloadvyconf-b99887811733fef23ada237d0cfb6ab4708ee04c.tar.gz
vyconf-b99887811733fef23ada237d0cfb6ab4708ee04c.zip
Move vytree to its own subdir.
Diffstat (limited to 'src/vytree/vytree.mli')
-rw-r--r--src/vytree/vytree.mli19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/vytree/vytree.mli b/src/vytree/vytree.mli
new file mode 100644
index 0000000..1b42de7
--- /dev/null
+++ b/src/vytree/vytree.mli
@@ -0,0 +1,19 @@
+type 'a t
+
+exception Empty_path
+exception Duplicate_child
+exception Nonexistent_path
+
+val make : string -> 'a -> 'a t
+val make_full : string -> 'a -> ('a t) list -> 'a t
+
+val name_of_node : 'a t -> string
+val data_of_node : 'a t -> 'a
+val children_of_node : 'a t -> 'a t list
+
+val insert_child :
+ 'a -> 'a t -> string list -> 'a -> 'a t
+
+val delete_child : 'a t -> string list -> 'a t
+
+val list_children : 'a t -> string list