本文整理汇总了C++中json_config_iarchive_cast::trace_error方法的典型用法代码示例。如果您正苦于以下问题:C++ json_config_iarchive_cast::trace_error方法的具体用法?C++ json_config_iarchive_cast::trace_error怎么用?C++ json_config_iarchive_cast::trace_error使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类json_config_iarchive_cast
的用法示例。
在下文中一共展示了json_config_iarchive_cast::trace_error方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: 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);
}
}
}
示例2: 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;
}
示例3: 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;
}
示例4: 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;
}