Public Member Functions | |
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=0, xpath_ast_node *right=0) | |
xpath_ast_node (ast_type_t type, xpath_ast_node *left, axis_t axis, nodetest_t test, const char_t *contents) | |
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) |
bool | is_posinv () |
xpath_value_type | rettype () const |
Definition at line 6810 of file pugixml.cpp.
xpath_ast_node::xpath_ast_node | ( | ast_type_t | type, | |
xpath_value_type | rettype_, | |||
const char_t * | value | |||
) | [inline] |
xpath_ast_node::xpath_ast_node | ( | ast_type_t | type, | |
xpath_value_type | rettype_, | |||
double | value | |||
) | [inline] |
xpath_ast_node::xpath_ast_node | ( | ast_type_t | type, | |
xpath_value_type | rettype_, | |||
xpath_variable * | value | |||
) | [inline] |
xpath_ast_node::xpath_ast_node | ( | ast_type_t | type, | |
xpath_value_type | rettype_, | |||
xpath_ast_node * | left = 0 , |
|||
xpath_ast_node * | right = 0 | |||
) | [inline] |
Definition at line 7355 of file pugixml.cpp.
xpath_ast_node::xpath_ast_node | ( | ast_type_t | type, | |
xpath_ast_node * | left, | |||
axis_t | axis, | |||
nodetest_t | test, | |||
const char_t * | contents | |||
) | [inline] |
Definition at line 7359 of file pugixml.cpp.
bool xpath_ast_node::eval_boolean | ( | const xpath_context & | c, | |
const xpath_stack & | stack | |||
) | [inline] |
Definition at line 7372 of file pugixml.cpp.
References 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_variable, xpath_string::c_str(), convert_number_to_boolean(), xpath_node_set_raw::empty(), xpath_string::empty(), eval_boolean(), eval_node_set(), eval_number(), eval_string(), find_substring(), xpath_context::n, PUGIXML_TEXT, xpath_stack::result, starts_with(), tolower_ascii(), pugi::xpath_type_boolean, pugi::xpath_type_node_set, pugi::xpath_type_number, and pugi::xpath_type_string.
Referenced by eval_boolean(), eval_number(), and eval_string().
xpath_node_set_raw xpath_ast_node::eval_node_set | ( | const xpath_context & | c, | |
const xpath_stack & | stack | |||
) | [inline] |
Definition at line 7856 of file pugixml.cpp.
References xpath_node_set_raw::append(), ast_filter, ast_filter_posinv, 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_node_set(), xpath_context::n, 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(), xpath_stack::temp, and pugi::xpath_type_node_set.
Referenced by eval_boolean(), eval_node_set(), eval_number(), and eval_string().
double xpath_ast_node::eval_number | ( | const xpath_context & | c, | |
const xpath_stack & | stack | |||
) | [inline] |
Definition at line 7488 of file pugixml.cpp.
References 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_node_set(), eval_number(), eval_string(), xpath_string::length(), xpath_context::n, xpath_context::position, xpath_stack::result, round_nearest_nzero(), xpath_node_set_raw::size(), xpath_context::size, string_value(), pugi::xpath_type_boolean, pugi::xpath_type_node_set, pugi::xpath_type_number, and pugi::xpath_type_string.
Referenced by eval_boolean(), eval_number(), and eval_string().
xpath_string xpath_ast_node::eval_string | ( | const xpath_context & | c, | |
const xpath_stack & | stack | |||
) | [inline] |
Definition at line 7657 of file pugixml.cpp.
References 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_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(), eval_string_concat(), find_substring(), xpath_node_set_raw::first(), is_nan(), xpath_string::length(), local_name(), xpath_context::n, namespace_uri(), normalize_space(), PUGIXML_TEXT, qualified_name(), xpath_stack::result, round_nearest(), string_value(), xpath_stack::temp, translate(), xpath_string::uses_heap(), xpath_string_const(), pugi::xpath_type_boolean, pugi::xpath_type_node_set, pugi::xpath_type_number, and pugi::xpath_type_string.
Referenced by eval_boolean(), eval_number(), eval_string(), eval_string_concat(), and evaluate_string_impl().
xpath_string xpath_ast_node::eval_string_concat | ( | const xpath_context & | c, | |
const xpath_stack & | stack | |||
) | [inline] |
Definition at line 7610 of file pugixml.cpp.
References xpath_allocator::allocate(), ast_func_concat, count, eval_string(), xpath_stack::result, and xpath_stack::temp.
Referenced by eval_string().
bool xpath_ast_node::is_posinv | ( | ) | [inline] |
Definition at line 7974 of file pugixml.cpp.
References ast_filter, ast_filter_posinv, ast_func_position, ast_number_constant, ast_predicate, ast_step, ast_step_root, ast_string_constant, ast_variable, and is_posinv().
Referenced by is_posinv(), and xpath_parser::parse_filter_expression().
xpath_value_type xpath_ast_node::rettype | ( | ) | const [inline] |
Definition at line 8003 of file pugixml.cpp.
Referenced by xpath_parser::parse_filter_expression(), xpath_parser::parse_path_expression(), and xpath_parser::parse_union_expression().
void xpath_ast_node::set_next | ( | xpath_ast_node * | value | ) | [inline] |
Definition at line 7364 of file pugixml.cpp.
Referenced by xpath_parser::parse_primary_expression(), and xpath_parser::parse_step().
void xpath_ast_node::set_right | ( | xpath_ast_node * | value | ) | [inline] |
Definition at line 7368 of file pugixml.cpp.
Referenced by xpath_parser::parse_step().
const char_t* xpath_ast_node::nodetest |
Definition at line 6834 of file pugixml.cpp.
double xpath_ast_node::number |
Definition at line 6830 of file pugixml.cpp.
const char_t* xpath_ast_node::string |
Definition at line 6828 of file pugixml.cpp.
xpath_variable* xpath_ast_node::variable |
Definition at line 6832 of file pugixml.cpp.