mirror of
https://github.com/RetroDECK/ES-DE.git
synced 2024-11-27 08:35:39 +00:00
44 lines
898 B
C++
44 lines
898 B
C++
#include "pugixml.hpp"
|
|
|
|
#include <iostream>
|
|
|
|
int main()
|
|
{
|
|
pugi::xml_document doc;
|
|
if (!doc.load_file("xgconsole.xml")) return -1;
|
|
|
|
// tag::code[]
|
|
// Exception is thrown for incorrect query syntax
|
|
try
|
|
{
|
|
doc.select_nodes("//nodes[#true()]");
|
|
}
|
|
catch (const pugi::xpath_exception& e)
|
|
{
|
|
std::cout << "Select failed: " << e.what() << std::endl;
|
|
}
|
|
|
|
// Exception is thrown for incorrect query semantics
|
|
try
|
|
{
|
|
doc.select_nodes("(123)/next");
|
|
}
|
|
catch (const pugi::xpath_exception& e)
|
|
{
|
|
std::cout << "Select failed: " << e.what() << std::endl;
|
|
}
|
|
|
|
// Exception is thrown for query with incorrect return type
|
|
try
|
|
{
|
|
doc.select_nodes("123");
|
|
}
|
|
catch (const pugi::xpath_exception& e)
|
|
{
|
|
std::cout << "Select failed: " << e.what() << std::endl;
|
|
}
|
|
// end::code[]
|
|
}
|
|
|
|
// vim:et
|