CARLA
Public Types | Public Member Functions | Protected Types | Protected Attributes | Friends | List of all members
pugi::xml_node Class Reference

#include <pugixml.hpp>

+ Inheritance diagram for pugi::xml_node:
+ Collaboration diagram for pugi::xml_node:

Public Types

typedef xml_attribute_iterator attribute_iterator
 
typedef xml_node_iterator iterator
 

Public Member Functions

xml_attribute append_attribute (const char_t *name)
 
xml_parse_result append_buffer (const void *contents, size_t size, unsigned int options=parse_default, xml_encoding encoding=encoding_auto)
 
xml_node append_child (xml_node_type type=node_element)
 
xml_node append_child (const char_t *name)
 
xml_attribute append_copy (const xml_attribute &proto)
 
xml_node append_copy (const xml_node &proto)
 
xml_node append_move (const xml_node &moved)
 
xml_attribute attribute (const char_t *name) const
 
xml_attribute attribute (const char_t *name, xml_attribute &hint) const
 
xml_object_range< xml_attribute_iteratorattributes () const
 
attribute_iterator attributes_begin () const
 
attribute_iterator attributes_end () const
 
iterator begin () const
 
xml_node child (const char_t *name) const
 
const char_tchild_value () const
 
const char_tchild_value (const char_t *name) const
 
xml_object_range< xml_node_iteratorchildren () const
 
xml_object_range< xml_named_node_iteratorchildren (const char_t *name) const
 
bool empty () const
 
iterator end () const
 
template<typename Predicate >
xml_attribute find_attribute (Predicate pred) const
 
template<typename Predicate >
xml_node find_child (Predicate pred) const
 
xml_node find_child_by_attribute (const char_t *name, const char_t *attr_name, const char_t *attr_value) const
 
xml_node find_child_by_attribute (const char_t *attr_name, const char_t *attr_value) const
 
template<typename Predicate >
xml_node find_node (Predicate pred) const
 
xml_attribute first_attribute () const
 
xml_node first_child () const
 
xml_node first_element_by_path (const char_t *path, char_t delimiter='/') const
 
size_t hash_value () const
 
xml_attribute insert_attribute_after (const char_t *name, const xml_attribute &attr)
 
xml_attribute insert_attribute_before (const char_t *name, const xml_attribute &attr)
 
xml_node insert_child_after (xml_node_type type, const xml_node &node)
 
xml_node insert_child_after (const char_t *name, const xml_node &node)
 
xml_node insert_child_before (xml_node_type type, const xml_node &node)
 
xml_node insert_child_before (const char_t *name, const xml_node &node)
 
xml_attribute insert_copy_after (const xml_attribute &proto, const xml_attribute &attr)
 
xml_node insert_copy_after (const xml_node &proto, const xml_node &node)
 
xml_attribute insert_copy_before (const xml_attribute &proto, const xml_attribute &attr)
 
xml_node insert_copy_before (const xml_node &proto, const xml_node &node)
 
xml_node insert_move_after (const xml_node &moved, const xml_node &node)
 
xml_node insert_move_before (const xml_node &moved, const xml_node &node)
 
xml_node_structinternal_object () const
 
xml_attribute last_attribute () const
 
xml_node last_child () const
 
const char_tname () const
 
xml_node next_sibling () const
 
xml_node next_sibling (const char_t *name) const
 
ptrdiff_t offset_debug () const
 
 operator unspecified_bool_type () const
 
bool operator! () const
 
bool operator!= (const xml_node &r) const
 
bool operator< (const xml_node &r) const
 
bool operator<= (const xml_node &r) const
 
bool operator== (const xml_node &r) const
 
bool operator> (const xml_node &r) const
 
bool operator>= (const xml_node &r) const
 
xml_node parent () const
 
string_t path (char_t delimiter='/') const
 
xml_attribute prepend_attribute (const char_t *name)
 
xml_node prepend_child (xml_node_type type=node_element)
 
xml_node prepend_child (const char_t *name)
 
xml_attribute prepend_copy (const xml_attribute &proto)
 
xml_node prepend_copy (const xml_node &proto)
 
xml_node prepend_move (const xml_node &moved)
 
xml_node previous_sibling () const
 
xml_node previous_sibling (const char_t *name) const
 
void print (xml_writer &writer, const char_t *indent=PUGIXML_TEXT("\), unsigned int flags=format_default, xml_encoding encoding=encoding_auto, unsigned int depth=0) const
 
void print (std::basic_ostream< char, std::char_traits< char > > &os, const char_t *indent=PUGIXML_TEXT("\), unsigned int flags=format_default, xml_encoding encoding=encoding_auto, unsigned int depth=0) const
 
void print (std::basic_ostream< wchar_t, std::char_traits< wchar_t > > &os, const char_t *indent=PUGIXML_TEXT("\), unsigned int flags=format_default, unsigned int depth=0) const
 
bool remove_attribute (const xml_attribute &a)
 
bool remove_attribute (const char_t *name)
 
bool remove_child (const xml_node &n)
 
bool remove_child (const char_t *name)
 
xml_node root () const
 
xpath_node select_node (const char_t *query, xpath_variable_set *variables=0) const
 
xpath_node select_node (const xpath_query &query) const
 
xpath_node_set select_nodes (const char_t *query, xpath_variable_set *variables=0) const
 
xpath_node_set select_nodes (const xpath_query &query) const
 
PUGIXML_DEPRECATED xpath_node select_single_node (const char_t *query, xpath_variable_set *variables=0) const
 
PUGIXML_DEPRECATED xpath_node select_single_node (const xpath_query &query) const
 
bool set_name (const char_t *rhs)
 
bool set_value (const char_t *rhs)
 
xml_text text () const
 
bool traverse (xml_tree_walker &walker)
 
xml_node_type type () const
 
const char_tvalue () const
 
 xml_node ()
 
 xml_node (xml_node_struct *p)
 

Protected Types

typedef void(* unspecified_bool_type) (xml_node ***)
 

Protected Attributes

xml_node_struct_root
 

Friends

class xml_attribute_iterator
 
class xml_named_node_iterator
 
class xml_node_iterator
 

Detailed Description

Definition at line 450 of file pugixml.hpp.

Member Typedef Documentation

◆ attribute_iterator

Definition at line 678 of file pugixml.hpp.

◆ iterator

Definition at line 672 of file pugixml.hpp.

◆ unspecified_bool_type

typedef void(* pugi::xml_node::unspecified_bool_type) (xml_node ***)
protected

Definition at line 459 of file pugixml.hpp.

Constructor & Destructor Documentation

◆ xml_node() [1/2]

PUGI__FN pugi::xml_node::xml_node ( )

◆ xml_node() [2/2]

PUGI__FN pugi::xml_node::xml_node ( xml_node_struct p)
explicit

Definition at line 5387 of file pugixml.cpp.

Member Function Documentation

◆ append_attribute()

PUGI__FN xml_attribute pugi::xml_node::append_attribute ( const char_t name)

Definition at line 5652 of file pugixml.cpp.

References pugi::xml_attribute::_attr, _root, allocate_attribute(), allow_insert_attribute(), append_attribute(), get_allocator(), pugi::xml_attribute::set_name(), and type().

+ Here is the call graph for this function:

◆ append_buffer()

PUGI__FN xml_parse_result pugi::xml_node::append_buffer ( const void *  contents,
size_t  size,
unsigned int  options = parse_default,
xml_encoding  encoding = encoding_auto 
)

Definition at line 6073 of file pugixml.cpp.

References _root, allow_insert_child(), get_document(), load_buffer_impl(), make_parse_result(), pugi::node_element, pugi::status_append_invalid_root, pugi::status_out_of_memory, type(), and xml_memory_page_contents_shared_mask.

+ Here is the call graph for this function:

◆ append_child() [1/2]

PUGI__FN xml_node pugi::xml_node::append_child ( xml_node_type  type = node_element)

Definition at line 5792 of file pugixml.cpp.

References _root, allocate_node(), allow_insert_child(), append_node(), get_allocator(), pugi::node_declaration, PUGIXML_TEXT, set_name(), type(), and xml_node().

Referenced by append_child().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ append_child() [2/2]

PUGI__FN xml_node pugi::xml_node::append_child ( const char_t name)

Definition at line 5862 of file pugixml.cpp.

References append_child(), pugi::node_element, and set_name().

+ Here is the call graph for this function:

◆ append_copy() [1/2]

PUGI__FN xml_attribute pugi::xml_node::append_copy ( const xml_attribute proto)

Definition at line 5722 of file pugixml.cpp.

References pugi::xml_attribute::_attr, _root, allocate_attribute(), allow_insert_attribute(), append_attribute(), get_allocator(), node_copy_attribute(), and type().

Referenced by pugi::xml_document::reset().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ append_copy() [2/2]

PUGI__FN xml_node pugi::xml_node::append_copy ( const xml_node proto)

Definition at line 5898 of file pugixml.cpp.

References _root, allocate_node(), allow_insert_child(), append_node(), get_allocator(), node_copy_tree(), type(), and xml_node().

+ Here is the call graph for this function:

◆ append_move()

PUGI__FN xml_node pugi::xml_node::append_move ( const xml_node moved)

Definition at line 5968 of file pugixml.cpp.

References _root, allow_move(), append_node(), get_allocator(), get_document(), remove_node(), xml_memory_page_contents_shared_mask, and xml_node().

+ Here is the call graph for this function:

◆ attribute() [1/2]

PUGI__FN xml_attribute pugi::xml_node::attribute ( const char_t name) const

Definition at line 5500 of file pugixml.cpp.

References _root, pugi::xml_node_struct::first_attribute, pugi::xml_attribute_struct::next_attribute, and strequal().

Referenced by carla::opendrive::parser::ControllerParser::Parse(), carla::opendrive::parser::GeometryParser::Parse(), carla::opendrive::parser::LaneParser::Parse(), carla::opendrive::parser::SignalParser::Parse(), carla::opendrive::parser::ObjectParser::Parse(), carla::opendrive::parser::RoadParser::Parse(), carla::opendrive::parser::ParseLanes(), remove_attribute(), test_geometry(), test_junctions(), and test_road_elevation().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ attribute() [2/2]

PUGI__FN xml_attribute pugi::xml_node::attribute ( const char_t name,
xml_attribute hint 
) const

Definition at line 5536 of file pugixml.cpp.

References pugi::xml_attribute::_attr, _root, pugi::xml_node_struct::first_attribute, is_attribute_of(), pugi::xml_attribute_struct::next_attribute, and strequal().

+ Here is the call graph for this function:

◆ attributes()

PUGI__FN xml_object_range< xml_attribute_iterator > pugi::xml_node::attributes ( ) const

Definition at line 5435 of file pugixml.cpp.

References attributes_begin(), and attributes_end().

+ Here is the call graph for this function:

◆ attributes_begin()

PUGI__FN xml_node::attribute_iterator pugi::xml_node::attributes_begin ( ) const

Definition at line 5415 of file pugixml.cpp.

References _root, and pugi::xml_node_struct::first_attribute.

Referenced by attributes().

+ Here is the caller graph for this function:

◆ attributes_end()

PUGI__FN xml_node::attribute_iterator pugi::xml_node::attributes_end ( ) const

Definition at line 5420 of file pugixml.cpp.

References _root.

Referenced by attributes().

+ Here is the caller graph for this function:

◆ begin()

PUGI__FN xml_node::iterator pugi::xml_node::begin ( ) const

Definition at line 5405 of file pugixml.cpp.

References _root, and pugi::xml_node_struct::first_child.

Referenced by children(), convert_string_to_number_scratch(), xpath_ast_node::eval_string(), xpath_string::from_heap(), get_variable_scratch(), min_element(), xpath_lexer_string::operator==(), partition3(), sort(), unique(), and xpath_first().

+ Here is the caller graph for this function:

◆ child()

PUGI__FN xml_node pugi::xml_node::child ( const char_t name) const

◆ child_value() [1/2]

PUGI__FN const char_t * pugi::xml_node::child_value ( ) const

Definition at line 5592 of file pugixml.cpp.

References _root, pugi::xml_node_struct::first_child, is_text_node(), pugi::xml_node_struct::next_sibling, pugi::node_element, PUGI__NODETYPE, PUGIXML_TEXT, and pugi::xml_node_struct::value.

Referenced by child_value(), and carla::opendrive::parser::GeoReferenceParser::Parse().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ child_value() [2/2]

PUGI__FN const char_t * pugi::xml_node::child_value ( const char_t name) const

Definition at line 5607 of file pugixml.cpp.

References child(), and child_value().

+ Here is the call graph for this function:

◆ children() [1/2]

PUGI__FN xml_object_range< xml_node_iterator > pugi::xml_node::children ( ) const

Definition at line 5425 of file pugixml.cpp.

References begin(), and end().

Referenced by carla::opendrive::parser::ControllerParser::Parse(), carla::opendrive::parser::GeometryParser::Parse(), carla::opendrive::parser::SignalParser::Parse(), carla::opendrive::parser::LaneParser::Parse(), carla::opendrive::parser::JunctionParser::Parse(), carla::opendrive::parser::ObjectParser::Parse(), carla::opendrive::parser::ProfilesParser::Parse(), carla::opendrive::parser::RoadParser::Parse(), carla::opendrive::parser::ParseLanes(), test_geometry(), test_junctions(), test_road_elevation(), and test_roads().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ children() [2/2]

PUGI__FN xml_object_range< xml_named_node_iterator > pugi::xml_node::children ( const char_t name) const

Definition at line 5430 of file pugixml.cpp.

References _root, child(), and xml_named_node_iterator.

+ Here is the call graph for this function:

◆ empty()

PUGI__FN bool pugi::xml_node::empty ( ) const

Definition at line 5470 of file pugixml.cpp.

References _root.

◆ end()

PUGI__FN xml_node::iterator pugi::xml_node::end ( ) const

Definition at line 5410 of file pugixml.cpp.

References _root.

Referenced by children(), xpath_ast_node::eval_string(), insertion_sort(), min_element(), partition3(), and xpath_get_order().

+ Here is the caller graph for this function:

◆ find_attribute()

template<typename Predicate >
xml_attribute pugi::xml_node::find_attribute ( Predicate  pred) const
inline

Definition at line 585 of file pugixml.hpp.

References pugi::xml_attribute::next_attribute().

Referenced by namespace_uri().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ find_child()

template<typename Predicate >
xml_node pugi::xml_node::find_child ( Predicate  pred) const
inline

Definition at line 597 of file pugixml.hpp.

References next_sibling().

+ Here is the call graph for this function:

◆ find_child_by_attribute() [1/2]

PUGI__FN xml_node pugi::xml_node::find_child_by_attribute ( const char_t name,
const char_t attr_name,
const char_t attr_value 
) const

Definition at line 6108 of file pugixml.cpp.

References _root, pugi::xml_node_struct::first_child, pugi::xml_attribute_struct::next_attribute, pugi::xml_node_struct::next_sibling, PUGIXML_TEXT, strequal(), and xml_node().

+ Here is the call graph for this function:

◆ find_child_by_attribute() [2/2]

PUGI__FN xml_node pugi::xml_node::find_child_by_attribute ( const char_t attr_name,
const char_t attr_value 
) const

Definition at line 6123 of file pugixml.cpp.

References _root, pugi::xml_node_struct::first_child, pugi::xml_attribute_struct::next_attribute, pugi::xml_node_struct::next_sibling, PUGIXML_TEXT, strequal(), and xml_node().

+ Here is the call graph for this function:

◆ find_node()

template<typename Predicate >
xml_node pugi::xml_node::find_node ( Predicate  pred) const
inline

Definition at line 609 of file pugixml.hpp.

References _root, pugi::encoding_auto, first_child(), next_sibling(), parent(), PUGIXML_DEPRECATED, and PUGIXML_TEXT.

+ Here is the call graph for this function:

◆ first_attribute()

PUGI__FN xml_attribute pugi::xml_node::first_attribute ( ) const

Definition at line 5612 of file pugixml.cpp.

References _root, and pugi::xml_node_struct::first_attribute.

◆ first_child()

PUGI__FN xml_node pugi::xml_node::first_child ( ) const

Definition at line 5622 of file pugixml.cpp.

References _root, pugi::xml_node_struct::first_child, and xml_node().

Referenced by find_node(), carla::opendrive::parser::GeometryParser::Parse(), and pugi::xml_document::reset().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ first_element_by_path()

PUGI__FN xml_node pugi::xml_node::first_element_by_path ( const char_t path,
char_t  delimiter = '/' 
) const

Definition at line 6171 of file pugixml.cpp.

References _root, pugi::xml_node_struct::first_child, first_element_by_path(), pugi::xml_node_struct::next_sibling, parent(), root(), strequalrange(), and xml_node().

Referenced by first_element_by_path().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ hash_value()

PUGI__FN size_t pugi::xml_node::hash_value ( ) const

Definition at line 6265 of file pugixml.cpp.

References _root.

◆ insert_attribute_after()

PUGI__FN xml_attribute pugi::xml_node::insert_attribute_after ( const char_t name,
const xml_attribute attr 
)

Definition at line 5686 of file pugixml.cpp.

References pugi::xml_attribute::_attr, _root, allocate_attribute(), allow_insert_attribute(), get_allocator(), insert_attribute_after(), is_attribute_of(), pugi::xml_attribute::set_name(), and type().

+ Here is the call graph for this function:

◆ insert_attribute_before()

PUGI__FN xml_attribute pugi::xml_node::insert_attribute_before ( const char_t name,
const xml_attribute attr 
)

Definition at line 5704 of file pugixml.cpp.

References pugi::xml_attribute::_attr, _root, allocate_attribute(), allow_insert_attribute(), get_allocator(), insert_attribute_before(), is_attribute_of(), pugi::xml_attribute::set_name(), and type().

+ Here is the call graph for this function:

◆ insert_child_after() [1/2]

PUGI__FN xml_node pugi::xml_node::insert_child_after ( xml_node_type  type,
const xml_node node 
)

Definition at line 5844 of file pugixml.cpp.

References _root, allocate_node(), allow_insert_child(), get_allocator(), insert_node_after(), pugi::node_declaration, pugi::xml_node_struct::parent, PUGIXML_TEXT, set_name(), type(), and xml_node().

Referenced by insert_child_after().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ insert_child_after() [2/2]

PUGI__FN xml_node pugi::xml_node::insert_child_after ( const char_t name,
const xml_node node 
)

Definition at line 5880 of file pugixml.cpp.

References insert_child_after(), pugi::node_element, and set_name().

+ Here is the call graph for this function:

◆ insert_child_before() [1/2]

PUGI__FN xml_node pugi::xml_node::insert_child_before ( xml_node_type  type,
const xml_node node 
)

Definition at line 5826 of file pugixml.cpp.

References _root, allocate_node(), allow_insert_child(), get_allocator(), insert_node_before(), pugi::node_declaration, pugi::xml_node_struct::parent, PUGIXML_TEXT, set_name(), type(), and xml_node().

Referenced by insert_child_before().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ insert_child_before() [2/2]

PUGI__FN xml_node pugi::xml_node::insert_child_before ( const char_t name,
const xml_node node 
)

Definition at line 5889 of file pugixml.cpp.

References insert_child_before(), pugi::node_element, and set_name().

+ Here is the call graph for this function:

◆ insert_copy_after() [1/2]

PUGI__FN xml_attribute pugi::xml_node::insert_copy_after ( const xml_attribute proto,
const xml_attribute attr 
)

Definition at line 5756 of file pugixml.cpp.

References pugi::xml_attribute::_attr, _root, allocate_attribute(), allow_insert_attribute(), get_allocator(), insert_attribute_after(), is_attribute_of(), node_copy_attribute(), and type().

+ Here is the call graph for this function:

◆ insert_copy_after() [2/2]

PUGI__FN xml_node pugi::xml_node::insert_copy_after ( const xml_node proto,
const xml_node node 
)

Definition at line 5932 of file pugixml.cpp.

References _root, allocate_node(), allow_insert_child(), get_allocator(), insert_node_after(), node_copy_tree(), pugi::xml_node_struct::parent, type(), and xml_node().

+ Here is the call graph for this function:

◆ insert_copy_before() [1/2]

PUGI__FN xml_attribute pugi::xml_node::insert_copy_before ( const xml_attribute proto,
const xml_attribute attr 
)

Definition at line 5774 of file pugixml.cpp.

References pugi::xml_attribute::_attr, _root, allocate_attribute(), allow_insert_attribute(), get_allocator(), insert_attribute_before(), is_attribute_of(), node_copy_attribute(), and type().

+ Here is the call graph for this function:

◆ insert_copy_before() [2/2]

PUGI__FN xml_node pugi::xml_node::insert_copy_before ( const xml_node proto,
const xml_node node 
)

Definition at line 5950 of file pugixml.cpp.

References _root, allocate_node(), allow_insert_child(), get_allocator(), insert_node_before(), node_copy_tree(), pugi::xml_node_struct::parent, type(), and xml_node().

+ Here is the call graph for this function:

◆ insert_move_after()

PUGI__FN xml_node pugi::xml_node::insert_move_after ( const xml_node moved,
const xml_node node 
)

Definition at line 6000 of file pugixml.cpp.

References _root, allow_move(), get_allocator(), get_document(), insert_node_after(), pugi::xml_node_struct::parent, remove_node(), xml_memory_page_contents_shared_mask, and xml_node().

+ Here is the call graph for this function:

◆ insert_move_before()

PUGI__FN xml_node pugi::xml_node::insert_move_before ( const xml_node moved,
const xml_node node 
)

Definition at line 6018 of file pugixml.cpp.

References _root, allow_move(), get_allocator(), get_document(), insert_node_before(), pugi::xml_node_struct::parent, remove_node(), xml_memory_page_contents_shared_mask, and xml_node().

+ Here is the call graph for this function:

◆ internal_object()

PUGI__FN xml_node_struct * pugi::xml_node::internal_object ( ) const

Definition at line 6270 of file pugixml.cpp.

References _root.

◆ last_attribute()

PUGI__FN xml_attribute pugi::xml_node::last_attribute ( ) const

Definition at line 5617 of file pugixml.cpp.

References _root, pugi::xml_node_struct::first_attribute, and pugi::xml_attribute_struct::prev_attribute_c.

Referenced by pugi::xml_attribute_iterator::operator--().

+ Here is the caller graph for this function:

◆ last_child()

PUGI__FN xml_node pugi::xml_node::last_child ( ) const

Definition at line 5627 of file pugixml.cpp.

References _root, pugi::xml_node_struct::first_child, pugi::xml_node_struct::prev_sibling_c, and xml_node().

Referenced by pugi::xml_node_iterator::operator--(), and pugi::xml_named_node_iterator::operator--().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ name()

PUGI__FN const char_t * pugi::xml_node::name ( ) const

Definition at line 5475 of file pugixml.cpp.

References _root, pugi::xml_node_struct::name, and PUGIXML_TEXT.

Referenced by local_name(), namespace_uri_predicate::namespace_uri_predicate(), new_xpath_variable(), namespace_uri_predicate::operator()(), pugi::xml_named_node_iterator::operator--(), carla::opendrive::parser::GeometryParser::Parse(), xpath_parser::parse_primary_expression(), and xpath_ast_node::step_push().

+ Here is the caller graph for this function:

◆ next_sibling() [1/2]

PUGI__FN xml_node pugi::xml_node::next_sibling ( ) const

Definition at line 5521 of file pugixml.cpp.

References _root, pugi::xml_node_struct::next_sibling, and xml_node().

Referenced by carla::opendrive::parser::AddValidity(), find_child(), find_node(), pugi::xml_named_node_iterator::operator++(), carla::opendrive::parser::ControllerParser::Parse(), carla::opendrive::parser::SignalParser::Parse(), and pugi::xml_document::reset().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ next_sibling() [2/2]

PUGI__FN xml_node pugi::xml_node::next_sibling ( const char_t name) const

Definition at line 5511 of file pugixml.cpp.

References _root, pugi::xml_node_struct::next_sibling, strequal(), and xml_node().

+ Here is the call graph for this function:

◆ offset_debug()

PUGI__FN ptrdiff_t pugi::xml_node::offset_debug ( ) const

◆ operator unspecified_bool_type()

PUGI__FN pugi::xml_node::operator xml_node::unspecified_bool_type ( ) const

Definition at line 5395 of file pugixml.cpp.

References _root, and pugi::unspecified_bool_xml_node().

+ Here is the call graph for this function:

◆ operator!()

PUGI__FN bool pugi::xml_node::operator! ( ) const

Definition at line 5400 of file pugixml.cpp.

References _root.

◆ operator!=()

PUGI__FN bool pugi::xml_node::operator!= ( const xml_node r) const

Definition at line 5445 of file pugixml.cpp.

References _root.

◆ operator<()

PUGI__FN bool pugi::xml_node::operator< ( const xml_node r) const

Definition at line 5450 of file pugixml.cpp.

References _root.

◆ operator<=()

PUGI__FN bool pugi::xml_node::operator<= ( const xml_node r) const

Definition at line 5460 of file pugixml.cpp.

References _root.

◆ operator==()

PUGI__FN bool pugi::xml_node::operator== ( const xml_node r) const

Definition at line 5440 of file pugixml.cpp.

References _root.

◆ operator>()

PUGI__FN bool pugi::xml_node::operator> ( const xml_node r) const

Definition at line 5455 of file pugixml.cpp.

References _root.

◆ operator>=()

PUGI__FN bool pugi::xml_node::operator>= ( const xml_node r) const

Definition at line 5465 of file pugixml.cpp.

References _root.

◆ parent()

PUGI__FN xml_node pugi::xml_node::parent ( ) const

Definition at line 5577 of file pugixml.cpp.

References _root, pugi::xml_node_struct::parent, and xml_node().

Referenced by find_node(), first_element_by_path(), namespace_uri(), node_is_ancestor(), and pugi::xpath_node::parent().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ path()

PUGI__FN string_t pugi::xml_node::path ( char_t  delimiter = '/') const

Definition at line 6136 of file pugixml.cpp.

References _root, pugi::xml_node_struct::parent, and strlength().

+ Here is the call graph for this function:

◆ prepend_attribute()

PUGI__FN xml_attribute pugi::xml_node::prepend_attribute ( const char_t name)

Definition at line 5669 of file pugixml.cpp.

References pugi::xml_attribute::_attr, _root, allocate_attribute(), allow_insert_attribute(), get_allocator(), prepend_attribute(), pugi::xml_attribute::set_name(), and type().

+ Here is the call graph for this function:

◆ prepend_child() [1/2]

PUGI__FN xml_node pugi::xml_node::prepend_child ( xml_node_type  type = node_element)

Definition at line 5809 of file pugixml.cpp.

References _root, allocate_node(), allow_insert_child(), get_allocator(), pugi::node_declaration, prepend_node(), PUGIXML_TEXT, set_name(), type(), and xml_node().

Referenced by prepend_child().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ prepend_child() [2/2]

PUGI__FN xml_node pugi::xml_node::prepend_child ( const char_t name)

Definition at line 5871 of file pugixml.cpp.

References pugi::node_element, prepend_child(), and set_name().

+ Here is the call graph for this function:

◆ prepend_copy() [1/2]

PUGI__FN xml_attribute pugi::xml_node::prepend_copy ( const xml_attribute proto)

Definition at line 5739 of file pugixml.cpp.

References pugi::xml_attribute::_attr, _root, allocate_attribute(), allow_insert_attribute(), get_allocator(), node_copy_attribute(), prepend_attribute(), and type().

+ Here is the call graph for this function:

◆ prepend_copy() [2/2]

PUGI__FN xml_node pugi::xml_node::prepend_copy ( const xml_node proto)

Definition at line 5915 of file pugixml.cpp.

References _root, allocate_node(), allow_insert_child(), get_allocator(), node_copy_tree(), prepend_node(), type(), and xml_node().

+ Here is the call graph for this function:

◆ prepend_move()

PUGI__FN xml_node pugi::xml_node::prepend_move ( const xml_node moved)

Definition at line 5984 of file pugixml.cpp.

References _root, allow_move(), get_allocator(), get_document(), prepend_node(), remove_node(), xml_memory_page_contents_shared_mask, and xml_node().

+ Here is the call graph for this function:

◆ previous_sibling() [1/2]

PUGI__FN xml_node pugi::xml_node::previous_sibling ( ) const

Definition at line 5569 of file pugixml.cpp.

References _root, pugi::xml_node_struct::next_sibling, pugi::xml_node_struct::prev_sibling_c, and xml_node().

Referenced by pugi::xml_node_iterator::operator--(), and pugi::xml_named_node_iterator::operator--().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ previous_sibling() [2/2]

PUGI__FN xml_node pugi::xml_node::previous_sibling ( const char_t name) const

Definition at line 5526 of file pugixml.cpp.

References _root, pugi::xml_node_struct::next_sibling, pugi::xml_node_struct::prev_sibling_c, strequal(), and xml_node().

+ Here is the call graph for this function:

◆ print() [1/3]

PUGI__FN void pugi::xml_node::print ( xml_writer writer,
const char_t indent = PUGIXML_TEXT("\t"),
unsigned int  flags = format_default,
xml_encoding  encoding = encoding_auto,
unsigned int  depth = 0 
) const

Definition at line 6275 of file pugixml.cpp.

References _root, and node_output().

Referenced by print().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ print() [2/3]

PUGI__FN void pugi::xml_node::print ( std::basic_ostream< char, std::char_traits< char > > &  os,
const char_t indent = PUGIXML_TEXT("\t"),
unsigned int  flags = format_default,
xml_encoding  encoding = encoding_auto,
unsigned int  depth = 0 
) const

Definition at line 6287 of file pugixml.cpp.

References print().

+ Here is the call graph for this function:

◆ print() [3/3]

PUGI__FN void pugi::xml_node::print ( std::basic_ostream< wchar_t, std::char_traits< wchar_t > > &  os,
const char_t indent = PUGIXML_TEXT("\t"),
unsigned int  flags = format_default,
unsigned int  depth = 0 
) const

Definition at line 6294 of file pugixml.cpp.

References pugi::encoding_wchar, and print().

+ Here is the call graph for this function:

◆ remove_attribute() [1/2]

PUGI__FN bool pugi::xml_node::remove_attribute ( const xml_attribute a)

Definition at line 6041 of file pugixml.cpp.

References pugi::xml_attribute::_attr, _root, destroy_attribute(), get_allocator(), is_attribute_of(), and remove_attribute().

Referenced by remove_attribute().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ remove_attribute() [2/2]

PUGI__FN bool pugi::xml_node::remove_attribute ( const char_t name)

Definition at line 6036 of file pugixml.cpp.

References attribute(), and remove_attribute().

+ Here is the call graph for this function:

◆ remove_child() [1/2]

PUGI__FN bool pugi::xml_node::remove_child ( const xml_node n)

Definition at line 6060 of file pugixml.cpp.

References _root, destroy_node(), get_allocator(), pugi::xml_node_struct::parent, and remove_node().

Referenced by remove_child().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ remove_child() [2/2]

PUGI__FN bool pugi::xml_node::remove_child ( const char_t name)

Definition at line 6055 of file pugixml.cpp.

References child(), and remove_child().

+ Here is the call graph for this function:

◆ root()

PUGI__FN xml_node pugi::xml_node::root ( ) const

Definition at line 5582 of file pugixml.cpp.

References _root, get_document(), and xml_node().

Referenced by first_element_by_path().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ select_node() [1/2]

PUGI__FN xpath_node pugi::xml_node::select_node ( const char_t query,
xpath_variable_set variables = 0 
) const

Definition at line 12696 of file pugixml.cpp.

References pugi::xpath_query::evaluate_node().

+ Here is the call graph for this function:

◆ select_node() [2/2]

PUGI__FN xpath_node pugi::xml_node::select_node ( const xpath_query query) const

Definition at line 12702 of file pugixml.cpp.

References pugi::xpath_query::evaluate_node().

+ Here is the call graph for this function:

◆ select_nodes() [1/2]

PUGI__FN xpath_node_set pugi::xml_node::select_nodes ( const char_t query,
xpath_variable_set variables = 0 
) const

Definition at line 12707 of file pugixml.cpp.

References pugi::xpath_query::evaluate_node_set().

+ Here is the call graph for this function:

◆ select_nodes() [2/2]

PUGI__FN xpath_node_set pugi::xml_node::select_nodes ( const xpath_query query) const

Definition at line 12713 of file pugixml.cpp.

References pugi::xpath_query::evaluate_node_set().

+ Here is the call graph for this function:

◆ select_single_node() [1/2]

PUGI__FN xpath_node pugi::xml_node::select_single_node ( const char_t query,
xpath_variable_set variables = 0 
) const

Definition at line 12718 of file pugixml.cpp.

References pugi::xpath_query::evaluate_node().

+ Here is the call graph for this function:

◆ select_single_node() [2/2]

PUGI__FN xpath_node pugi::xml_node::select_single_node ( const xpath_query query) const

Definition at line 12724 of file pugixml.cpp.

References pugi::xpath_query::evaluate_node().

+ Here is the call graph for this function:

◆ set_name()

PUGI__FN bool pugi::xml_node::set_name ( const char_t rhs)

Definition at line 5632 of file pugixml.cpp.

References _root, pugi::xml_node_struct::header, pugi::xml_node_struct::name, pugi::node_declaration, pugi::node_element, pugi::node_null, pugi::node_pi, PUGI__NODETYPE, strcpy_insitu(), strlength(), and xml_memory_page_name_allocated_mask.

Referenced by append_child(), insert_child_after(), insert_child_before(), and prepend_child().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ set_value()

PUGI__FN bool pugi::xml_node::set_value ( const char_t rhs)

Definition at line 5642 of file pugixml.cpp.

References _root, pugi::xml_node_struct::header, pugi::node_cdata, pugi::node_comment, pugi::node_doctype, pugi::node_null, pugi::node_pcdata, pugi::node_pi, PUGI__NODETYPE, strcpy_insitu(), strlength(), pugi::xml_node_struct::value, and xml_memory_page_value_allocated_mask.

+ Here is the call graph for this function:

◆ text()

PUGI__FN xml_text pugi::xml_node::text ( ) const

Definition at line 5587 of file pugixml.cpp.

References _root.

◆ traverse()

PUGI__FN bool pugi::xml_node::traverse ( xml_tree_walker walker)

Definition at line 6218 of file pugixml.cpp.

References pugi::xml_tree_walker::_depth, _root, pugi::xml_tree_walker::begin(), pugi::xml_tree_walker::end(), pugi::xml_node_struct::first_child, pugi::xml_tree_walker::for_each(), pugi::xml_node_struct::next_sibling, and pugi::xml_node_struct::parent.

+ Here is the call graph for this function:

◆ type()

PUGI__FN xml_node_type pugi::xml_node::type ( ) const

Definition at line 5480 of file pugixml.cpp.

References _root, pugi::node_null, and PUGI__NODETYPE.

Referenced by append_attribute(), append_buffer(), append_child(), append_copy(), xpath_ast_node::eval_node_set(), insert_attribute_after(), insert_attribute_before(), insert_child_after(), insert_child_before(), insert_copy_after(), insert_copy_before(), offset_debug(), prepend_attribute(), prepend_child(), prepend_copy(), and xpath_ast_node::step_push().

+ Here is the caller graph for this function:

◆ value()

PUGI__FN const char_t * pugi::xml_node::value ( ) const

Definition at line 5485 of file pugixml.cpp.

References _root, PUGIXML_TEXT, and pugi::xml_node_struct::value.

Referenced by convert_number_to_string_special(), xpath_ast_node::eval_boolean(), is_nan(), xpath_parser::parse_primary_expression(), xpath_ast_node::set_next(), xpath_ast_node::set_right(), xpath_node_set_raw::set_type(), and xpath_ast_node::xpath_ast_node().

+ Here is the caller graph for this function:

Friends And Related Function Documentation

◆ xml_attribute_iterator

friend class xml_attribute_iterator
friend

Definition at line 452 of file pugixml.hpp.

◆ xml_named_node_iterator

friend class xml_named_node_iterator
friend

Definition at line 454 of file pugixml.hpp.

Referenced by children().

◆ xml_node_iterator

friend class xml_node_iterator
friend

Definition at line 453 of file pugixml.hpp.

Member Data Documentation

◆ _root

xml_node_struct* pugi::xml_node::_root
protected

Definition at line 457 of file pugixml.hpp.

Referenced by pugi::xml_document::_create(), pugi::xml_document::_destroy(), xpath_allocator::allocate(), append_attribute(), append_buffer(), append_child(), append_copy(), append_move(), attribute(), attributes_begin(), attributes_end(), begin(), child(), child_value(), children(), pugi::xml_document::document_element(), empty(), end(), find_child_by_attribute(), find_node(), first_attribute(), first_child(), first_element_by_path(), hash_value(), insert_attribute_after(), insert_attribute_before(), insert_child_after(), insert_child_before(), insert_copy_after(), insert_copy_before(), insert_move_after(), insert_move_before(), internal_object(), last_attribute(), last_child(), pugi::xml_document::load(), pugi::xml_document::load_buffer(), pugi::xml_document::load_buffer_inplace(), pugi::xml_document::load_buffer_inplace_own(), pugi::xml_document::load_file(), name(), next_sibling(), offset_debug(), operator unspecified_bool_type(), operator!(), operator!=(), pugi::xml_node_iterator::operator!=(), pugi::xml_attribute_iterator::operator!=(), pugi::xml_named_node_iterator::operator!=(), pugi::xml_node_iterator::operator*(), pugi::xml_named_node_iterator::operator*(), pugi::xml_node_iterator::operator++(), pugi::xml_named_node_iterator::operator++(), pugi::xml_node_iterator::operator--(), pugi::xml_named_node_iterator::operator--(), pugi::xml_node_iterator::operator->(), pugi::xml_named_node_iterator::operator->(), operator<(), operator<=(), operator==(), pugi::xml_node_iterator::operator==(), pugi::xml_attribute_iterator::operator==(), pugi::xml_named_node_iterator::operator==(), operator>(), operator>=(), parent(), path(), prepend_attribute(), prepend_child(), prepend_copy(), prepend_move(), previous_sibling(), print(), xpath_allocator::release(), remove_attribute(), remove_child(), xpath_allocator::revert(), root(), pugi::xml_document::save(), set_name(), set_value(), text(), traverse(), type(), and value().


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