libxml++  2.35.2
Public Types | Public Member Functions
xmlpp::TextReader Class Reference

A TextReader-style XML parser A reader that provides fast, non-cached, forward-only access to XML data, in the style of .Net's XmlTextReader class. More...

#include <libxml++/parsers/textreader.h>

Inheritance diagram for xmlpp::TextReader:
Inheritance graph
[legend]
Collaboration diagram for xmlpp::TextReader:
Collaboration graph
[legend]

List of all members.

Public Types

enum  xmlNodeType {
  Attribute = 2,
  CDATA = 4,
  Comment = 8,
  Document = 9,
  DocumentFragment = 11,
  DocumentType = 10,
  Element = 1,
  EndElement = 15,
  EndEntity = 16,
  Entity = 6,
  EntityReference = 5,
  None = 0,
  Notation = 12,
  ProcessingInstruction = 7,
  SignificantWhitespace = 14,
  Text = 3,
  Whitespace = 13,
  XmlDeclaration = 17
}
enum  xmlReadState {
  Closed = 4,
  EndOfFile = 3,
  Error = 2,
  Initial = 0,
  Interactive = 1,
  Reading = 5
}
enum  ParserProperties {
  LoadDtd = 1,
  DefaultAttrs = 2,
  Validate = 3,
  SubstEntities = 4
}
typedef unsigned int size_type

Public Member Functions

 TextReader (struct _xmlTextReader* cobj)
 Wraps a TextReader object from an underlying libxml object.
 TextReader (const Glib::ustring& URI)
 Creates a new TextReader object to parse a file or URI.
 TextReader (const unsigned char* data, size_type size, const Glib::ustring& uri=Glib::ustring())
 Creates a new TextReader object which parses in memory data.
 ~TextReader ()
bool read ()
 Moves the position of the current instance to the next node in the stream, exposing its properties.
Glib::ustring read_inner_xml ()
 Reads the contents of the current node, including child nodes and markup.
Glib::ustring read_outer_xml ()
 Reads the current node and its contents, including child nodes and markup.
Glib::ustring read_string ()
 Reads the contents of an element or a text node as a string.
bool read_attribute_value ()
 Parses an attribute value into one or more Text and EntityReference nodes.
int get_attribute_count () const
 Gets the number of attributes on the current node.
Glib::ustring get_base_uri () const
 Gets the base Uniform Resource Identifier (URI) of the current node.
int get_depth () const
 Gets the depth of the current node in the XML document.
bool has_attributes () const
 Gets a value indicating whether the current node has any attributes.
bool has_value () const
 Whether the node can have a text value.
bool is_default () const
 Whether an Attribute node was generated from the default value defined in the DTD or schema.
bool is_empty_element () const
 Check if the current node is empty.
Glib::ustring get_local_name () const
Glib::ustring get_name () const
Glib::ustring get_namespace_uri () const
xmlNodeType get_node_type () const
Glib::ustring get_prefix () const
char get_quote_char () const
Glib::ustring get_value () const
Glib::ustring get_xml_lang () const
xmlReadState get_read_state () const
void close ()
Glib::ustring get_attribute (int number) const
Glib::ustring get_attribute (const Glib::ustring& name) const
Glib::ustring get_attribute (const Glib::ustring& local_name, const Glib::ustring& ns_uri) const
Glib::ustring lookup_namespace (const Glib::ustring& prefix) const
bool move_to_attribute (int number)
bool move_to_attribute (const Glib::ustring& name)
bool move_to_attribute (const Glib::ustring& local_name, const Glib::ustring& ns_uri)
bool move_to_first_attribute ()
bool move_to_next_attribute ()
bool move_to_element ()
bool get_normalization () const
void set_normalization (bool value)
bool get_parser_property (ParserProperties property) const
void set_parser_property (ParserProperties property, bool value)
Nodeget_current_node ()
const Nodeget_current_node () const
Nodeexpand ()
bool next ()
bool is_valid () const

Detailed Description

A TextReader-style XML parser A reader that provides fast, non-cached, forward-only access to XML data, in the style of .Net's XmlTextReader class.


Member Typedef Documentation

typedef unsigned int xmlpp::TextReader::size_type

Member Enumeration Documentation

Enumerator:
LoadDtd 
DefaultAttrs 
Validate 
SubstEntities 
Enumerator:
Attribute 
CDATA 
Comment 
Document 
DocumentFragment 
DocumentType 
Element 
EndElement 
EndEntity 
Entity 
EntityReference 
None 
Notation 
ProcessingInstruction 
SignificantWhitespace 
Text 
Whitespace 
XmlDeclaration 
Enumerator:
Closed 
EndOfFile 
Error 
Initial 
Interactive 
Reading 

Constructor & Destructor Documentation

xmlpp::TextReader::TextReader ( struct _xmlTextReader *  cobj)

Wraps a TextReader object from an underlying libxml object.

The TextReader takes ownership of cobj.

Parameters:
cobjThe underlying libxml xmlTextReader object.

Creates a new TextReader object to parse a file or URI.

Parameters:
URIThe URI to read.
xmlpp::TextReader::TextReader ( const unsigned char *  data,
size_type  size,
const Glib::ustring uri = Glib::ustring() 
)

Creates a new TextReader object which parses in memory data.

Parameters:
dataThe data to parse.
sizeThe number of bytes in data.
uriThe base URI of the file.

Member Function Documentation

Glib::ustring xmlpp::TextReader::get_attribute ( const Glib::ustring local_name,
const Glib::ustring ns_uri 
) const

Gets the number of attributes on the current node.

Returns:
The number of attributes on the current node, or zero if the current node does not support attributes.

Gets the base Uniform Resource Identifier (URI) of the current node.

Returns:
The base URI of the current node or an empty Glib::ustring if not available.

Gets the depth of the current node in the XML document.

Returns:
The depth of the current node in the XML document.

Gets a value indicating whether the current node has any attributes.

Returns:
true if the current has attributes, false otherwise.

Whether the node can have a text value.

Returns:
true if the current node can have an associated text value, false otherwise.

Whether an Attribute node was generated from the default value defined in the DTD or schema.

Returns:
true if defaulted, false otherwise.

Check if the current node is empty.

Returns:
true if empty, false otherwise.
bool xmlpp::TextReader::move_to_attribute ( const Glib::ustring local_name,
const Glib::ustring ns_uri 
)

Moves the position of the current instance to the next node in the stream, exposing its properties.

Returns:
true if the node was read successfully, false if there is no more nodes to read.

Parses an attribute value into one or more Text and EntityReference nodes.

Returns:
A bool where true indicates the attribute value was parsed, and false indicates the reader was not positioned on an attribute node or all the attribute values have been read.

Reads the contents of the current node, including child nodes and markup.

Returns:
A Glib::ustring containing the XML content, or and empty Glib::ustring if the current node is neither an element nor attribute, or has no child nodes.

Reads the current node and its contents, including child nodes and markup.

Returns:
A Glib::ustring containing the XML content, or an empty Glib::ustring if the current node is neither an element nor attribute.

Reads the contents of an element or a text node as a string.

Returns:
A Glib::ustring containing the contents of the Element or Text node, or an empty Glib::ustring if the reader is positioned on any other type of node.
void xmlpp::TextReader::set_parser_property ( ParserProperties  property,
bool  value 
)

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