RAII writing a nodes start/end tag.  
 More...
#include <zypp-core/base/Xml.h>
|  | 
|  | NON_COPYABLE_BUT_MOVE (Node) | 
|  | 
|  | Node (std::ostream &out_r, std::string name_r, const std::initializer_list< Attr > &attrs_r={}) | 
|  | Ctor taking nodename and attribute list. 
 | 
|  | 
|  | Node (std::ostream &out_r, std::string name_r, Attr attr_r) | 
|  | Convenience ctor for one attribute pair. 
 | 
|  | 
|  | Node (std::ostream &out_r, std::string name_r, OptionalContentType, const std::initializer_list< Attr > &attrs_r={}) | 
|  | Optional content ctor taking nodename and attribute list. 
 | 
|  | 
|  | Node (std::ostream &out_r, std::string name_r, OptionalContentType, Attr attr_r) | 
|  | Optional content Convenience ctor for one attribute pair. 
 | 
|  | 
|  | ~Node () | 
|  | Dtor wrting end tag. 
 | 
|  | 
| Node & | addAttr (const std::initializer_list< Attr > &attrs_r={}) | 
|  | Add additional attributes (requires OptionalContentType) 
 | 
|  | 
| Node & | addAttr (const Attr &attr_r) | 
|  | 
| std::ostream & | operator* () | 
|  | Return the output stream. 
 | 
|  | 
|  | 
| (Note that these are not member symbols.)  | 
| std::ostream & | node (std::ostream &out_r, const std::string &name_r, const std::initializer_list< Node::Attr > &attrs_r={}) | 
|  | Write a leaf node without PCDATA. 
 | 
|  | 
RAII writing a nodes start/end tag. 
{
  Node node( std::cout, 
"node", { 
"attr", 
"val" } ); 
 
  *
node << 
"write nodes body...."}                                                    
std::ostream & node(std::ostream &out_r, const std::string &name_r, Node::Attr attr_r)
std::ostream & node(std::ostream &out_r, const std::string &name_r, const std::initializer_list< Node::Attr > &attrs_r={})
Write a leaf node without PCDATA.
Node(std::ostream &out_r, std::string name_r, const std::initializer_list< Attr > &attrs_r={})
Ctor taking nodename and attribute list.
- Note
- If the optionalContent flag is passed to the ctor, the start node is kept open, until the first call to operator*. The start node is closed before returning the stream.{                                                       }                                                     {                                                         * node <<  "write nodes body...."
}                                                     static constexpr OptionalContentType optionalContent 
- 
If the nodename is empty or starts with an !, a comment is written.
Definition at line 84 of file Xml.h.
◆ Attr
Definition at line 87 of file Xml.h.
 
 
◆ Node() [1/4]
  
  | 
        
          | zypp::xmlout::Node::Node | ( | std::ostream & | out_r, |  
          |  |  | std::string | name_r, |  
          |  |  | const std::initializer_list< Attr > & | attrs_r = {} ) |  | inline | 
 
Ctor taking nodename and attribute list. 
Definition at line 93 of file Xml.h.
 
 
◆ Node() [2/4]
  
  | 
        
          | zypp::xmlout::Node::Node | ( | std::ostream & | out_r, |  
          |  |  | std::string | name_r, |  
          |  |  | Attr | attr_r ) |  | inline | 
 
Convenience ctor for one attribute pair. 
Definition at line 98 of file Xml.h.
 
 
◆ Node() [3/4]
  
  | 
        
          | zypp::xmlout::Node::Node | ( | std::ostream & | out_r, |  
          |  |  | std::string | name_r, |  
          |  |  | OptionalContentType | , |  
          |  |  | const std::initializer_list< Attr > & | attrs_r = {} ) |  | inline | 
 
Optional content ctor taking nodename and attribute list. 
Definition at line 103 of file Xml.h.
 
 
◆ Node() [4/4]
Optional content Convenience ctor for one attribute pair. 
Definition at line 108 of file Xml.h.
 
 
◆ ~Node()
  
  | 
        
          | zypp::xmlout::Node::~Node | ( |  | ) |  |  | inline | 
 
Dtor wrting end tag. 
Definition at line 113 of file Xml.h.
 
 
◆ NON_COPYABLE_BUT_MOVE()
      
        
          | zypp::xmlout::Node::NON_COPYABLE_BUT_MOVE | ( | Node |  | ) |  | 
      
 
 
◆ addAttr() [1/2]
  
  | 
        
          | Node & zypp::xmlout::Node::addAttr | ( | const std::initializer_list< Attr > & | attrs_r = {} | ) |  |  | inline | 
 
 
◆ addAttr() [2/2]
  
  | 
        
          | Node & zypp::xmlout::Node::addAttr | ( | const Attr & | attr_r | ) |  |  | inline | 
 
 
◆ operator*()
  
  | 
        
          | std::ostream & zypp::xmlout::Node::operator* | ( |  | ) |  |  | inline | 
 
Return the output stream. 
Definition at line 146 of file Xml.h.
 
 
◆ printStart()
  
  | 
        
          | void zypp::xmlout::Node::printStart | ( | const std::initializer_list< Attr > & | attrs_r | ) |  |  | inlineprivate | 
 
 
◆ printAttr()
  
  | 
        
          | void zypp::xmlout::Node::printAttr | ( | const std::initializer_list< Attr > & | attrs_r | ) |  |  | inlineprivate | 
 
 
◆ isComment()
  
  | 
        
          | bool zypp::xmlout::Node::isComment | ( |  | ) | const |  | inlineprivate | 
 
 
◆ node()
  
  | 
        
          | std::ostream & node | ( | std::ostream & | out_r, |  
          |  |  | const std::string & | name_r, |  
          |  |  | const std::initializer_list< Node::Attr > & | attrs_r = {} ) |  | related | 
 
Write a leaf node without PCDATA. 
 
Definition at line 198 of file Xml.h.
 
 
◆ optionalContent
Definition at line 90 of file Xml.h.
 
 
◆ _out
  
  | 
        
          | std::reference_wrapper<std::ostream> zypp::xmlout::Node::_out |  | private | 
 
 
◆ _name
  
  | 
        
          | std::string zypp::xmlout::Node::_name |  | private | 
 
 
◆ _hasContent
  
  | 
        
          | bool zypp::xmlout::Node::_hasContent |  | private | 
 
 
The documentation for this class was generated from the following files: