package datalog

  1. Overview
  2. Docs
type ('a, 'b, 'c) t
val name : (_, _, _) t -> string
val create : ?k1:'a Univ.key -> ?k2:'b Univ.key -> ?k3:'c Univ.key -> string -> ('a, 'b, 'c) t
val get : ('a, 'b, 'c) t -> Logic.T.t -> ('a * 'b * 'c) option
val make : ('a, 'b, 'c) t -> 'a -> 'b -> 'c -> Logic.T.t
val apply : (_, _, _) t -> Logic.T.t -> Logic.T.t -> Logic.T.t -> Logic.T.t
val find : Logic.DB.t -> ('a, 'b, 'c) t -> ('a * 'b * 'c) list
val subset : Logic.DB.t -> ('a, 'b, 'c) t -> ('a, 'b, 'c) t -> unit
val from_fun : Logic.DB.t -> ('a, 'b, 'c) t -> ('a -> 'b -> 'c -> bool) -> unit
val add_list : Logic.DB.t -> ('a, 'b, 'c) t -> ('a * 'b * 'c) list -> unit
val to_string : (_, _, _) t -> string
val fmt : Format.formatter -> (_, _, _) t -> unit