Pparse
Driver for the parser and external preprocessors.
Warning: this module is unstable and part of compiler-libs.
exception Error of error
type 'a ast_kind =
| Structure : Parsetree.structure ast_kind
| Signature : Parsetree.signature ast_kind
val read_ast : 'a ast_kind -> string -> 'a
val write_ast : 'a ast_kind -> string -> 'a -> unit
val file :
tool_name:string ->
string ->
(Stdlib.Lexing.lexbuf -> 'a) ->
'a ast_kind ->
'a
val apply_rewriters :
?restore:bool ->
tool_name:string ->
'a ast_kind ->
'a ->
'a
If restore = true
(the default), cookies set by external rewriters will be kept for later calls.
val apply_rewriters_str :
?restore:bool ->
tool_name:string ->
Parsetree.structure ->
Parsetree.structure
val apply_rewriters_sig :
?restore:bool ->
tool_name:string ->
Parsetree.signature ->
Parsetree.signature
val report_error : Stdlib.Format.formatter -> error -> unit
val parse_implementation : tool_name:string -> string -> Parsetree.structure
val parse_interface : tool_name:string -> string -> Parsetree.signature
val open_and_check_magic : string -> string -> in_channel * bool