本文整理汇总了C++中QueryData::insert方法的典型用法代码示例。如果您正苦于以下问题:C++ QueryData::insert方法的具体用法?C++ QueryData::insert怎么用?C++ QueryData::insert使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类QueryData
的用法示例。
在下文中一共展示了QueryData::insert方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: genShellHistory
QueryData genShellHistory(QueryContext& context) {
QueryData results;
// Select only the home directory for this user.
QueryData users;
if (!context.constraints["username"].exists(EQUALS)) {
users =
SQL::selectAllFrom("users", "uid", EQUALS, std::to_string(getuid()));
} else {
auto usernames = context.constraints["username"].getAll(EQUALS);
for (const auto& username : usernames) {
// Use a predicated select all for each user.
auto user = SQL::selectAllFrom("users", "username", EQUALS, username);
users.insert(users.end(), user.begin(), user.end());
}
}
// Iterate over each user
for (const auto& row : users) {
if (row.count("username") > 0 && row.count("directory") > 0) {
genShellHistoryForUser(row.at("username"), row.at("directory"), results);
}
}
return results;
}
示例2: pidsFromContext
QueryData pidsFromContext(const QueryContext& context, bool all) {
QueryData procs;
if (context.hasConstraint("pid", EQUALS)) {
context.forEachConstraint(
"pid", EQUALS, ([&procs](const std::string& expr) {
auto proc = SQL::selectAllFrom("processes", "pid", EQUALS, expr);
procs.insert(procs.end(), procs.begin(), procs.end());
}));
} else if (!all) {
procs = SQL::selectAllFrom(
"processes", "pid", EQUALS, std::to_string(platformGetPid()));
} else {
procs = SQL::selectAllFrom("processes");
}
return procs;
}
示例3: usersFromContext
QueryData usersFromContext(const QueryContext& context, bool all) {
QueryData users;
if (context.hasConstraint("uid", EQUALS)) {
context.forEachConstraint(
"uid", EQUALS, ([&users](const std::string& expr) {
auto user = SQL::selectAllFrom("users", "uid", EQUALS, expr);
users.insert(users.end(), user.begin(), user.end());
}));
} else if (!all) {
users = SQL::selectAllFrom(
"users", "uid", EQUALS, std::to_string(platformGetUid()));
} else {
users = SQL::selectAllFrom("users");
}
return users;
}
示例4: genEtcHosts
QueryData genEtcHosts(QueryContext& context) {
std::string content;
QueryData qres = {};
if (readFile(kEtcHosts, content).ok()) {
qres = parseEtcHostsContent(content);
}
#ifdef WIN32
content.clear();
QueryData qres_ics = {};
if (readFile(kEtcHostsIcs, content).ok()) {
qres_ics = parseEtcHostsContent(content);
qres.insert(qres.end(), qres_ics.begin(), qres_ics.end());
}
#endif
return qres;
}