val parse_statement: Ulexing.lexbuf -> statement (** @raise End_of_file *)
-val statement: statement Grammar.Entry.e
+val statement: unit -> 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:
+ (LexiconEngine.status -> ast_statement -> unit) -> unit
+
+(* this callback is called before every lexicon command *)
+val set_lexicon_callback:
+ (LexiconEngine.status -> LexiconAst.command -> unit) -> unit
+
+val push : unit -> unit
+val pop : unit -> unit