blob: 4f4ba761045e41ab074f9eaeb3c6fdc489a053ed (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
|
//
// MCJSON.h
// hermes
//
// Created by DINH Viêt Hoà on 4/8/13.
// Copyright (c) 2013 MailCore. All rights reserved.
//
#ifndef __MAILCORE_MCJSON_H_
#define __MAILCORE_MCJSON_H_
#include <MailCore/MCObject.h>
#include <MailCore/MCHashMap.h>
#include <MailCore/MCArray.h>
#include <MailCore/MCValue.h>
#include <MailCore/MCString.h>
#include <MailCore/MCData.h>
namespace mailcore {
class Null;
class JSON {
public:
static String * objectToJSONString(Object * object, bool pretty = false);
static Data * objectToJSONData(Object * object, bool pretty = false);
static Object * objectFromJSONString(String * json);
static Object * objectFromJSONData(Data * json);
private:
static void * hashMapToJSON(HashMap * hashmap);
static void * arrayToJSON(Array * array);
static void * stringToJSON(String * string);
static void * doubleToJSON(Value * value);
static void * boolToJSON(Value * value);
static void * nullToJSON(Null * value);
static void * objectToJSON(Object * object);
static HashMap * hashMapFromJSON(void * json);
static Array * arrayFromJSON(void * json);
static String * stringFromJSON(void * json);
static Value * doubleFromJSON(void * json);
static Value * boolFromJSON(void * json);
static Null * nullFromJSON(void * json);
static Object * objectFromJSON(void * json);
};
}
#endif /* defined(__hermes__MCJSON__) */
|