|
| | xpath_ast_node (ast_type_t type, xpath_value_type rettype_, const char_t *value) |
| | xpath_ast_node (ast_type_t type, xpath_value_type rettype_, double value) |
| | xpath_ast_node (ast_type_t type, xpath_value_type rettype_, xpath_variable *value) |
| | xpath_ast_node (ast_type_t type, xpath_value_type rettype_, xpath_ast_node *left=NULL, xpath_ast_node *right=NULL) |
| | xpath_ast_node (ast_type_t type, xpath_ast_node *left, axis_t axis, nodetest_t test, const char_t *contents) |
| | xpath_ast_node (ast_type_t type, xpath_ast_node *left, xpath_ast_node *right, predicate_t test) |
| void | set_next (xpath_ast_node *value) |
| void | set_right (xpath_ast_node *value) |
| bool | eval_boolean (const xpath_context &c, const xpath_stack &stack) |
| double | eval_number (const xpath_context &c, const xpath_stack &stack) |
| xpath_string | eval_string_concat (const xpath_context &c, const xpath_stack &stack) |
| xpath_string | eval_string (const xpath_context &c, const xpath_stack &stack) |
| xpath_node_set_raw | eval_node_set (const xpath_context &c, const xpath_stack &stack, nodeset_eval_t eval) |
| void | optimize (xpath_allocator *alloc) |
| void | optimize_self (xpath_allocator *alloc) |
| bool | is_posinv_expr () const |
| bool | is_posinv_step () const |
| xpath_value_type | rettype () const |
|
| | xpath_ast_node (const xpath_ast_node &) |
| xpath_ast_node & | operator= (const xpath_ast_node &) |
| void | apply_predicate (xpath_node_set_raw &ns, size_t first, const xpath_stack &stack, bool once) |
| void | apply_predicates (xpath_node_set_raw &ns, size_t first, const xpath_stack &stack, nodeset_eval_t eval) |
| bool | step_push (xpath_node_set_raw &ns, xml_attribute_struct *a, xml_node_struct *parent, xpath_allocator *alloc) |
| bool | step_push (xpath_node_set_raw &ns, xml_node_struct *n, xpath_allocator *alloc) |
| template<class T> |
| void | step_fill (xpath_node_set_raw &ns, xml_node_struct *n, xpath_allocator *alloc, bool once, T) |
| template<class T> |
| void | step_fill (xpath_node_set_raw &ns, xml_attribute_struct *a, xml_node_struct *p, xpath_allocator *alloc, bool once, T v) |
| template<class T> |
| void | step_fill (xpath_node_set_raw &ns, const xpath_node &xn, xpath_allocator *alloc, bool once, T v) |
| template<class T> |
| xpath_node_set_raw | step_do (const xpath_context &c, const xpath_stack &stack, nodeset_eval_t eval, T v) |
|
| template<class Comp> |
| static bool | compare_eq (xpath_ast_node *lhs, xpath_ast_node *rhs, const xpath_context &c, const xpath_stack &stack, const Comp &comp) |
| static bool | eval_once (xpath_node_set::type_t type, nodeset_eval_t eval) |
| template<class Comp> |
| static bool | compare_rel (xpath_ast_node *lhs, xpath_ast_node *rhs, const xpath_context &c, const xpath_stack &stack, const Comp &comp) |
| static void | apply_predicate_boolean (xpath_node_set_raw &ns, size_t first, xpath_ast_node *expr, const xpath_stack &stack, bool once) |
| static void | apply_predicate_number (xpath_node_set_raw &ns, size_t first, xpath_ast_node *expr, const xpath_stack &stack, bool once) |
| static void | apply_predicate_number_const (xpath_node_set_raw &ns, size_t first, xpath_ast_node *expr, const xpath_stack &stack) |
◆ xpath_ast_node() [1/7]
Hace referencia a xpath_ast_node().
Referenciado por apply_predicate_boolean(), apply_predicate_number(), apply_predicate_number_const(), apply_predicates(), compare_eq(), compare_rel(), eval_string_concat(), is_posinv_expr(), is_posinv_step(), operator=(), set_next(), set_right(), xpath_ast_node(), xpath_ast_node(), xpath_ast_node() y xpath_ast_node().
◆ xpath_ast_node() [2/7]
| xpath_ast_node::xpath_ast_node |
( |
ast_type_t | type, |
|
|
xpath_value_type | rettype_, |
|
|
const char_t * | value ) |
|
inline |
◆ xpath_ast_node() [3/7]
| xpath_ast_node::xpath_ast_node |
( |
ast_type_t | type, |
|
|
xpath_value_type | rettype_, |
|
|
double | value ) |
|
inline |
◆ xpath_ast_node() [4/7]
| xpath_ast_node::xpath_ast_node |
( |
ast_type_t | type, |
|
|
xpath_value_type | rettype_, |
|
|
xpath_variable * | value ) |
|
inline |
◆ xpath_ast_node() [5/7]
◆ xpath_ast_node() [6/7]
◆ xpath_ast_node() [7/7]
◆ apply_predicate()
◆ apply_predicate_boolean()
◆ apply_predicate_number()
◆ apply_predicate_number_const()
◆ apply_predicates()
◆ compare_eq()
Hace referencia a xpath_node_set_raw::begin(), xpath_string::c_str(), convert_string_to_number(), xpath_node_set_raw::end(), eval_boolean(), eval_node_set(), eval_number(), eval_string(), nodeset_eval_all, xpath_stack::result, rettype(), string_value(), swap() y xpath_ast_node().
Referenciado por eval_boolean().
◆ compare_rel()
◆ eval_boolean()
Hace referencia a _data, _left, _rettype, _right, _type, ast_func_boolean, ast_func_contains, ast_func_false, ast_func_lang, ast_func_not, ast_func_starts_with, ast_func_true, ast_op_and, ast_op_equal, ast_op_greater, ast_op_greater_or_equal, ast_op_less, ast_op_less_or_equal, ast_op_not_equal, ast_op_or, ast_opt_compare_attribute, ast_string_constant, ast_variable, xpath_string::c_str(), compare_eq(), compare_rel(), convert_number_to_boolean(), xpath_node_set_raw::empty(), xpath_string::empty(), eval_node_set(), eval_number(), eval_string(), find_substring(), is_xpath_attribute(), xpath_context::n, nodeset_eval_any, PUGIXML_TEXT, xpath_stack::result, starts_with(), strequal() y tolower_ascii().
Referenciado por apply_predicate_boolean(), compare_eq(), eval_number() y eval_string().
◆ eval_node_set()
Hace referencia a _axis, _data, _left, _rettype, _right, _test, _type, xpath_node_set_raw::append(), apply_predicate(), ast_filter, ast_func_id, ast_op_union, ast_step, ast_step_root, ast_variable, axis_ancestor, axis_ancestor_or_self, axis_attribute, axis_child, axis_descendant, axis_descendant_or_self, axis_following, axis_following_sibling, axis_namespace, axis_parent, axis_preceding, axis_preceding_sibling, axis_self, xpath_node_set_raw::begin(), xpath_node_set_raw::end(), eval_once(), xpath_context::n, nodeset_eval_all, nodeset_eval_first, predicate_constant_one, predicate_posinv, xpath_node_set_raw::push_back(), xpath_node_set_raw::remove_duplicates(), xpath_stack::result, xpath_node_set_raw::set_type(), xpath_node_set_raw::sort_do(), step_do(), xpath_stack::temp y xpath_node_set_raw::type().
Referenciado por compare_eq(), compare_rel(), eval_boolean() y eval_string().
◆ eval_number()
Hace referencia a _data, _left, _rettype, _right, _type, ast_func_ceiling, ast_func_count, ast_func_floor, ast_func_last, ast_func_number_0, ast_func_number_1, ast_func_position, ast_func_round, ast_func_string_length_0, ast_func_string_length_1, ast_func_sum, ast_number_constant, ast_op_add, ast_op_divide, ast_op_mod, ast_op_multiply, ast_op_negate, ast_op_subtract, ast_variable, xpath_node_set_raw::begin(), xpath_string::c_str(), convert_string_to_number(), xpath_node_set_raw::end(), eval_boolean(), eval_string(), xpath_string::length(), xpath_context::n, nodeset_eval_all, xpath_context::position, xpath_stack::result, round_nearest_nzero(), xpath_context::size y string_value().
Referenciado por apply_predicate_number(), apply_predicate_number_const(), compare_eq(), compare_rel(), eval_boolean() y eval_string().
◆ eval_once()
| bool xpath_ast_node::eval_once |
( |
xpath_node_set::type_t | type, |
|
|
nodeset_eval_t | eval ) |
|
inlinestaticprivate |
◆ eval_string()
Hace referencia a _data, _left, _rettype, _right, _type, ast_func_concat, ast_func_local_name_0, ast_func_local_name_1, ast_func_name_0, ast_func_name_1, ast_func_namespace_uri_0, ast_func_namespace_uri_1, ast_func_normalize_space_0, ast_func_normalize_space_1, ast_func_string_0, ast_func_string_1, ast_func_substring_2, ast_func_substring_3, ast_func_substring_after, ast_func_substring_before, ast_func_translate, ast_opt_translate_table, ast_string_constant, ast_variable, xpath_string::c_str(), convert_number_to_string(), xpath_string::data(), xpath_node_set_raw::empty(), eval_boolean(), eval_node_set(), eval_number(), eval_string_concat(), find_substring(), xpath_node_set_raw::first(), xpath_string::from_const(), xpath_string::from_heap(), xpath_string::from_heap_preallocated(), is_nan(), xpath_string::length(), local_name(), xpath_context::n, namespace_uri(), nodeset_eval_first, normalize_space(), PUGIXML_TEXT, qualified_name(), xpath_stack::result, round_nearest(), string_value(), xpath_stack::temp, translate(), translate_table() y xpath_string::uses_heap().
Referenciado por compare_eq(), eval_boolean() y eval_number().
◆ eval_string_concat()
◆ is_posinv_expr()
| bool xpath_ast_node::is_posinv_expr |
( |
| ) |
const |
|
inline |
Hace referencia a _left, _right, _type, ast_filter, ast_func_last, ast_func_position, ast_number_constant, ast_predicate, ast_step, ast_step_root, ast_string_constant, ast_variable y xpath_ast_node().
◆ is_posinv_step()
| bool xpath_ast_node::is_posinv_step |
( |
| ) |
const |
|
inline |
◆ operator=()
◆ optimize()
◆ optimize_self()
Hace referencia a _axis, _data, _left, _right, _test, _type, ast_filter, ast_func_last, ast_func_position, ast_func_translate, ast_number_constant, ast_op_equal, ast_opt_compare_attribute, ast_opt_translate_table, ast_predicate, ast_step, ast_string_constant, ast_variable, axis_attribute, axis_child, axis_descendant, axis_descendant_or_self, axis_self, is_posinv_step(), nodetest_name, nodetest_type_node, predicate_constant, predicate_constant_one, predicate_default, predicate_posinv, table y translate_table_generate().
Referenciado por optimize().
◆ rettype()
| xpath_value_type xpath_ast_node::rettype |
( |
| ) |
const |
|
inline |
◆ set_next()
◆ set_right()
◆ step_do()
Hace referencia a _left, _right, _test, apply_predicates(), axis_ancestor, axis_ancestor_or_self, axis_attribute, axis_child, axis_preceding, axis_preceding_sibling, axis_self, axis_to_type< N >::axis, xpath_node_set_raw::begin(), xpath_node_set_raw::end(), eval_once(), xpath_context::n, nodeset_eval_all, nodetest_name, predicate_constant_one, xpath_node_set_raw::remove_duplicates(), xpath_stack::result, xpath_node_set_raw::set_type(), xpath_node_set_raw::size(), step_fill(), xpath_stack::temp y xpath_node_set_raw::type().
Referenciado por eval_node_set().
◆ step_fill() [1/3]
◆ step_fill() [2/3]
Hace referencia a _test, axis_ancestor, axis_ancestor_or_self, axis_descendant_or_self, axis_following, axis_parent, axis_preceding, axis_self, axis_to_type< N >::axis, nodetest_type_node, step_fill() y step_push().
◆ step_fill() [3/3]
Hace referencia a axis_ancestor, axis_ancestor_or_self, axis_attribute, axis_child, axis_descendant, axis_descendant_or_self, axis_following, axis_following_sibling, axis_parent, axis_preceding, axis_preceding_sibling, axis_self, axis_to_type< N >::axis, node_is_ancestor() y step_push().
Referenciado por step_do(), step_fill() y step_fill().
◆ step_push() [1/2]
◆ step_push() [2/2]
Hace referencia a _data, _test, nodetest_all, nodetest_all_in_namespace, nodetest_name, nodetest_pi, nodetest_type_comment, nodetest_type_node, nodetest_type_pi, nodetest_type_text, PUGI_IMPL_NODETYPE, xpath_node_set_raw::push_back(), starts_with() y strequal().
◆ _axis
| char xpath_ast_node::_axis |
|
private |
◆ [union]
| union { ... } xpath_ast_node::_data |
◆ _left
Referenciado por eval_boolean(), eval_node_set(), eval_number(), eval_string(), eval_string_concat(), is_posinv_expr(), optimize(), optimize_self(), step_do(), xpath_ast_node(), xpath_ast_node(), xpath_ast_node(), xpath_ast_node(), xpath_ast_node() y xpath_ast_node().
◆ _next
◆ _rettype
| char xpath_ast_node::_rettype |
|
private |
◆ _right
Referenciado por apply_predicate(), apply_predicates(), eval_boolean(), eval_node_set(), eval_number(), eval_string(), eval_string_concat(), is_posinv_expr(), is_posinv_step(), optimize(), optimize_self(), set_right(), step_do(), xpath_ast_node(), xpath_ast_node(), xpath_ast_node(), xpath_ast_node(), xpath_ast_node() y xpath_ast_node().
◆ _test
| char xpath_ast_node::_test |
|
private |
Referenciado por apply_predicate(), eval_node_set(), optimize_self(), step_do(), step_fill(), step_push(), step_push(), xpath_ast_node(), xpath_ast_node(), xpath_ast_node(), xpath_ast_node(), xpath_ast_node() y xpath_ast_node().
◆ _type
| char xpath_ast_node::_type |
|
private |
Referenciado por apply_predicate(), eval_boolean(), eval_node_set(), eval_number(), eval_string(), eval_string_concat(), is_posinv_expr(), is_posinv_step(), optimize_self(), xpath_ast_node(), xpath_ast_node(), xpath_ast_node(), xpath_ast_node(), xpath_ast_node() y xpath_ast_node().
◆ nodetest
| const char_t* xpath_ast_node::nodetest |
◆ number
| double xpath_ast_node::number |
◆ string
| const char_t* xpath_ast_node::string |
◆ table
| const unsigned char* xpath_ast_node::table |
◆ variable
| xpath_variable* xpath_ast_node::variable |
La documentación de esta clase está generada del siguiente archivo: