本文整理汇总了C++中json_ref::isString方法的典型用法代码示例。如果您正苦于以下问题:C++ json_ref::isString方法的具体用法?C++ json_ref::isString怎么用?C++ json_ref::isString使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类json_ref
的用法示例。
在下文中一共展示了json_ref::isString方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: QueryParseError
/* parse an expression term. It can be one of:
* "term"
* ["term" <parameters>]
*/
std::unique_ptr<QueryExpr> w_query_expr_parse(
w_query* query,
const json_ref& exp) {
w_string name;
if (exp.isString()) {
name = json_to_w_string(exp);
} else if (exp.isArray() && json_array_size(exp) > 0) {
const auto& first = exp.at(0);
if (!first.isString()) {
throw QueryParseError("first element of an expression must be a string");
}
name = json_to_w_string(first);
} else {
throw QueryParseError("expected array or string for an expression");
}
auto it = term_hash().find(name);
if (it == term_hash().end()) {
throw QueryParseError(
watchman::to<std::string>("unknown expression term '", name, "'"));
}
return it->second(query, exp);
}
示例2: parse_suffix
static w_string parse_suffix(const json_ref& ele) {
if (!ele.isString()) {
throw QueryParseError("'suffix' must be a string or an array of strings");
}
auto str = json_to_w_string(ele);
return str.piece().asLowerCase(str.type());
}