LIMA
Libre Multilingual Analyzer — C++ API
Loading...
Searching...
No Matches
xpath_parser Struct Reference

Classes

struct  binary_op_t
 

Public Member Functions

xpath_ast_node * error (const char *message)
 
xpath_ast_node * error_oom ()
 
xpath_ast_node * error_rec ()
 
void * alloc_node ()
 
xpath_ast_node * alloc_node (ast_type_t type, xpath_value_type rettype, const char_t *value)
 
xpath_ast_node * alloc_node (ast_type_t type, xpath_value_type rettype, double value)
 
xpath_ast_node * alloc_node (ast_type_t type, xpath_value_type rettype, xpath_variable *value)
 
xpath_ast_node * alloc_node (ast_type_t type, xpath_value_type rettype, xpath_ast_node *left=0, xpath_ast_node *right=0)
 
xpath_ast_node * alloc_node (ast_type_t type, xpath_ast_node *left, axis_t axis, nodetest_t test, const char_t *contents)
 
xpath_ast_node * alloc_node (ast_type_t type, xpath_ast_node *left, xpath_ast_node *right, predicate_t test)
 
const char_t * alloc_string (const xpath_lexer_string &value)
 
xpath_ast_node * parse_function (const xpath_lexer_string &name, size_t argc, xpath_ast_node *args[2])
 
axis_t parse_axis_name (const xpath_lexer_string &name, bool &specified)
 
nodetest_t parse_node_test_type (const xpath_lexer_string &name)
 
xpath_ast_node * parse_primary_expression ()
 
xpath_ast_node * parse_filter_expression ()
 
xpath_ast_node * parse_step (xpath_ast_node *set)
 
xpath_ast_node * parse_relative_location_path (xpath_ast_node *set)
 
xpath_ast_node * parse_location_path ()
 
xpath_ast_node * parse_path_or_unary_expression ()
 
xpath_ast_node * parse_expression_rec (xpath_ast_node *lhs, int limit)
 
xpath_ast_node * parse_expression (int limit=0)
 
 xpath_parser (const char_t *query, xpath_variable_set *variables, xpath_allocator *alloc, xpath_parse_result *result)
 
xpath_ast_node * parse ()
 

Static Public Member Functions

static xpath_ast_node * parse (const char_t *query, xpath_variable_set *variables, xpath_allocator *alloc, xpath_parse_result *result)
 

Public Attributes

xpath_allocator * _alloc
 
xpath_lexer _lexer
 
const char_t * _query
 
xpath_variable_set * _variables
 
xpath_parse_result * _result
 
char_t _scratch [32]
 
size_t _depth
 

Detailed Description

Definition at line 11176 of file pugixml.cpp.

Constructor & Destructor Documentation

◆ xpath_parser()

xpath_parser::xpath_parser ( const char_t *  query,
xpath_variable_set *  variables,
xpath_allocator *  alloc,
xpath_parse_result *  result 
)
inline

Definition at line 12097 of file pugixml.cpp.

Member Function Documentation

◆ alloc_node() [1/7]

void * xpath_parser::alloc_node ( )
inline

Definition at line 11211 of file pugixml.cpp.

◆ alloc_node() [2/7]

xpath_ast_node * xpath_parser::alloc_node ( ast_type_t  type,
xpath_ast_node *  left,
axis_t  axis,
nodetest_t  test,
const char_t *  contents 
)
inline

Definition at line 11240 of file pugixml.cpp.

◆ alloc_node() [3/7]

xpath_ast_node * xpath_parser::alloc_node ( ast_type_t  type,
xpath_ast_node *  left,
xpath_ast_node *  right,
predicate_t  test 
)
inline

Definition at line 11246 of file pugixml.cpp.

◆ alloc_node() [4/7]

xpath_ast_node * xpath_parser::alloc_node ( ast_type_t  type,
xpath_value_type  rettype,
const char_t *  value 
)
inline

Definition at line 11216 of file pugixml.cpp.

◆ alloc_node() [5/7]

xpath_ast_node * xpath_parser::alloc_node ( ast_type_t  type,
xpath_value_type  rettype,
double  value 
)
inline

Definition at line 11222 of file pugixml.cpp.

◆ alloc_node() [6/7]

xpath_ast_node * xpath_parser::alloc_node ( ast_type_t  type,
xpath_value_type  rettype,
xpath_ast_node *  left = 0,
xpath_ast_node *  right = 0 
)
inline

Definition at line 11234 of file pugixml.cpp.

◆ alloc_node() [7/7]

xpath_ast_node * xpath_parser::alloc_node ( ast_type_t  type,
xpath_value_type  rettype,
xpath_variable *  value 
)
inline

Definition at line 11228 of file pugixml.cpp.

◆ alloc_string()

const char_t * xpath_parser::alloc_string ( const xpath_lexer_string &  value)
inline

Definition at line 11252 of file pugixml.cpp.

◆ error()

xpath_ast_node * xpath_parser::error ( const char *  message)
inline

Definition at line 11190 of file pugixml.cpp.

◆ error_oom()

xpath_ast_node * xpath_parser::error_oom ( )
inline

Definition at line 11198 of file pugixml.cpp.

◆ error_rec()

xpath_ast_node * xpath_parser::error_rec ( )
inline

Definition at line 11206 of file pugixml.cpp.

◆ parse() [1/2]

xpath_ast_node * xpath_parser::parse ( )
inline

Definition at line 12101 of file pugixml.cpp.

◆ parse() [2/2]

static xpath_ast_node * xpath_parser::parse ( const char_t *  query,
xpath_variable_set *  variables,
xpath_allocator *  alloc,
xpath_parse_result *  result 
)
inlinestatic

Definition at line 12115 of file pugixml.cpp.

◆ parse_axis_name()

axis_t xpath_parser::parse_axis_name ( const xpath_lexer_string &  name,
bool &  specified 
)
inline

Definition at line 11388 of file pugixml.cpp.

◆ parse_expression()

xpath_ast_node * xpath_parser::parse_expression ( int  limit = 0)
inline

Definition at line 12080 of file pugixml.cpp.

◆ parse_expression_rec()

xpath_ast_node * xpath_parser::parse_expression_rec ( xpath_ast_node *  lhs,
int  limit 
)
inline

Definition at line 12026 of file pugixml.cpp.

◆ parse_filter_expression()

xpath_ast_node * xpath_parser::parse_filter_expression ( )
inline

Definition at line 11605 of file pugixml.cpp.

◆ parse_function()

xpath_ast_node * xpath_parser::parse_function ( const xpath_lexer_string &  name,
size_t  argc,
xpath_ast_node *  args[2] 
)
inline

Definition at line 11268 of file pugixml.cpp.

◆ parse_location_path()

xpath_ast_node * xpath_parser::parse_location_path ( )
inline

Definition at line 11854 of file pugixml.cpp.

◆ parse_node_test_type()

nodetest_t xpath_parser::parse_node_test_type ( const xpath_lexer_string &  name)
inline

Definition at line 11456 of file pugixml.cpp.

◆ parse_path_or_unary_expression()

xpath_ast_node * xpath_parser::parse_path_or_unary_expression ( )
inline

Definition at line 11894 of file pugixml.cpp.

◆ parse_primary_expression()

xpath_ast_node * xpath_parser::parse_primary_expression ( )
inline

Definition at line 11492 of file pugixml.cpp.

◆ parse_relative_location_path()

xpath_ast_node * xpath_parser::parse_relative_location_path ( xpath_ast_node *  set)
inline

Definition at line 11820 of file pugixml.cpp.

◆ parse_step()

xpath_ast_node * xpath_parser::parse_step ( xpath_ast_node *  set)
inline

Definition at line 11644 of file pugixml.cpp.

Member Data Documentation

◆ _alloc

xpath_allocator* xpath_parser::_alloc

Definition at line 11178 of file pugixml.cpp.

◆ _depth

size_t xpath_parser::_depth

Definition at line 11188 of file pugixml.cpp.

◆ _lexer

xpath_lexer xpath_parser::_lexer

Definition at line 11179 of file pugixml.cpp.

◆ _query

const char_t* xpath_parser::_query

Definition at line 11181 of file pugixml.cpp.

◆ _result

xpath_parse_result* xpath_parser::_result

Definition at line 11184 of file pugixml.cpp.

◆ _scratch

char_t xpath_parser::_scratch[32]

Definition at line 11186 of file pugixml.cpp.

◆ _variables

xpath_variable_set* xpath_parser::_variables

Definition at line 11182 of file pugixml.cpp.


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