本文整理汇总了C++中json_config_iarchive_cast::get_config方法的典型用法代码示例。如果您正苦于以下问题:C++ json_config_iarchive_cast::get_config方法的具体用法?C++ json_config_iarchive_cast::get_config怎么用?C++ json_config_iarchive_cast::get_config使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类json_config_iarchive_cast
的用法示例。
在下文中一共展示了json_config_iarchive_cast::get_config方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: serialize
inline void serialize(json_config_iarchive_cast& js, std::vector<T>& vs) {
// check errors
if (!detail::check_json_type(js, pfi::text::json::json::Array)) {
return;
}
size_t size = js.get_config().size();
std::vector<T> v(size);
for (size_t i = 0; i < size; ++i) {
json_from_config(js.get_config()[i], v[i], js.errors());
}
vs.swap(v);
}
示例2: serialize
inline void serialize(json_config_iarchive_cast& js,
jubatus::util::data::serialization::named_value<T>& v) {
if (js.get_config().contain(v.name)) {
json_from_config(js.get_config()[v.name], v.v, js.errors());
} else {
not_found e(js.get_config().path(), v.name);
if (js.trace_error()) {
js.push_error(e);
} else {
throw JUBATUS_EXCEPTION(e);
}
}
}
示例3: 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;
}
示例4: 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;
}
示例5: 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;
}