By not calling validate(), we can add
non-invasive features which will be simply ignored when user-code
is compiled against an old version. That way, we can often
avoid a minor version-bump.
The user can call validate() himself if he prefers that behavior.
{}
CharReader* CharReaderBuilder::newCharReader() const
{
- if (!validate(NULL)) throw std::runtime_error("invalid settings");
- // TODO: Maybe serialize the invalid settings into the exception.
-
bool collectComments = settings_["collectComments"].asBool();
OurFeatures features = OurFeatures::all();
features.allowComments_ = settings_["allowComments"].asBool();
{}
StreamWriter* StreamWriterBuilder::newStreamWriter() const
{
- if (!validate(NULL)) throw std::runtime_error("invalid settings");
- // TODO: Maybe serialize the invalid settings into the exception.
-
std::string indentation = settings_["indentation"].asString();
std::string cs_str = settings_["commentStyle"].asString();
bool eyc = settings_["enableYAMLCompatibility"].asBool();