本文整理汇总了C++中rapidjson::Value::RemoveMember方法的典型用法代码示例。如果您正苦于以下问题:C++ Value::RemoveMember方法的具体用法?C++ Value::RemoveMember怎么用?C++ Value::RemoveMember使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类rapidjson::Value
的用法示例。
在下文中一共展示了Value::RemoveMember方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: xml2json_to_array_form
void xml2json_to_array_form(const char *name, rapidjson::Value &jsvalue, rapidjson::Value &jsvalue_chd, rapidjson::Document::AllocatorType& allocator)
{
rapidjson::Value jsvalue_target; // target to do some operation
rapidjson::Value jn; // this is a must, partially because of the latest version of rapidjson
jn.SetString(name, allocator);
jsvalue_target = jsvalue.FindMember(name)->value;
if(jsvalue_target.IsArray())
{
jsvalue_target.PushBack(jsvalue_chd, allocator);
jsvalue.RemoveMember(name);
jsvalue.AddMember(jn, jsvalue_target, allocator);
}
else
{
rapidjson::Value jsvalue_array;
//jsvalue_array = jsvalue_target;
jsvalue_array.SetArray();
jsvalue_array.PushBack(jsvalue_target, allocator);
jsvalue_array.PushBack(jsvalue_chd, allocator);
jsvalue.RemoveMember(name);
jsvalue.AddMember(jn, jsvalue_array, allocator);
}
}
示例2: load_config
bool Account::load_config(rapidjson::Value& obj)
{
if (!obj.IsObject()) {
return false;
}
m_properties["Name"] = m_name;
m_protocol = Protocol::from_object(obj["Protocol"], obj["Config"]);
obj.RemoveMember("Config");
if (obj.HasMember("Interval") && obj["Interval"].IsUint()) {
unsigned interval = obj["Interval"].GetUint();
if (interval > 0) {
m_interval = interval;
}
}
for (auto it = obj.MemberBegin(); it != obj.MemberEnd(); ++it) {
if (Application::read_event(m_notifications, it)) {
it->value.SetNull();
}
}
Application::generate_properties("", m_properties, obj);
return m_protocol != nullptr;
}