本文整理汇总了C++中json_config_iarchive_cast::get方法的典型用法代码示例。如果您正苦于以下问题:C++ json_config_iarchive_cast::get方法的具体用法?C++ json_config_iarchive_cast::get怎么用?C++ json_config_iarchive_cast::get使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类json_config_iarchive_cast
的用法示例。
在下文中一共展示了json_config_iarchive_cast::get方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: check_json_type
inline bool check_json_type(
json_config_iarchive_cast& js,
jubatus::util::text::json::json::json_type_t t) {
if (js.get().type() != t) {
type_error e(js.get_config().path(), t, js.get().type());
if (js.trace_error()) {
js.push_error(e);
} else {
throw JUBATUS_EXCEPTION(e);
}
return false;
}
return true;
}
示例2: check_json_float
inline bool check_json_float(json_config_iarchive_cast& js) {
if (js.get().type() != pfi::text::json::json::Float
&& js.get().type() != pfi::text::json::json::Integer) {
type_error e(
js.get_config().path(),
pfi::text::json::json::Float,
js.get().type());
if (js.trace_error()) {
js.push_error(e);
} else {
throw JUBATUS_EXCEPTION(e);
}
return false;
}
return true;
}
示例3: check_json_type
inline bool check_json_type(
json_config_iarchive_cast& js,
pfi::text::json::json::json_type_t t) {
if (js.get().type() != t) {
// int -> float is valid
if (js.get().type() == pfi::text::json::json::Integer &&
t == pfi::text::json::json::Float) {
return true;
}
type_error e(js.get_config().path(), t, js.get().type());
if (js.trace_error()) {
js.push_error(e);
} else {
throw e;
}
return false;
}
return true;
}
示例4: serialize
inline void serialize(json_config_iarchive_cast& js, T& v) {
if (js.get().type() == jubatus::util::text::json::json::Object) {
member_collector collector;
jubatus::util::data::serialization::access::serialize(collector, v);
std::set<std::string> members(collector.get_members().begin(),
collector.get_members().end());
for (jubatus::util::text::json::json::const_iterator it = js.get().begin();
it != js.get().end(); ++it) {
const std::string& key = it->first;
if (members.count(key) == 0) {
redundant_key e(js.get_config().path(), key);
if (js.trace_error()) {
js.push_error(e);
} else {
throw JUBATUS_EXCEPTION(e);
}
}
}
}
jubatus::util::data::serialization::access::serialize(js, v);
}
示例5: serialize
inline void serialize(json_config_iarchive_cast& js, pfi::text::json::json& v) {
v = js.get();
}