aboutsummaryrefslogtreecommitdiffstats
path: root/lib/RNT.mli
diff options
context:
space:
mode:
authorMarcos Magueta <maguetamarcos@gmail.com>2026-09-26 22:09:11 -0300
committerMarcos Magueta <maguetamarcos@gmail.com>2026-09-26 22:09:11 -0300
commit320954996e921d7b34eb61f462799b5c6ab8ee09 (patch)
tree16697bc161faf27f0b4c1ba57f6fcc24d240801b /lib/RNT.mli
parentb555c28c7e6c315fc0394baf213ecb08b21ed959 (diff)
downloadSakura-320954996e921d7b34eb61f462799b5c6ab8ee09.tar.gz
Sakura-320954996e921d7b34eb61f462799b5c6ab8ee09.zip
new shrunk API for RNT on sakura
Diffstat (limited to 'lib/RNT.mli')
-rw-r--r--lib/RNT.mli35
1 files changed, 35 insertions, 0 deletions
diff --git a/lib/RNT.mli b/lib/RNT.mli
new file mode 100644
index 0000000..841ab2d
--- /dev/null
+++ b/lib/RNT.mli
@@ -0,0 +1,35 @@
+type kernel
+type handle
+type path = string
+type tuple = {type_: string; attributes: Value.t Utilities.StringMap.t}
+type batch = {tuples: tuple list; exhausted: bool}
+
+type blueprint =
+ | Namespace
+ | Branch
+ | Multigroup
+ | Relation of {heading: string Utilities.StringMap.t; tuples: Value.t Utilities.StringMap.t list}
+
+type plan = Base of path | Project of plan * string list
+
+val initialize : Sexplib.Sexp.t -> (kernel, Condition.condition) result
+val shutdown : kernel -> unit
+val list : kernel -> path -> (string list, Condition.condition) result
+val lookup : kernel -> path -> (handle, Condition.condition) result
+val create : kernel -> path -> blueprint -> (unit, Condition.condition) result
+val remove : kernel -> path -> (unit, Condition.condition) result
+val release : handle -> unit
+val identity : handle -> string
+val describe : handle -> (string Utilities.StringMap.t, Condition.condition) result
+val execute : kernel -> plan -> (handle, Condition.condition) result
+val enumerate : handle -> (handle, Condition.condition) result
+val fetch : handle -> int -> (batch, Condition.condition) result
+
+(*
+val authenticate: unit -> unit
+val open_snapshot: unit -> unit
+val register_domain: unit -> unit
+val register_constraint: unit -> unit
+val insert_tuple: unit -> unit
+val retract_tuple: unit -> unit
+*)