diff options
| author | Marcos Magueta <maguetamarcos@gmail.com> | 2026-09-03 16:55:45 -0300 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2026-09-03 16:55:45 -0300 |
| commit | 441f2f3359d6f59e4f26f1d5751926d26b1c7cf9 (patch) | |
| tree | bfe2c858da6bd010ea656b6c9045af96ff7e4946 /lib/kernel/SubstantialRelation.mli | |
| parent | 836e1ab528379ac5e0e9151cf369628dcf1034a3 (diff) | |
| download | RNT-441f2f3359d6f59e4f26f1d5751926d26b1c7cf9.tar.gz RNT-441f2f3359d6f59e4f26f1d5751926d26b1c7cf9.zip | |
Substantial relation kernel object
Diffstat (limited to '')
| -rw-r--r-- | lib/kernel/SubstantialRelation.mli | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/lib/kernel/SubstantialRelation.mli b/lib/kernel/SubstantialRelation.mli new file mode 100644 index 0000000..db86fe2 --- /dev/null +++ b/lib/kernel/SubstantialRelation.mli @@ -0,0 +1,44 @@ +module Make (S : Abstract.Storage.STORAGE) : sig + type t + + val empty : + S.transaction -> + heading:Concepts.Hash.hash -> + ?predicate:Concepts.Hash.hash -> + ?local_constraints:Concepts.Hash.hash -> + ?indexes:Concepts.Hash.hash -> + unit -> + (t, Concepts.Condition.condition) result + + val store : S.transaction -> t -> (Concepts.Hash.hash, Concepts.Condition.condition) result + + val make : + S.connection -> + heading:Concepts.Hash.hash -> + ?predicate:Concepts.Hash.hash -> + ?local_constraints:Concepts.Hash.hash -> + ?indexes:Concepts.Hash.hash -> + unit -> + (Protocols.Handle.t, Concepts.Condition.condition) result + + val load_value : S.transaction -> Concepts.Hash.hash -> (t, Concepts.Condition.condition) result + + val load : + S.transaction -> + S.connection -> + Concepts.Hash.hash -> + (Protocols.Handle.t, Concepts.Condition.condition) result + + val heading : t -> Concepts.Hash.hash + val predicate : t -> Concepts.Hash.hash option + val local_constraints : t -> Concepts.Hash.hash option + val tuples : t -> Concepts.Hash.hash + val indexes : t -> Concepts.Hash.hash option + val hash : t -> Concepts.Hash.hash + + val assert_tuple : + S.transaction -> t -> Concepts.Blob.t -> (t, Concepts.Condition.condition) result + + val contains_tuple : + S.transaction -> t -> Concepts.Blob.t -> (bool, Concepts.Condition.condition) result +end |
