Module Compile_common

type info = {
  1. source_file : string;
  2. module_name : string;
  3. output_prefix : string;
  4. env : Env.t;
  5. ppf_dump : Format.formatter;
  6. tool_name : string;
  7. native : bool;
}
val with_info : native:bool -> tool_name:string -> source_file:string -> output_prefix:string -> dump_ext:string -> (info -> 'a) -> 'a
val parse_intf : info -> Parsetree.signature
val typecheck_intf : info -> Parsetree.signature -> Typedtree.signature
val emit_signature : info -> Parsetree.signature -> Typedtree.signature -> unit
val interface : info -> unit
val parse_impl : info -> Parsetree.structure
val implementation : info -> backend:(info -> Typedtree.implementation -> unit) -> unit
val cmo : info -> string
val cmx : info -> string
val obj : info -> string
val annot : info -> string