JsonCpp project page Classes Namespace JsonCpp home page

json_features.h
Go to the documentation of this file.
1// Copyright 2007-2010 Baptiste Lepilleur and The JsonCpp Authors
2// Distributed under MIT license, or public domain if desired and
3// recognized in your jurisdiction.
4// See file LICENSE for detail or copy at http://jsoncpp.sourceforge.net/LICENSE
5
6#ifndef JSON_FEATURES_H_INCLUDED
7#define JSON_FEATURES_H_INCLUDED
8
9#if !defined(JSON_IS_AMALGAMATION)
10#include "forwards.h"
11#endif // if !defined(JSON_IS_AMALGAMATION)
12
13#pragma pack(push)
14#pragma pack()
15
16namespace Json {
17
23public:
30 static Features all();
31
38 static Features strictMode();
39
43
45 bool allowComments_{true};
46
49 bool strictRoot_{false};
50
53
55 bool allowNumericKeys_{false};
56};
57
58} // namespace Json
59
60#pragma pack(pop)
61
62#endif // JSON_FEATURES_H_INCLUDED
bool strictRoot_
true if root must be either an array or an object value.
bool allowComments_
true if comments are allowed. Default: true.
bool allowDroppedNullPlaceholders_
true if dropped null placeholders are allowed. Default: false.
static Features all()
A configuration that allows all features and assumes all strings are UTF-8.
Features()
Initialize the configuration like JsonConfig::allFeatures;.
static Features strictMode()
A configuration that is strictly compatible with the JSON specification.
bool allowNumericKeys_
true if numeric object key are allowed. Default: false.
#define JSON_API
If defined, indicates that the source file is amalgamated to prevent private header inclusion.
Definition config.h:50
JSON (JavaScript Object Notation).
Definition allocator.h:15