sig
  type ('token, 'semantic_value) traditional =
      (Stdlib.Lexing.lexbuf -> 'token) ->
      Stdlib.Lexing.lexbuf -> 'semantic_value
  type ('token, 'semantic_value) revised =
      (unit -> 'token) -> 'semantic_value
  val traditional2revised :
    ('token -> 'raw_token) ->
    ('token -> Stdlib.Lexing.position) ->
    ('token -> Stdlib.Lexing.position) ->
    ('raw_token, 'semantic_value) CamlinternalMenhirLib.Convert.traditional ->
    ('token, 'semantic_value) CamlinternalMenhirLib.Convert.revised
  val revised2traditional :
    ('raw_token -> Stdlib.Lexing.position -> Stdlib.Lexing.position -> 'token) ->
    ('token, 'semantic_value) CamlinternalMenhirLib.Convert.revised ->
    ('raw_token, 'semantic_value) CamlinternalMenhirLib.Convert.traditional
  module Simplified :
    sig
      val traditional2revised :
        ('token, 'semantic_value) CamlinternalMenhirLib.Convert.traditional ->
        ('token * Stdlib.Lexing.position * Stdlib.Lexing.position,
         'semantic_value)
        CamlinternalMenhirLib.Convert.revised
      val revised2traditional :
        ('token * Stdlib.Lexing.position * Stdlib.Lexing.position,
         'semantic_value)
        CamlinternalMenhirLib.Convert.revised ->
        ('token, 'semantic_value) CamlinternalMenhirLib.Convert.traditional
    end
end