Added features that allow the reader to accept common non-standard JSON.
This is a version of patch #17, from Clay Wood:
http://sourceforge.net/p/jsoncpp/patches/17/
diff --git a/include/json/features.h b/include/json/features.h
index 4353278..221d8ff 100644
--- a/include/json/features.h
+++ b/include/json/features.h
@@ -42,6 +42,12 @@
/// \c true if root must be either an array or an object value. Default: \c false.
bool strictRoot_;
+
+ /// \c true if dropped null placeholders are allowed. Default: \c false.
+ bool allowDroppedNullPlaceholders_;
+
+ /// \c true if numeric object key are allowed. Default: \c false.
+ bool allowNumericKeys_;
};
} // namespace Json
diff --git a/include/json/reader.h b/include/json/reader.h
index 3d8f628..0771342 100644
--- a/include/json/reader.h
+++ b/include/json/reader.h
@@ -146,9 +146,11 @@
bool readObject( Token &token );
bool readArray( Token &token );
bool decodeNumber( Token &token );
+ bool decodeNumber( Token &token, Value &decoded );
bool decodeString( Token &token );
bool decodeString( Token &token, std::string &decoded );
bool decodeDouble( Token &token );
+ bool decodeDouble( Token &token, Value &decoded );
bool decodeUnicodeCodePoint( Token &token,
Location ¤t,
Location end,