|
@@ -120,9 +123,11 @@
You can also create XPath nodes with one of tree constructors: the default
constructor, the constructor that takes node argument, and the constructor
that takes attribute and node arguments (in which case the attribute must
- belong to the attribute list of the node). However, usually you don't need
- to create your own XPath node objects, since they are returned to you via
- selection functions.
+ belong to the attribute list of the node). The constructor from xml_node
is implicit, so you can usually
+ pass xml_node
to functions
+ that expect xpath_node
. Apart
+ from that you usually don't need to create your own XPath node objects, since
+ they are returned to you via selection functions.
XPath expressions operate not on single nodes, but instead on node sets.
@@ -309,20 +314,21 @@
You can evaluate the query using one of the following functions:
-bool xpath_query::evaluate_boolean(const xml_node& n) const;
-double xpath_query::evaluate_number(const xml_node& n) const;
-string_t xpath_query::evaluate_string(const xml_node& n) const;
-xpath_node_set xpath_query::evaluate_node_set(const xml_node& n) const;
+bool xpath_query::evaluate_boolean(const xpath_node& n) const;
+double xpath_query::evaluate_number(const xpath_node& n) const;
+string_t xpath_query::evaluate_string(const xpath_node& n) const;
+xpath_node_set xpath_query::evaluate_node_set(const xpath_node& n) const;
- All functions take the context node as an argument, compute the expression
- and return the result, converted to the requested type. By XPath specification,
- value of any type can be converted to boolean, number or string value, but
- no type other than node set can be converted to node set. Because of this,
- evaluate_boolean
, evaluate_number
and evaluate_string
- always return a result, but evaluate_node_set
- throws an xpath_exception
- if the return type is not node set.
+ $$ exception, evaluate_string nostl All functions take the context node as
+ an argument, compute the expression and return the result, converted to the
+ requested type. By XPath specification, value of any type can be converted
+ to boolean, number or string value, but no type other than node set can be
+ converted to node set. Because of this, evaluate_boolean
,
+ evaluate_number
and evaluate_string
always return a result,
+ but evaluate_node_set
throws
+ an xpath_exception
if the
+ return type is not node set.
@@ -370,7 +376,7 @@
Error handling
- As of version 0.9, all XPath errors result in thrown exceptions. The errors
+ $$ As of version 0.9, all XPath errors result in thrown exceptions. The errors
can arise during expression compilation or node set evaluation. In both cases,
an xpath_exception
object
is thrown. This is an exception object that implements std::exception
@@ -379,8 +385,8 @@
virtual const char* xpath_exception::what() const throw();
- This function returns the error message. Currently it is impossible to get
- the exact place where query compilation failed. This functionality, along
+ $$ This function returns the error message. Currently it is impossible to
+ get the exact place where query compilation failed. This functionality, along
with optional error handling without exceptions, will be available in version
1.0.
@@ -464,7 +470,7 @@
- Some of these incompatibilities will be fixed in version 1.0.
+ $$ Some of these incompatibilities will be fixed in version 1.0.
--
cgit v1.2.3