12 #ifndef ZYPP_PARSER_XML_PARSEDEF_H 13 #define ZYPP_PARSER_XML_PARSEDEF_H 17 #include <zypp/base/PtrTypes.h> 28 struct ParseDefConsume;
143 ParseDef(
const std::string & name_r,
Mode mode_r,
const shared_ptr<ParseDefConsume> & target_r );
148 const std::string &
name()
const;
170 ParseDef &
addNode(
const std::string & name_r,
Mode mode_r,
const shared_ptr<ParseDefConsume> & target_r )
177 {
return addNode( subnode_r ); }
180 {
return addNode( name_r, mode_r ); }
183 {
return addNode( name_r, mode_r, target_r ); }
192 void setConsumer(
const shared_ptr<ParseDefConsume> & target_r );
224 ParseDef(
const shared_ptr<Impl> & pimpl_r );
245 #endif // ZYPP_PARSER_XML_PARSEDEF_H
RW_pointer< Impl > _pimpl
Pointer to implementation (shared!)
ParseDef(const std::string &name_r, Mode mode_r)
Define a xml node structure to parse.
ParseDef & operator()(ParseDef &subnode_r)
Add subnode definition.
String related utilities and Regular expression matching.
ParseDef & operator()(const std::string &name_r, Mode mode_r)
void take(Reader &reader_r)
Parse the node.
ParseDef & operator()(const std::string &name_r, Mode mode_r, const shared_ptr< ParseDefConsume > &target_r)
Base class for ParseDef consumer.
ParseDef & addNode(const std::string &name_r, Mode mode_r)
shared_ptr< ParseDefConsume > getConsumer() const
Get data consumer.
ParseDef & addNode(ParseDef &subnode_r)
Add subnode definition.
std::ostream & operator<<(std::ostream &str, const ReadState &obj)
void cancelConsumer()
Unset data consumer.
const std::string & name() const
friend std::ostream & operator<<(std::ostream &str, const ParseDef &obj)
ParseDef operator[](const std::string &name_r)
Get subnode by name.
void setConsumer(const shared_ptr< ParseDefConsume > &target_r)
Set data consumer.
Easy-to use interface to the ZYPP dependency resolver.
ParseDef & addNode(const std::string &name_r, Mode mode_r, const shared_ptr< ParseDefConsume > &target_r)
xmlTextReader based interface to iterate xml streams.