AnCH Framework
0.1
Another C++ Hack Framework
Loading...
Searching...
No Matches
primitiveMapper.hpp
1
/*
2
ANCH Framework: ANother C++ Hack is a C++ framework based on C++11 standard
3
Copyright (C) 2020 Vincent Lachenal
4
5
This file is part of ANCH Framework.
6
7
ANCH Framework is free software: you can redistribute it and/or modify
8
it under the terms of the GNU Lesser General Public License as published by
9
the Free Software Foundation, either version 3 of the License, or
10
(at your option) any later version.
11
12
ANCH Framework is distributed in the hope that it will be useful,
13
but WITHOUT ANY WARRANTY; without even the implied warranty of
14
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15
GNU Lesser General Public License for more details.
16
17
You should have received a copy of the GNU Lesser General Public License
18
along with ANCH Framework. If not, see <http://www.gnu.org/licenses/>.
19
*/
20
#pragma once
21
22
#include <string>
23
#include <vector>
24
#include <map>
25
#include <ostream>
26
#include <functional>
27
#include <list>
28
#include <set>
29
#include <map>
30
31
#include "json/genericMapper.hpp"
32
#include "json/constants.hpp"
33
#include "json/mappingOptions.hpp"
34
35
36
namespace
anch::json
{
37
38
// JSON mapper early declaration
39
template
<
typename
T>
40
class
Factory
;
41
53
template
<
typename
T>
54
class
PrimitiveMapper:
public
anch::json::GenericMapper
<PrimitiveMapper<T>, T> {
55
friend
anch::json::Factory<T>
;
56
57
// Constructors +
58
private
:
62
PrimitiveMapper();
63
64
public
:
70
PrimitiveMapper
(
const
PrimitiveMapper& other) =
delete
;
71
77
PrimitiveMapper
(PrimitiveMapper&& other) =
delete
;
78
// Constructors -
79
80
// Destructor +
81
private
:
85
virtual
~PrimitiveMapper();
86
// Destructor -
87
88
// Methods +
89
public
:
96
void
serializeValue
(
const
T& value,
anch::json::WriterContext
& context)
const
;
97
106
bool
deserializeValue
(T& value,
anch::json::ReaderContext
& context)
const
;
107
// Methods -
108
109
};
110
111
}
// anch::json
anch::json::Factory
JSON mapper factory.
Definition
factory.hpp:52
anch::json::GenericMapper
Generic mapper.
Definition
genericMapper.hpp:49
anch::json::PrimitiveMapper::deserializeValue
bool deserializeValue(T &value, anch::json::ReaderContext &context) const
anch::json::PrimitiveMapper::serializeValue
void serializeValue(const T &value, anch::json::WriterContext &context) const
anch::json::PrimitiveMapper::PrimitiveMapper
PrimitiveMapper(PrimitiveMapper &&other)=delete
anch::json::PrimitiveMapper::PrimitiveMapper
PrimitiveMapper(const PrimitiveMapper &other)=delete
anch::json::ReaderContext
JSON reader context.
Definition
readerContext.hpp:42
anch::json::WriterContext
JSON writer context.
Definition
writerContext.hpp:41
anch::json
JSON namespace.
Definition
constants.hpp:25
anch-json
inc
json
primitiveMapper.hpp
Generated by
1.14.0