Module Mlsem_lang.Config

type eval_order =
  1. | LeftToRight
    (*

    Evaluates arguments left-to-right.

    *)
  2. | RightToLeft
    (*

    Evaluates arguments right-to-left.

    *)
  3. | UnknownOrder
    (*

    Default. Evaluation order is unknown (and/or optional). Once started, evaluation cannot be aborted (e.g. Ternary, Join, Meet).

    *)
  4. | Abortable
    (*

    Evaluation order is unknown (and/or optional). Evaluation can be aborted (e.g. Voidify, Try).

    *)
val void_ty : Mlsem_types.Ty.t Stdlib.ref
val app_eval_order : eval_order Stdlib.ref
val tuple_eval_order : eval_order Stdlib.ref
val record_eval_order : eval_order Stdlib.ref
val cons_eval_order : eval_order Stdlib.ref
val ccustom_eval_order : (string, eval_order) Stdlib.Hashtbl.t