X-Git-Url: http://matita.cs.unibo.it/gitweb/?a=blobdiff_plain;f=helm%2Fsoftware%2Fcomponents%2Fgrafite_parser%2FgrafiteParser.mli;h=d657e49752e2e23ac0e64dfcc2448cf6a12625a7;hb=2577baa7d96aa60bea61e6339174e8e67a1b337b;hp=b0dc6e8fd28e8b4a25bd51d0596b52809bac6adf;hpb=01001c883a8151edba81cd03a6f254d24a81c867;p=helm.git diff --git a/helm/software/components/grafite_parser/grafiteParser.mli b/helm/software/components/grafite_parser/grafiteParser.mli index b0dc6e8fd..d657e4975 100644 --- a/helm/software/components/grafite_parser/grafiteParser.mli +++ b/helm/software/components/grafite_parser/grafiteParser.mli @@ -35,19 +35,24 @@ type ast_statement = exception NoInclusionPerformed of string (* full path *) -type statement = +type 'status statement = ?never_include:bool -> (* do not call LexiconEngine to do includes, always raise NoInclusionPerformed *) include_paths:string list -> - LexiconEngine.status -> - LexiconEngine.status * ast_statement localized_option + (#LexiconEngine.status as 'status) -> + 'status * ast_statement localized_option -val parse_statement: Ulexing.lexbuf -> statement (** @raise End_of_file *) +val parse_statement: Ulexing.lexbuf -> #LexiconEngine.status statement (** @raise End_of_file *) -val statement: unit -> statement Grammar.Entry.e +val statement: unit -> #LexiconEngine.status statement Grammar.Entry.e -(* this callback is called on every include command *) -val set_callback: (string -> unit) -> unit +(* this callback is called before every grafite statement *) +val set_grafite_callback: + (ast_statement -> unit) -> unit + +(* this callback is called before every lexicon command *) +val set_lexicon_callback: + (LexiconAst.command -> unit) -> unit val push : unit -> unit val pop : unit -> unit