File tree 2 files changed +22
-0
lines changed
2 files changed +22
-0
lines changed Original file line number Diff line number Diff line change @@ -360,6 +360,12 @@ class JSON_API CharReaderBuilder : public CharReader::Factory {
360
360
* \snippet src/lib_json/json_reader.cpp CharReaderBuilderStrictMode
361
361
*/
362
362
static void strictMode (Json::Value* settings);
363
+ /* * ECMA-404 mode.
364
+ * \pre 'settings' != NULL (but Json::null is fine)
365
+ * \remark Defaults:
366
+ * \snippet src/lib_json/json_reader.cpp CharReaderBuilderECMA404Mode
367
+ */
368
+ static void ecma404Mode (Json::Value* settings);
363
369
};
364
370
365
371
/* * Consume entire stream and use its begin/end.
Original file line number Diff line number Diff line change @@ -1963,6 +1963,22 @@ void CharReaderBuilder::setDefaults(Json::Value* settings) {
1963
1963
(*settings)[" skipBom" ] = true ;
1964
1964
// ! [CharReaderBuilderDefaults]
1965
1965
}
1966
+ // static
1967
+ void CharReaderBuilder::ecma404Mode (Json::Value* settings) {
1968
+ // ! [CharReaderBuilderECMA404Mode]
1969
+ (*settings)[" allowComments" ] = false ;
1970
+ (*settings)[" allowTrailingCommas" ] = false ;
1971
+ (*settings)[" strictRoot" ] = false ;
1972
+ (*settings)[" allowDroppedNullPlaceholders" ] = false ;
1973
+ (*settings)[" allowNumericKeys" ] = false ;
1974
+ (*settings)[" allowSingleQuotes" ] = false ;
1975
+ (*settings)[" stackLimit" ] = 1000 ;
1976
+ (*settings)[" failIfExtra" ] = true ;
1977
+ (*settings)[" rejectDupKeys" ] = false ;
1978
+ (*settings)[" allowSpecialFloats" ] = false ;
1979
+ (*settings)[" skipBom" ] = false ;
1980
+ // ! [CharReaderBuilderECMA404Mode]
1981
+ }
1966
1982
1967
1983
// ////////////////////////////////
1968
1984
// global functions
You can’t perform that action at this time.
0 commit comments