本文整理汇总了C++中value::ConstValueIterator::IsInt64方法的典型用法代码示例。如果您正苦于以下问题:C++ ConstValueIterator::IsInt64方法的具体用法?C++ ConstValueIterator::IsInt64怎么用?C++ ConstValueIterator::IsInt64使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类value::ConstValueIterator
的用法示例。
在下文中一共展示了ConstValueIterator::IsInt64方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: iterateArray
void iterateArray(Value::ConstValueIterator& itr,
Value::ConstValueIterator& itrEnd, StringBuffer *buffer,
Writer<StringBuffer> *writer, stringstream& ss) {
for (; itr != itrEnd; itr++) {
if (itr->IsObject()) {
Value::ConstMemberIterator itr_ = itr->MemberBegin();
Value::ConstMemberIterator itrEnd_ = itr->MemberEnd();
iterateObject(itr_, itrEnd_, buffer, writer, ss);
} else if (itr->IsArray()) {
Value::ConstValueIterator itr_ = itr->Begin();
Value::ConstValueIterator itrEnd_ = itr->End();
iterateArray(itr_, itrEnd_, buffer, writer, ss);
} else if (itr->IsBool()) {
ss << DELIM << itr->GetBool();
} else if (itr->IsInt()) {
ss << DELIM << itr->GetInt();
} else if (itr->IsInt64()) {
ss << DELIM << itr->GetInt64();
} else if (itr->IsDouble()) {
ss << DELIM << itr->GetDouble();
} else if (itr->IsString()) {
ss << DELIM << "\"" << itr->GetString() << "\"";
} else {
throw runtime_error(string("Case missing from tokenizer"));
}
}
}
示例2: _parseRapidJSONArray
void JSONArray::_parseRapidJSONArray(void *value) {
rapidjson::Value *rapidjsonValue = (rapidjson::Value *)value;
for (Value::ConstValueIterator currentValue = rapidjsonValue->Begin(); currentValue != rapidjsonValue->End(); ++currentValue)
switch (currentValue->GetType()) {
case kNullType:
break;
case kFalseType:
case kTrueType:
this->appendValue(shared_ptr<JSONNumber> (new JSONNumber(kTrueType ? true: false)));
break;
case kObjectType: {
shared_ptr<JSONObject> obj(new JSONObject());
obj->_parseRapidJSONObject((void*)currentValue);
this->appendValue(obj);
}
break;
case kArrayType: {
shared_ptr<JSONArray> obj(new JSONArray());
obj->_parseRapidJSONArray((void*)currentValue);
this->appendValue(obj);
}
break;
case kStringType:
this->appendValue(shared_ptr<JSONString> (new JSONString(currentValue->GetString())));
break;
case kNumberType:
if (rapidjsonValue->IsDouble()) {
this->appendValue(shared_ptr<JSONNumber> (new JSONNumber(currentValue->GetDouble())));
} else if (rapidjsonValue->IsInt() || currentValue->IsInt64()) {
this->appendValue(shared_ptr<JSONNumber> (new JSONNumber(currentValue->GetInt())));
} else if (currentValue->IsUint() || currentValue->IsUint64()) {
this->appendValue(shared_ptr<JSONNumber> (new JSONNumber(currentValue->GetUint())));
}
break;
}
}