struct XML::Reader
Defined in:
xml/reader.crConstructors
-
.new(str : String, options : XML::ParserOptions = XML::ParserOptions.default)
Creates a new reader from a string.
-
.new(io : IO, options : XML::ParserOptions = XML::ParserOptions.default)
Creates a new reader from an IO.
Instance Method Summary
-
#[](attribute : String) : String
Gets the attribute content for the attribute given by name.
-
#[]?(attribute : String) : String?
Gets the attribute content for the attribute given by name.
-
#attributes_count
Returns attribute count of the node.
-
#depth
Returns the current nesting depth of the reader.
-
#empty_element?
Checks if the node is an empty element.
-
#expand
Expands the node to a
XML::Node
that can be searched with XPath etc. -
#has_attributes?
Checks if the node has any attributes.
-
#move_to_attribute(name : String)
Moves to the
XML::Type::ATTRIBUTE_NODE
with the specified name. -
#move_to_element
Moves from the
XML::Type::ATTRIBUTE_NODE
to its containingXML::Type::ELEMENT_NODE
. -
#move_to_first_attribute
Moves to the first
XML::Type::ATTRIBUTE_NODE
of the node. -
#move_to_next_attribute
Moves to the next
XML::Type::ATTRIBUTE_NODE
of the node. -
#name
Returns the name of the node.
-
#next
Moves the reader to the next node while skipping subtrees.
-
#next_sibling
Moves the reader to the next sibling node while skipping subtrees.
-
#node_type
Returns the
XML::Type
of the node. -
#read
Moves the reader to the next node.
-
#read_inner_xml
Returns the node's XML content including subtrees.
-
#read_outer_xml
Returns the XML for the node and its content including subtrees.
-
#to_unsafe : LibXML::XMLTextReader
Returns a reference to the underlying
LibXML::XMLTextReader
. -
#value
Returns the text content of the node.
Instance methods inherited from struct Struct
==(other) : Bool
==,
hash(hasher)
hash,
inspect(io : IO) : Nil
inspect,
pretty_print(pp) : Nil
pretty_print,
to_s(io)
to_s
Instance methods inherited from struct Value
==(other : JSON::Any)==(other : YAML::Any)
==(other) ==, dup dup
Instance methods inherited from class Object
!=(other)
!=,
!~(other)
!~,
==(other)
==,
===(other : JSON::Any)===(other : YAML::Any)
===(other) ===, =~(other) =~, class class, dup dup, hash(hasher)
hash hash, inspect(io : IO)
inspect inspect, itself itself, not_nil! not_nil!, pretty_inspect(width = 79, newline = "\n", indent = 0) : String pretty_inspect, pretty_print(pp : PrettyPrint) : Nil pretty_print, tap(&block) tap, to_json(io : IO)
to_json to_json, to_pretty_json(indent : String = " ")
to_pretty_json(io : IO, indent : String = " ") to_pretty_json, to_s
to_s(io : IO) to_s, to_yaml(io : IO)
to_yaml to_yaml, try(&block) try, unsafe_as(type : T.class) forall T unsafe_as
Constructor methods inherited from class Object
from_json(string_or_io, root : String) : selffrom_json(string_or_io) : self from_json, from_yaml(string_or_io : String | IO) : self from_yaml
Constructor Detail
Creates a new reader from a string.
See XML::ParserOptions.default
for default options.
Creates a new reader from an IO.
See XML::ParserOptions.default
for default options.
Instance Method Detail
Gets the attribute content for the attribute given by name.
Raises KeyError
if attribute is not found.
Gets the attribute content for the attribute given by name.
Returns nil
if attribute is not found.
Expands the node to a XML::Node
that can be searched with XPath etc.
The returned XML::Node
is only valid until the next call to #read
.
Moves to the XML::Type::ATTRIBUTE_NODE
with the specified name.
Moves from the XML::Type::ATTRIBUTE_NODE
to its containing XML::Type::ELEMENT_NODE
.
Returns a reference to the underlying LibXML::XMLTextReader
.