code: @SuppressWarnings("unchecked")
      public static <T> T parse(Reader reader, Class<T> type,
                                Converter<Object, Map<String, Object>> mc) throws IOException,
              ParseException {
          return (T) parse(reader, new JSONVisitor(type, new JSONValue(mc), mc),
                  JSONToken.ANY);
      }
docs: parse json
  
  @param reader json source.
  @param type   target type.
  @return result.
  @throws IOException
  @throws ParseException