package inferno

  1. Overview
  2. Docs

Module SolverLo.MakeSource

Parameters

module O : SolverSig.OUTPUT with type 'a structure = 'a S.structure

Signature

Sourcetype variable
Sourceval fresh : variable O.structure option -> variable
Sourcetype ischeme
Sourcetype rawco =
  1. | CTrue
  2. | CConj of rawco * rawco
  3. | CEq of variable * variable
  4. | CExist of variable * rawco
  5. | CInstance of X.tevar * variable * variable list WriteOnceRef.t
  6. | CDef of X.tevar * variable * rawco
  7. | CLet of (X.tevar * variable * ischeme WriteOnceRef.t) list * rawco * rawco * variable list WriteOnceRef.t
Sourceexception Unbound of X.tevar
Sourceexception Unify of variable * variable
Sourceexception Cycle of variable
Sourceval solve : bool -> rawco -> unit
Sourceval decode_variable : variable -> O.tyvar
Sourcetype decoder = variable -> O.ty
Sourceval new_decoder : bool -> decoder
Sourceval decode_scheme : decoder -> ischeme -> O.scheme