Module type Main.Main

module P : PAst.ParserExt
module NameMap : Stdlib.Map.S with type key = string
type message = Mlsem_system.Analyzer.severity * Mlsem_common.Position.t * string * string option
type treat_result =
  1. | TSuccess of (Mlsem_common.Variable.t * string) list * message list * float
  2. | TDone
  3. | TFailure of Mlsem_common.Variable.t option * Mlsem_common.Position.t * string * string option * float
type envs = P.B.benv * Mlsem_common.Variable.t NameMap.t * Mlsem_types.Ty.t list Mlsem_common.VarMap.t * Mlsem_common.Env.t * Mlsem_types.PEnv.t
val treat_all_sigs : envs -> ('a Mlsem_common.Position.located * P.E.element) list -> envs * treat_result
val initial_envs : envs
val initial_senv : Mlsem_types.Ty.t list Mlsem_common.VarMap.t
val initial_benv : P.B.benv
val initial_penv : Mlsem_types.PEnv.t
type parsing_result =
  1. | PSuccess of P.E.program
  2. | PFailure of Mlsem_common.Position.t * string
val parse : [< `File of string | `String of string ] -> parsing_result