本文整理汇总了C++中Bundle::isSet方法的典型用法代码示例。如果您正苦于以下问题:C++ Bundle::isSet方法的具体用法?C++ Bundle::isSet怎么用?C++ Bundle::isSet使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Bundle
的用法示例。
在下文中一共展示了Bundle::isSet方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: fromAnyValue
void User::fromAnyValue(const AnyValue & state)
{
PublicUser::fromAnyValue(state);
Bundle bundle = state.as<Bundle>();
_birthday = bundle.isSet("birthdate") ? bundle.get<std::string>("birthdate") : "";
_country = bundle.get<std::string>("country");
_email = bundle.isSet("email") ? bundle.get<std::string>("email") : "";
if (bundle.isSet("product"))
_product = bundle.get<std::string>("product") == "premium" ? ProductType::PREMIUM : ProductType::FREE;
}
示例2:
TEST(PHPSessionSerializer, Deserialize)
{
std::string sessiondata = "bool|b:0;string|s:5:\"Hallo\";classobject|O:8:\"stdClass\":1:{s:8:\"property\";s:5:\"value\";}array|a:1:{i:0;s:5:\"hallo\";}null|N;integer|i:1;double|d:10;";
Bundle res = Serialize::PHPSessionSerializer().deserialize(sessiondata).as<Bundle>();
ASSERT_TRUE(res.isSet("bool"));
ASSERT_TRUE(res.isSet("string"));
ASSERT_TRUE(res.isSet("classobject"));
ASSERT_TRUE(res.isSet("array"));
ASSERT_TRUE(res.isSet("null"));
ASSERT_TRUE(res.isSet("integer"));
ASSERT_TRUE(res.isSet("double"));
ASSERT_TRUE(res["bool"].isType<bool>());
ASSERT_TRUE(res["string"].isType<std::string>());
ASSERT_TRUE(res["classobject"].isType<Bundle>());
ASSERT_TRUE(res["array"].isType<Bundle>());
ASSERT_TRUE(res["null"].isType<nullptr_t>());
ASSERT_TRUE(res["integer"].isType<int64_t>());
ASSERT_TRUE(res["double"].isType<double>());
ASSERT_EQ(false, res["bool"].as<bool>());
ASSERT_EQ("Hallo", res["string"].as<std::string>());
ASSERT_EQ(1, res["integer"].as<int64_t>());
ASSERT_EQ(10, res["double"].as<double>());
{
auto c = res["classobject"].as<Bundle>();
ASSERT_TRUE(c.isSet("property"));
ASSERT_TRUE(c["property"].isType<std::string>());
ASSERT_EQ("value", c["property"].as<std::string>());
}
{
auto c = res["array"].as<Bundle>();
ASSERT_TRUE(c.isSet("0"));
ASSERT_TRUE(c["0"].isType<std::string>());
ASSERT_EQ("hallo", c["0"].as<std::string>());
}
}