sig
type term
type lit
type clause
type name_ctx = (string, TopDown.PARSE.term) Hashtbl.t
val create_ctx : unit -> TopDown.PARSE.name_ctx
val term_of_ast :
ctx:TopDown.PARSE.name_ctx -> TopDownAst.term -> TopDown.PARSE.term
val lit_of_ast :
ctx:TopDown.PARSE.name_ctx -> TopDownAst.literal -> TopDown.PARSE.lit
val clause_of_ast :
?ctx:TopDown.PARSE.name_ctx -> TopDownAst.clause -> TopDown.PARSE.clause
val clauses_of_ast :
?ctx:TopDown.PARSE.name_ctx ->
TopDownAst.clause list -> TopDown.PARSE.clause list
val parse_chan :
Pervasives.in_channel ->
[ `Error of string | `Ok of TopDown.PARSE.clause list ]
val parse_file :
string -> [ `Error of string | `Ok of TopDown.PARSE.clause list ]
val parse_string :
string -> [ `Error of string | `Ok of TopDown.PARSE.clause list ]
val clause_of_string : string -> TopDown.PARSE.clause
val term_of_string : string -> TopDown.PARSE.term
end