Up

Module Make (State : State)

Parameters

Signature

module Field : sig .. end
module Variable : sig .. end
module Assignment : sig .. end
module Expression : sig .. end
type t
val sexp_of_t : t -> Sexplib.Sexp.t
val const : bool -> t
val eq : 'a Variable.t -> 'a Field.t -> t
val predicate : ?description:string -> bool Expression.t -> t
val negate : t -> t
val conj : t list -> t
val disj : t list -> t
val next : t -> t
val until : t -> t -> t
val release : t -> t -> t
val before : Core.Std.Time.t -> t
val after : Core.Std.Time.t -> t
val before_var : ?add:Core.Std.Time.Span.t -> Core.Std.Time.t Variable.t -> t
val after_var : ?add:Core.Std.Time.Span.t -> Core.Std.Time.t Variable.t -> t
val field_predicate : ?description:string -> 'a Field.t -> ('a -> bool) -> t
val has : 'a Field.t -> t
val implies : t -> t -> t
val eventually : t -> t
val always : t -> t
module O : sig .. end
val validate : t -> unit Core.Std.Or_error.t
val eval : ?debug:Async.Std.Log.t -> ?allow_nonmonotonic_times:bool -> t -> State.t Async.Std.Pipe.Reader.t -> bool Async.Std.Deferred.t Core.Std.Or_error.t
val query : ?debug:Async.Std.Log.t -> ?allow_nonmonotonic_times:bool -> t -> State.t Async.Std.Pipe.Reader.t -> Assignment.t Async.Std.Pipe.Reader.t Core.Std.Or_error.t