本文整理汇总了C++中Site::serialize方法的典型用法代码示例。如果您正苦于以下问题:C++ Site::serialize方法的具体用法?C++ Site::serialize怎么用?C++ Site::serialize使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Site
的用法示例。
在下文中一共展示了Site::serialize方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: main
int main(int argc, char **argv)
{
User::Builder userBuilder;
userBuilder.set_name("Arthur Philip Dent");
userBuilder.set_age(12);
userBuilder.set_metadata({{"meta1", false}, {"meta2", std::string("asdf")}});
Site::Builder builder;
builder.set_name("asdf");
builder.set_type(SiteType::Governmental);
builder.add_users(userBuilder.build().rebuild());
userBuilder.set_name("Blarg");
builder.add_users(userBuilder);
const Site site = builder.build();
Argonauts::Util::StringOutputStream stream;
Argonauts::Util::Json::SaxWriter writer(&stream);
Argonauts::Runtime::SaxSinkSerializer serializer(&writer);
site.serialize(&serializer);
std::cout << stream.result() << std::endl;
return 0;
}
示例2: parseJson
TEST(OpenRTB, SiteTest) {
dynamic siteObj = parseJson(readFile("testdata/site.json"));
Site site;
site.deserialize(siteObj);
std::function<void()> checkFunction = [&](){
EXPECT_EQ(site.id, siteObj.at("id").asString().toStdString());
EXPECT_EQ(site.domain.get(), siteObj.at("domain").asString().toStdString());
EXPECT_EQ(site.page, siteObj.at("page").asString().toStdString());
dynamic catObj = {};
for(auto elem : site.cat.get()) {
catObj.push_back(elem);
}
EXPECT_EQ(catObj, siteObj.at("cat"));
};
checkFunction();
siteObj = site.serialize();
checkFunction();
}