Module Command_line.ParserAndCompiler

This defines an interface that allows a user to indicate how to parse their own programming language, preprocess the obtained language and compile it to GIL (type Prog.t)

type ('annot, 'tl_ast, 'init_data) compiled_progs = {
  1. gil_progs : (string * ('annot, string) Gil_syntax.Prog.t) list;
  2. source_files : IncrementalAnalysis.SourceFiles.t;
  3. tl_ast : 'tl_ast;
  4. init_data : 'init_data;
}
val get_progs_or_fail : pp_err:(Stdlib.Format.formatter -> 'e -> unit) -> (('a, 'b, 'c) compiled_progs, 'e) Stdlib.result -> ('a, 'b, 'c) compiled_progs
module type S = S
module Dummy : sig ... end

Dummy ParserAndCompiler that will simply always fail. This is used when someone wants to build a command line interface to only reason about GIL.