neoGFX
Cross-platform C++ app/game engine
Loading...
Searching...
No Matches
neolib::xml_node< CharT, Alloc > Class Template Reference

#include <xml.hpp>

Inheritance diagram for neolib::xml_node< CharT, Alloc >:
neolib::xml_cdata< CharT, Alloc > neolib::xml_comment< CharT, Alloc > neolib::xml_declaration< CharT, Alloc > neolib::xml_dtd< CharT, Alloc > neolib::xml_element< CharT, Alloc > neolib::xml_text< CharT, Alloc >

Classes

class  const_iterator
 
class  iterator
 

Public Types

enum  type_e {
  Document = 0x1 , Element = 0x2 , Text = 0x4 , Comment = 0x8 ,
  Declaration = 0x10 , Cdata = 0x20 , Dtd = 0x40 , All = 0xFF
}
 
typedef Alloc allocator_type
 
typedef basic_quick_string< CharTstring
 
typedef xml_node< CharT, allocator_typenode
 
typedef nodenode_ptr
 

Public Member Functions

 xml_node (type_e aType=Document)
 
virtual ~xml_node ()
 
type_e type () const
 
bool empty () const
 
const nodeback () const
 
nodeback ()
 
const_iterator begin (type_e aFilter=All) const
 
const_iterator end (type_e aFilter=All) const
 
iterator begin (type_e aFilter=All)
 
iterator end (type_e aFilter=All)
 
const_iterator find (const string &aName) const
 
std::optional< const_iteratorfind_maybe (const string &aName) const
 
template<typename Exception >
const_iterator find_or_throw (const string &aName) const
 
iterator find (const string &aName)
 
std::optional< iteratorfind_maybe (const string &aName)
 
iterator find_or_append (const string &aName)
 
template<typename Exception >
iterator find_or_throw (const string &aName)
 
void push_back (node_ptr aNode)
 
iterator insert (iterator aIterator, node_ptr aNode)
 
void erase (iterator aIterator)
 
void clear ()
 

Detailed Description

template<typename CharT, typename Alloc = std::allocator<CharT>>
class neolib::xml_node< CharT, Alloc >

Definition at line 58 of file xml.hpp.

Member Typedef Documentation

◆ allocator_type

template<typename CharT , typename Alloc = std::allocator<CharT>>
typedef Alloc neolib::xml_node< CharT, Alloc >::allocator_type

Definition at line 63 of file xml.hpp.

◆ node

template<typename CharT , typename Alloc = std::allocator<CharT>>
typedef xml_node<CharT, allocator_type> neolib::xml_node< CharT, Alloc >::node

Definition at line 65 of file xml.hpp.

◆ node_ptr

template<typename CharT , typename Alloc = std::allocator<CharT>>
typedef node* neolib::xml_node< CharT, Alloc >::node_ptr

Definition at line 66 of file xml.hpp.

◆ string

template<typename CharT , typename Alloc = std::allocator<CharT>>
typedef basic_quick_string<CharT> neolib::xml_node< CharT, Alloc >::string

Definition at line 64 of file xml.hpp.

Member Enumeration Documentation

◆ type_e

template<typename CharT , typename Alloc = std::allocator<CharT>>
enum neolib::xml_node::type_e
Enumerator
Document 
Element 
Text 
Comment 
Declaration 
Cdata 
Dtd 
All 

Definition at line 62 of file xml.hpp.

Constructor & Destructor Documentation

◆ xml_node()

template<typename CharT , typename Alloc = std::allocator<CharT>>
neolib::xml_node< CharT, Alloc >::xml_node ( type_e  aType = Document)
inline

Definition at line 153 of file xml.hpp.

◆ ~xml_node()

template<typename CharT , typename Alloc = std::allocator<CharT>>
virtual neolib::xml_node< CharT, Alloc >::~xml_node ( )
inlinevirtual

Definition at line 154 of file xml.hpp.

Member Function Documentation

◆ back() [1/2]

template<typename CharT , typename Alloc = std::allocator<CharT>>
node & neolib::xml_node< CharT, Alloc >::back ( )
inline

Definition at line 162 of file xml.hpp.

◆ back() [2/2]

template<typename CharT , typename Alloc = std::allocator<CharT>>
const node & neolib::xml_node< CharT, Alloc >::back ( ) const
inline

Definition at line 161 of file xml.hpp.

◆ begin() [1/2]

template<typename CharT , typename Alloc >
xml_node< CharT, Alloc >::iterator neolib::xml_node< CharT, Alloc >::begin ( type_e  aFilter = All)

Definition at line 293 of file xml.inl.

◆ begin() [2/2]

template<typename CharT , typename Alloc >
xml_node< CharT, Alloc >::const_iterator neolib::xml_node< CharT, Alloc >::begin ( type_e  aFilter = All) const

Definition at line 278 of file xml.inl.

◆ clear()

template<typename CharT , typename Alloc = std::allocator<CharT>>
void neolib::xml_node< CharT, Alloc >::clear ( )
inline

Definition at line 195 of file xml.hpp.

◆ empty()

template<typename CharT , typename Alloc = std::allocator<CharT>>
bool neolib::xml_node< CharT, Alloc >::empty ( ) const
inline

Definition at line 160 of file xml.hpp.

◆ end() [1/2]

template<typename CharT , typename Alloc >
xml_node< CharT, Alloc >::iterator neolib::xml_node< CharT, Alloc >::end ( type_e  aFilter = All)

Definition at line 302 of file xml.inl.

◆ end() [2/2]

template<typename CharT , typename Alloc >
xml_node< CharT, Alloc >::const_iterator neolib::xml_node< CharT, Alloc >::end ( type_e  aFilter = All) const

Definition at line 287 of file xml.inl.

◆ erase()

template<typename CharT , typename Alloc = std::allocator<CharT>>
void neolib::xml_node< CharT, Alloc >::erase ( iterator  aIterator)
inline

Definition at line 190 of file xml.hpp.

◆ find() [1/2]

template<typename CharT , typename Alloc >
xml_node< CharT, Alloc >::iterator neolib::xml_node< CharT, Alloc >::find ( const string aName)

Definition at line 327 of file xml.inl.

◆ find() [2/2]

template<typename CharT , typename Alloc >
xml_node< CharT, Alloc >::const_iterator neolib::xml_node< CharT, Alloc >::find ( const string aName) const

Definition at line 308 of file xml.inl.

◆ find_maybe() [1/2]

template<typename CharT , typename Alloc >
std::optional< typename xml_node< CharT, Alloc >::iterator > neolib::xml_node< CharT, Alloc >::find_maybe ( const string aName)

Definition at line 336 of file xml.inl.

◆ find_maybe() [2/2]

template<typename CharT , typename Alloc >
std::optional< typename xml_node< CharT, Alloc >::const_iterator > neolib::xml_node< CharT, Alloc >::find_maybe ( const string aName) const

Definition at line 317 of file xml.inl.

◆ find_or_append()

template<typename CharT , typename Alloc >
xml_node< CharT, Alloc >::iterator neolib::xml_node< CharT, Alloc >::find_or_append ( const string aName)

Definition at line 346 of file xml.inl.

◆ find_or_throw() [1/2]

template<typename CharT , typename Alloc >
template<typename Exception >
xml_node< CharT, Alloc >::iterator neolib::xml_node< CharT, Alloc >::find_or_throw ( const string aName)

Definition at line 368 of file xml.inl.

◆ find_or_throw() [2/2]

template<typename CharT , typename Alloc >
template<typename Exception >
xml_node< CharT, Alloc >::const_iterator neolib::xml_node< CharT, Alloc >::find_or_throw ( const string aName) const

Definition at line 358 of file xml.inl.

◆ insert()

template<typename CharT , typename Alloc = std::allocator<CharT>>
iterator neolib::xml_node< CharT, Alloc >::insert ( iterator  aIterator,
node_ptr  aNode 
)
inline

Definition at line 183 of file xml.hpp.

◆ push_back()

template<typename CharT , typename Alloc = std::allocator<CharT>>
void neolib::xml_node< CharT, Alloc >::push_back ( node_ptr  aNode)
inline

Definition at line 177 of file xml.hpp.

◆ type()

template<typename CharT , typename Alloc = std::allocator<CharT>>
type_e neolib::xml_node< CharT, Alloc >::type ( ) const
inline

Definition at line 158 of file xml.hpp.


The documentation for this class was generated from the following files: