sig
  type xml_lexers = {
    encoding : Encoding.encoding;
    opening_tag_state :
      Lexing_util.lexing_handler -> Lexing.lexbuf -> Parse_xquery.token;
    closing_tag_state :
      Lexing_util.lexing_handler -> Lexing.lexbuf -> Parse_xquery.token;
    text_state :
      Lexing_util.lexing_handler -> Lexing.lexbuf -> Parse_xquery.token;
    attribute_text_state :
      Lexing_util.lexing_handler -> Lexing.lexbuf -> Parse_xquery.token;
    pi_state :
      Lexing_util.lexing_handler -> Lexing.lexbuf -> Parse_xquery.token;
    cdata_state :
      Lexing_util.lexing_handler -> Lexing.lexbuf -> Parse_xquery.token;
    comment_state :
      Lexing_util.lexing_handler -> Lexing.lexbuf -> Parse_xquery.token;
  }
  type language_lexers = {
    language : Lexing_util.language_kind;
    schema_declaration_state :
      Lexing_util.lexing_handler -> Lexing.lexbuf -> Parse_xquery.token;
    type_declaration_state :
      Lexing_util.lexing_handler -> Lexing.lexbuf -> Parse_xquery.token;
    xtype_state :
      Lexing_util.lexing_handler -> Lexing.lexbuf -> Parse_xquery.token;
    default_state :
      Lexing_util.lexing_handler ->
      Lexing.lexbuf -> Parse_xquery.token option;
    operator_state :
      Lexing_util.lexing_handler ->
      Lexing.lexbuf -> Parse_xquery.token option;
    namespacedecl_state :
      Lexing_util.lexing_handler -> Lexing.lexbuf -> Parse_xquery.token;
    namespacekeyword_state :
      Lexing_util.lexing_handler ->
      Lexing.lexbuf -> Parse_xquery.token option;
    copynamespaces_state :
      Lexing_util.lexing_handler -> Lexing.lexbuf -> Parse_xquery.token;
    xmlspacedecl_state :
      Lexing_util.lexing_handler -> Lexing.lexbuf -> Parse_xquery.token;
    itemtype_state :
      Lexing_util.lexing_handler -> Lexing.lexbuf -> Parse_xquery.token;
    kindtest_state :
      Lexing_util.lexing_handler -> Lexing.lexbuf -> Parse_xquery.token;
    kindtestforpi_state :
      Lexing_util.lexing_handler -> Lexing.lexbuf -> Parse_xquery.token;
    schemacontextstep_state :
      Lexing_util.lexing_handler -> Lexing.lexbuf -> Parse_xquery.token;
    varname_state :
      Lexing_util.lexing_handler -> Lexing.lexbuf -> Parse_xquery.token;
    vardecl_state :
      Lexing_util.lexing_handler -> Lexing.lexbuf -> Parse_xquery.token;
    pragma_state :
      Lexing_util.lexing_handler -> Lexing.lexbuf -> Parse_xquery.token;
  }
  val register_lexer : Parse_util.xml_lexers -> unit
  val set_lexer : Encoding.rep_encoding -> unit
  val xquery_lexfun :
    Lexing_util.lexing_handler -> Lexing.lexbuf -> Parse_xquery.token
end