Mercurial > minori
view dep/pugixml/docs/samples/xpath_error.cpp @ 347:a0aa8c8c4307
dep/anitomy: port to use UCS-4 rather than wide strings
rationale: wide strings are not the same on every platform, and
might not even be Unicode. (while they usually are, its possible
that they are not)
I was *going* to change StringToInt to use a string stream, but
outputting to an integer doesn't seem to work at all with UCS-4,
even though it ought to, so I just rolled my own that uses the
arabic digits only.
author | Paper <paper@paper.us.eu.org> |
---|---|
date | Sun, 23 Jun 2024 10:32:09 -0400 |
parents | d10b6c6b432e |
children |
line wrap: on
line source
#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