sig
  type token =
      STRING of (Json_type.loc * string)
    | INT of (Json_type.loc * int)
    | FLOAT of (Json_type.loc * float)
    | BOOL of (Json_type.loc * bool)
    | OBJSTART of Json_type.loc
    | OBJEND of Json_type.loc
    | ARSTART of Json_type.loc
    | AREND of Json_type.loc
    | NULL of Json_type.loc
    | COMMA of Json_type.loc
    | COLON of Json_type.loc
    | EOF
  val main :
    (Lexing.lexbuf -> Json_parser.token) -> Lexing.lexbuf -> Json_type.t
end