EHS
Loading...
Searching...
No Matches
Json.h
Go to the documentation of this file.
1
#pragma once
2
3
#include "
ehs/EHS.h
"
4
#include "
ehs/Str.h
"
5
#include "
JsonBase.h
"
6
#include "
JsonObj.h
"
7
#include "
JsonArray.h
"
8
#include "
JsonBool.h
"
9
#include "
JsonNum.h
"
10
#include "
JsonStr.h
"
11
#include "
JsonVar.h
"
12
13
namespace
ehs
14
{
15
class
EHS_LIB_IO
Json
final
16
{
17
private
:
18
JsonBase
*value;
19
20
public
:
21
~Json
();
22
23
Json
();
24
25
Json
(
const
JsonBase
&value);
26
27
Json
(
const
JsonObj
&value);
28
29
Json
(
const
JsonArray
&value);
30
31
Json
(
const
JsonBool
&value);
32
33
Json
(
const
JsonNum
&value);
34
35
Json
(
const
JsonStr
&value);
36
37
Json
(
const
char
*data, UInt_64 size, UInt_64 extra);
38
39
Json
(
const
Str_8
&data, UInt_64 extra);
40
41
Json
(
Json
&&json)
noexcept
;
42
43
Json
(
const
Json
&json);
44
45
Json
&
operator=
(
Json
&&json)
noexcept
;
46
47
Json
&
operator=
(
const
Json
&json);
48
49
JsonBase
*
GetValue
();
50
51
JsonBase
*
RetrieveValue
(
const
Str_8
&access);
52
53
Str_8
ToStr
(
bool
compact)
const
;
54
55
private
:
56
static
Vector<Str_8>
ParseAccess(
const
Str_8
&access);
57
58
void
ParseValue(
JsonVar
*var,
const
Char_8
**begin,
const
Char_8
*end, UInt_64 extra);
59
60
JsonVar
ParseVar(
const
Char_8
**begin,
const
Char_8
*end, UInt_64 extra);
61
62
void
ParseObject(
JsonObj
*obj,
const
Char_8
**begin,
const
Char_8
*end, UInt_64 extra);
63
64
void
ParseArray(
JsonArray
*arr,
const
Char_8
**begin,
const
Char_8
*end, UInt_64 extra);
65
66
void
Parse(
const
Str_8
&data, UInt_64 extra);
67
};
68
}
EHS.h
JsonArray.h
JsonBase.h
JsonBool.h
JsonNum.h
JsonObj.h
JsonStr.h
JsonVar.h
Str.h
ehs::JsonArray
Definition
JsonArray.h:15
ehs::JsonBase
Definition
JsonBase.h:19
ehs::JsonBool
Definition
JsonBool.h:11
ehs::JsonNum
Definition
JsonNum.h:11
ehs::JsonObj
Definition
JsonObj.h:13
ehs::JsonStr
Definition
JsonStr.h:11
ehs::JsonVar
Definition
JsonVar.h:16
ehs::Json::RetrieveValue
JsonBase * RetrieveValue(const Str_8 &access)
Definition
Json.cpp:147
ehs::Json::GetValue
JsonBase * GetValue()
Definition
Json.cpp:142
ehs::Json::ToStr
Str_8 ToStr(bool compact) const
Definition
Json.cpp:187
ehs::Json::Json
Json()
Definition
Json.cpp:11
ehs::Json::operator=
Json & operator=(Json &&json) noexcept
Definition
Json.cpp:93
ehs::Vector
Definition
Vector.h:18
ehs
Definition
Anchor.h:6
ehs::Char_8
char Char_8
Definition
Types.h:40
ehs::Str_8
Str< Char_8, UInt_64 > Str_8
Definition
Str.h:1953
include
ehs
json
Json.h
Generated by
1.13.2