diff options
Diffstat (limited to 'lib/kernel/SubstantialRelation.mli')
| -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 |
