libzypp 8.13.6
|
ParseDef implementation. More...
Public Types | |
typedef shared_ptr< Impl > | ImplPtr |
typedef std::map< std::string, ImplPtr > | SubNodes |
Public Member Functions | |
Impl (const std::string &name_r, Mode mode_r, const shared_ptr< ParseDefConsume > &target_r=shared_ptr< ParseDefConsume >()) | |
~Impl () | |
bool | isOptional () const |
bool | isMandatory () const |
bool | singleDef () const |
bool | multiDef () const |
void | addNode (const ImplPtr &subnode_r) |
ImplPtr | getNode (const std::string &name_r) const |
void | take (Reader &reader_r) |
Public Attributes | |
std::string | _name |
Mode | _mode |
DefaultIntegral< unsigned, 0 > | _visited |
Impl * | _parent |
SubNodes | _subnodes |
ParseDefImplConsume | _callback |
DefaultIntegral< int,-1 > | _parseDepth |
Private Member Functions | |
bool | skipNode (Reader &reader_r) |
Skip the current node. | |
std::string | exstr (const std::string &what_r, const Impl &impl_r) const |
std::string | exstr (const std::string &what_r, const Impl &impl_r, const Reader &reader_r) const |
Friends | |
std::ostream & | operator<< (std::ostream &str, const ParseDef::Impl &obj) |
ParseDef implementation.
Definition at line 94 of file ParseDef.cc.
typedef shared_ptr<Impl> zypp::xml::ParseDef::Impl::ImplPtr |
Definition at line 98 of file ParseDef.cc.
typedef std::map<std::string, ImplPtr> zypp::xml::ParseDef::Impl::SubNodes |
Definition at line 99 of file ParseDef.cc.
zypp::xml::ParseDef::Impl::Impl | ( | const std::string & | name_r, |
Mode | mode_r, | ||
const shared_ptr< ParseDefConsume > & | target_r = shared_ptr<ParseDefConsume>() |
||
) | [inline] |
Definition at line 102 of file ParseDef.cc.
References _callback, and zypp::xml::ParseDefConsumeRedirect::setRedirect().
zypp::xml::ParseDef::Impl::~Impl | ( | ) | [inline] |
Definition at line 111 of file ParseDef.cc.
References _subnodes.
bool zypp::xml::ParseDef::Impl::isOptional | ( | ) | const [inline] |
Definition at line 119 of file ParseDef.cc.
References _mode, zypp::xml::ParseDefTraits::BIT_OPTIONAL, and zypp::bit::BitField< _IntT >::isEqual().
bool zypp::xml::ParseDef::Impl::isMandatory | ( | ) | const [inline] |
Definition at line 122 of file ParseDef.cc.
References _mode, zypp::xml::ParseDefTraits::BIT_MANDTAORY, and zypp::bit::BitField< _IntT >::isEqual().
bool zypp::xml::ParseDef::Impl::singleDef | ( | ) | const [inline] |
Definition at line 125 of file ParseDef.cc.
References _mode, zypp::xml::ParseDefTraits::BIT_ONCE, and zypp::bit::BitField< _IntT >::isEqual().
bool zypp::xml::ParseDef::Impl::multiDef | ( | ) | const [inline] |
Definition at line 128 of file ParseDef.cc.
References _mode, zypp::xml::ParseDefTraits::BIT_MULTIPLE, and zypp::bit::BitField< _IntT >::isEqual().
void zypp::xml::ParseDef::Impl::addNode | ( | const ImplPtr & | subnode_r | ) |
Definition at line 186 of file ParseDef.cc.
References _subnodes, exstr(), and ZYPP_THROW.
ImplPtr zypp::xml::ParseDef::Impl::getNode | ( | const std::string & | name_r | ) | const [inline] |
Definition at line 134 of file ParseDef.cc.
References _subnodes.
void zypp::xml::ParseDef::Impl::take | ( | Reader & | reader_r | ) |
Definition at line 207 of file ParseDef.cc.
References zypp::xml::ParseDef::_debug, zypp::xml::ParseDef::multiDef(), zypp::xml::Reader::nextNode(), WAR, and ZYPP_THROW.
bool zypp::xml::ParseDef::Impl::skipNode | ( | xml::Reader & | reader_r | ) | [private] |
Skip the current node.
<node />
). ParseDefValidateException | if no matching end node found. |
Definition at line 329 of file ParseDef.cc.
References zypp::str::form(), zypp::xml::Reader::seekToEndNode(), and ZYPP_THROW.
std::string zypp::xml::ParseDef::Impl::exstr | ( | const std::string & | what_r, |
const Impl & | impl_r | ||
) | const [inline, private] |
Definition at line 155 of file ParseDef.cc.
Referenced by addNode().
std::string zypp::xml::ParseDef::Impl::exstr | ( | const std::string & | what_r, |
const Impl & | impl_r, | ||
const Reader & | reader_r | ||
) | const [inline, private] |
Definition at line 161 of file ParseDef.cc.
std::ostream& operator<< | ( | std::ostream & | str, |
const ParseDef::Impl & | obj | ||
) | [friend] |
Definition at line 348 of file ParseDef.cc.
std::string zypp::xml::ParseDef::Impl::_name |
Definition at line 169 of file ParseDef.cc.
Referenced by zypp::xml::operator<<().
Definition at line 170 of file ParseDef.cc.
Referenced by isMandatory(), isOptional(), multiDef(), zypp::xml::operator<<(), and singleDef().
DefaultIntegral<unsigned,0> zypp::xml::ParseDef::Impl::_visited |
Definition at line 171 of file ParseDef.cc.
Referenced by zypp::xml::operator<<().
Definition at line 173 of file ParseDef.cc.
Definition at line 174 of file ParseDef.cc.
Definition at line 175 of file ParseDef.cc.
Referenced by Impl().
Definition at line 177 of file ParseDef.cc.