|
libzypp
9.1.2
|
Namespaces | |
| namespace | parse_def_assign |
parseDefAssign exposed details | |
Classes | |
| class | Node |
| xmlTextReader based interface to Reader's current node. More... | |
| struct | ParseDefImplConsume |
| class | ParseDef |
| Define a xml node structure to parse. More... | |
| struct | ParseDefConsume |
| Base class for ParseDef consumer. More... | |
| class | ParseDefConsumeRedirect |
| ParseDef consumer redirecting all events to another consumer. More... | |
| class | ParseDefConsumeCallback |
| ParseDef consumer that invokes callbacks. More... | |
| struct | ParseDefException |
| Common base class for ParseDef exceptions. More... | |
| struct | ParseDefBuildException |
| Exceptions when building a ParseDef tree. More... | |
| struct | ParseDefValidateException |
| Parse exceptions related to the documents node structure. More... | |
| struct | ParseDefDataException |
| Parse exceptions related to the nodes content. More... | |
| struct | ParseDefTraits |
| struct | Validate |
| xmlTextReader document validation. More... | |
| class | Reader |
| xmlTextReader based interface to iterate xml streams. More... | |
| class | XmlString |
xmlChar * wrapper. More... | |
Typedefs | |
| typedef xmlTextReaderMode | ReadState |
| typedef xmlReaderTypes | NodeType |
Functions | |
| std::ostream & | operator<< (std::ostream &str, const ReadState &obj) |
| std::ostream & | operator<< (std::ostream &str, const NodeType &obj) |
| std::ostream & | operator<< (std::ostream &str, const Node &obj) |
| template<class _Data > | |
| void | rnParse (const InputStream &input_r, _Data &data_r) |
Parse xml input_r and store data in data_r. | |
| std::ostream & | operator<< (std::ostream &str, const ParseDef::Impl &obj) |
| std::ostream & | operator<< (std::ostream &str, ParseDef::Mode obj) |
| std::ostream & | operator<< (std::ostream &str, const ParseDef &obj) |
| std::string | escape (const std::string &in_r) |
Escape xml special charaters (& -> &; from IoBind library). | |
| std::string | unescape (const std::string &in_r) |
Unescape xml special charaters (& -> &; from IoBind library) | |
| std::ostream & | operator<< (std::ostream &str, const XmlString &obj) |
| typedef xmlTextReaderMode zypp::xml::ReadState |
Definition at line 30 of file libxmlfwd.h.
| typedef xmlReaderTypes zypp::xml::NodeType |
Definition at line 34 of file libxmlfwd.h.
| std::ostream& zypp::xml::operator<< | ( | std::ostream & | str, |
| const ReadState & | obj | ||
| ) |
Definition at line 29 of file libxmlfwd.cc.
References X.
| std::ostream& zypp::xml::operator<< | ( | std::ostream & | str, |
| const NodeType & | obj | ||
| ) |
Definition at line 50 of file libxmlfwd.cc.
References X.
| std::ostream& zypp::xml::operator<< | ( | std::ostream & | str, |
| const Node & | obj | ||
| ) | [related] |
Definition at line 60 of file Node.cc.
References zypp::xml::Node::prefix(), and X.
| void zypp::xml::rnParse | ( | const InputStream & | input_r, |
| _Data & | data_r | ||
| ) | [inline] |
Parse xml input_r and store data in data_r.
_Data must be defaultconstructible and assignable.
_Data::RootNode must be a xml::ParseDef constructible from _Data&.
| ParseDefException | on parse errors. |
To parse a xml file like this:
You need something like this:
struct XmlData { // data unsigned attr; std::string value; std:list<std::string> names; public: // Convenience parsing to *this. void parse( const Pathname & path_r ) { xml::rnParse( path_r, *this ); } public: // Parser description struct RootNode : public xml::ParseDef { RootNode( XmlData & data ) : ParseDef( "test", MANDTAORY ) , _data( data ) { (*this) ("setup", MANDTAORY, xml::parseDefAssign( data.value ) ( "attr", data.attr ) ) // Each individual list entry is collected locally // and appended to the list after the node is done. ("list", MULTIPLE_OPTIONAL, xml::parseDefAssign( "name", _cname ) >> bind( &RootNode::cdone, this, _1 ) ) ; } void cdone( const xml::Node & node_r ) { _data.push_back( _cname ); _cname.clear(); // prepare for next } private: XmlData & _data; // stored just because notification callbacks are used. std::string _cname; }; }; XmlData xmlData; xmlData.parse( "/tmp/mytest.xml" );
| std::ostream& zypp::xml::operator<< | ( | std::ostream & | str, |
| const ParseDef::Impl & | obj | ||
| ) |
Definition at line 348 of file ParseDef.cc.
References zypp::xml::ParseDef::Impl::_mode, zypp::xml::ParseDef::Impl::_name, and zypp::xml::ParseDef::Impl::_visited.
| std::ostream& zypp::xml::operator<< | ( | std::ostream & | str, |
| ParseDef::Mode | obj | ||
| ) | [related] |
Definition at line 447 of file ParseDef.cc.
References X.
| std::ostream& zypp::xml::operator<< | ( | std::ostream & | str, |
| const ParseDef & | obj | ||
| ) | [related] |
Definition at line 466 of file ParseDef.cc.
References zypp::xml::ParseDef::_pimpl.
| std::string zypp::xml::escape | ( | const std::string & | in_r | ) | [inline] |
Escape xml special charaters (& -> &; from IoBind library).
Definition at line 26 of file XmlEscape.h.
References iobind::parser::xml_escape_parser::escape().
| std::string zypp::xml::unescape | ( | const std::string & | in_r | ) | [inline] |
Unescape xml special charaters (& -> &; from IoBind library)
Definition at line 30 of file XmlEscape.h.
References iobind::parser::xml_escape_parser::unescape().
| std::ostream& zypp::xml::operator<< | ( | std::ostream & | str, |
| const XmlString & | obj | ||
| ) | [related] |
Definition at line 46 of file XmlString.cc.
References zypp::xml::XmlString::c_str().
1.7.6.1