Dolmen_loop.LogicThis is an instanciation of the Logic class with the standard implementation of parsed terms and statements of Dolmen.
include Dolmen.Class.Logic.S
with type statement := Dolmen.Std.Statement.t
and type file := Dolmen.Std.Loc.fileRaised when trying to find a language given a file extension.
type language = | Alt_ergoAlt-ergo's native language
*)| DimacsDimacs CNF format
*)| ICNFiCNF format
*)| Smtlib2 of Dolmen_smtlib2.Script.versionSmtlib v2 latest version
*)| Tptp of Dolmen_tptp.versionTPTP format (including THF), latest version
*)| ZfZipperposition format
*)The languages supported by the Logic class.
val enum : (string * language) listEnumeration of languages together with an appropriate name. Can be used for command-line arguments (for instance, with cmdliner).
val string_of_language : language -> stringString representation of the variant
val find : ?language:language -> ?dir:string -> string -> string optionTries and find the given file, using the language specification.
val parse_all :
?language:language ->
[< `File of string
| `Stdin of language
| `Raw of string * language * string ] ->
language * Dolmen.Std.Loc.file * Dolmen.Std.Statement.t list Stdlib.Lazy.tFull (but lazy) parsing of either a file (see parse_file), stdin (with given language), or some arbitrary contents, of the form `Raw (filename, language, contents). Returns a triplet (lan, file, stmts), containing:
lan detectedfile value that stores the metadata about file locationsstmts; forcing this list will run the actual parsing of the whole input given as argument, and may raise errors, if any arises during the parsing (such as lexical errors, etc..)val parse_input :
?language:language ->
[< `File of string
| `Stdin of language
| `Raw of string * language * string ] ->
language
* Dolmen.Std.Loc.file
* (unit ->
Dolmen.Std.Statement.t option)
* (unit ->
unit)Incremental parsing of either a file, stdin (with given language), or some arbitrary contents, of the form `Raw (filename, language, contents). Returns a quadruplet (lan, file, gen, cl), containing:
lan detectedfile value that stores the metadata about file locationsgen for parsing the input,cl to call in order to cleanup the file descriptorsmodule type S =
Dolmen_intf.Language.S
with type statement := Dolmen.Std.Statement.t
and type file := Dolmen.Std.Loc.fileThe type of language modules.