Add using std::string to reduce clutter.

This commit is contained in:
King_DuckZ 2020-04-01 03:16:11 +02:00
parent b79d758e8e
commit 32f87e5185

View file

@ -80,32 +80,34 @@ namespace {
}
void load_from_commandline (const boost::program_options::variables_map& parVarMap, duck::XPathPtr xpath) {
using std::string;
const auto& vm = parVarMap;
const auto url = vm["input-url"].as<std::string>();
const auto url = vm["input-url"].as<string>();
duck::HtmlPool html_pool(
std::string(parVarMap["agent"].as<std::string>()),
std::string(parVarMap["from-code"].as<std::string>())
string(parVarMap["agent"].as<string>()),
string(parVarMap["from-code"].as<string>())
);
const auto in_html_id = html_pool.GetOrAdd(url);
std::string html = *html_pool.GetByID(in_html_id);
string html = *html_pool.GetByID(in_html_id);
if (vm.count("dump")) {
dump_string(vm["dump"].as<std::string>(), html);
dump_string(vm["dump"].as<string>(), html);
}
const std::string xpath_str = parVarMap["xpath"].as<std::string>();
const string xpath_str = parVarMap["xpath"].as<string>();
#if !defined(NDEBUG)
std::cout << " -- XPath direct mode --\n";
std::cout << "URL : " << parVarMap["input-url"].as<std::string>() << "\n";
std::cout << "URL : " << parVarMap["input-url"].as<string>() << "\n";
std::cout << "XPath: " << xpath_str << std::endl;
std::cout << "Agent: " << parVarMap["agent"].as<std::string>() << std::endl;
std::cout << "Agent: " << parVarMap["agent"].as<string>() << std::endl;
#endif
std::vector<std::string> queries;
std::vector<string> queries;
queries.reserve(1);
queries.push_back(std::move(xpath_str));
auto results = xpath->run_query(html, queries, parVarMap["namespace"].as<std::string>());
auto results = xpath->run_query(html, queries, parVarMap["namespace"].as<string>());
for (const auto& lst : results[0]) {
std::cout << lst.first << ": " << lst.second << '\n';
}
@ -117,21 +119,21 @@ namespace {
#if !defined(NDEBUG)
std::cout << " -- XPath model mode --\n";
if (parVarMap.count("input-url"))
std::cout << "URL : " << parVarMap["input-url"].as<std::string>() << "\n";
std::cout << "Model: " << parVarMap["model"].as<std::string>() << std::endl;
std::cout << "Agent: " << parVarMap["agent"].as<std::string>() << std::endl;
std::cout << "URL : " << parVarMap["input-url"].as<string>() << "\n";
std::cout << "Model: " << parVarMap["model"].as<string>() << std::endl;
std::cout << "Agent: " << parVarMap["agent"].as<string>() << std::endl;
#endif
const std::string script = duck::read_all(parVarMap["model"].as<std::string>());
const string script = duck::read_all(parVarMap["model"].as<string>());
auto ast = duck::sl::parse(script);
duck::HtmlPool html_pool(
std::string(parVarMap["agent"].as<std::string>()),
std::string(parVarMap["from-code"].as<std::string>())
string(parVarMap["agent"].as<string>()),
string(parVarMap["from-code"].as<string>())
);
duck::sl::apply(ast, duck::sl::HtmlPoolBaseSP(&html_pool), xpath, string(parVarMap["namespace"].as<string>()));
//auto list = duck::get_xpath_definitions(*ast);
//std::vector<std::string> expressions;
//std::vector<string> expressions;
//expressions.reserve(list.size());
//for (duck::element_def& elem : list) {
// expressions.push_back(std::move(elem.xpath));