Module Archetype.Io

exception ParenError
type error_desc =
| LexicalError of string
| Unclosed of string * string
| NotExpecting of string
val pp_error_desc : Ppx_deriving_runtime.Format.formatter -> error_desc -> Ppx_deriving_runtime.unit
val show_error_desc : error_desc -> Ppx_deriving_runtime.string
type error = Location.t * error_desc
val emit_error : Location.t -> error_desc -> unit
val lexbuf_from_channel : string -> Stdlib.in_channel -> Stdlib.Lexing.lexbuf
val lexbuf_from_string : string -> string -> Stdlib.Lexing.lexbuf
val check_brackets_balance : unit -> unit
val resume_on_error : [< `FoundDeclarationAt of 'a Parser.MenhirInterpreter.checkpoint | `FoundEffect of 'a Parser.MenhirInterpreter.checkpoint | `FoundExprAt of 'a Parser.MenhirInterpreter.checkpoint | `FoundNothingAt of 'a Parser.MenhirInterpreter.checkpoint ] -> PureLexer.Lexer.t -> PureLexer.Lexer.t * 'a Parser.MenhirInterpreter.checkpoint
val update_last_reduction : 'a -> Parser.MenhirInterpreter.production -> [> `FoundDeclarationAt of 'a | `FoundEffect of 'a | `FoundExprAt of 'a ] as 'b -> 'b
val parse : (Stdlib.Lexing.position -> 'a Parser.MenhirInterpreter.checkpoint) -> Stdlib.Lexing.lexbuf -> 'a
val parse_archetype : ?⁠name:string -> Stdlib.in_channel -> ParseTree.archetype
val parse_archetype_strict : ?⁠name:string -> Stdlib.in_channel -> ParseTree.archetype
val parse_archetype_strict_from_string : ?⁠name:string -> string -> ParseTree.archetype
val parse_expr : string -> ParseTree.expr