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_ergo | (* Alt-ergo's native language *) |
| Dimacs | (* Dimacs CNF format *) |
| ICNF | (* iCNF format *) |
| Smtlib2 of Dolmen_smtlib2.Script.version | (* Smtlib v2 latest version *) |
| Tptp of Dolmen_tptp.version | (* TPTP format (including THF), latest version *) |
| Zf | (* Zipperposition 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_file :
?language:language ->
string ->
language * Dolmen.Std.Loc.file * Dolmen.Std.Statement.t listGiven a filename, parse the file, and return the detected language together with the list of statements parsed.
val parse_file_lazy :
?language:language ->
string ->
language * Dolmen.Std.Loc.file * Dolmen.Std.Statement.t list Stdlib.Lazy.tGiven a filename, parse the file, and return the detected language together with the list of statements parsed.
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 (see parse_file), stdin (with given language), or some arbitrary contents, of the form `Raw (filename, language, contents). Returns a triplet (lan, gen, cl), containing the language detexted lan, a genratro function gen for parsing the input, and a cleanup function cl to call in order to cleanup the file descriptors.
module type S =
Dolmen_intf.Language.S
with type statement := Dolmen.Std.Statement.t
and type file := Dolmen.Std.Loc.fileThe type of language modules.