clarify comments
And throw instead of return null for invalid settings.
diff --git a/include/json/reader.h b/include/json/reader.h
index c0dd137..041ae0d 100644
--- a/include/json/reader.h
+++ b/include/json/reader.h
@@ -299,10 +299,17 @@
These are case-sensitive.
Available settings (case-sensitive):
- "collectComments": false or true
- - "allowComments"
- - "strictRoot"
- - "allowDroppedNullPlaceholders"
- - "allowNumericKeys"
+ - true to collect comment and allow writing them
+ back during serialization, false to discard comments.
+ This parameter is ignored if allowComments is false.
+ - "allowComments": false or true
+ - true if comments are allowed.
+ - "strictRoot": false or true
+ - true if root must be either an array or an object value
+ - "allowDroppedNullPlaceholders": false or true
+ - true if dropped null placeholders are allowed. (See StreamWriterBuilder.)
+ - "allowNumericKeys": false or true
+ - true if numeric object keys are allowed.
You can examine 'settings_` yourself
to see the defaults. You can also write and read them just like any
diff --git a/include/json/writer.h b/include/json/writer.h
index 9f51d07..36ed4b9 100644
--- a/include/json/writer.h
+++ b/include/json/writer.h
@@ -92,9 +92,9 @@
Available settings (case-sensitive):
- "commentStyle": "None" or "All"
- "indentation": "<anything>"
- - "enableYAMLCompatibility": False or True
+ - "enableYAMLCompatibility": false or true
- slightly change the whitespace around colons
- - "dropNullPlaceholders": False or True
+ - "dropNullPlaceholders": false or true
- Drop the "null" string from the writer's output for nullValues.
Strictly speaking, this is not valid JSON. But when the output is being
fed to a browser's Javascript, it makes for smaller output and the
diff --git a/src/lib_json/json_writer.cpp b/src/lib_json/json_writer.cpp
index 7cf46f4..ca62c78 100644
--- a/src/lib_json/json_writer.cpp
+++ b/src/lib_json/json_writer.cpp
@@ -981,7 +981,7 @@
} else if (cs_str == "None") {
cs = CommentStyle::None;
} else {
- return NULL;
+ throw std::runtime_error("commentStyle must be 'All' or 'None'");
}
std::string colonSymbol = " : ";
if (eyc) {