![]() |
yumapro
21.10T-9
YumaPro SDK
|
Internal data structures used for XPath evaluation. More...
![]() |
Data Structures | |
struct | xpath_get2_cb_t |
Special XPath GET2 state record to be used instead of val_value_t or val_child_hdr_t pointers. More... | |
struct | xpath_get2_node_t |
Special XPath GET2 resnode. More... | |
struct | xpath_resnode_t |
XPath result node struct. More... | |
struct | xpath_result_t |
XPath expression result. More... | |
struct | xpath_pred_ent_t |
quick processing of NACM data rule predicates. More... | |
struct | xpath_pcb_t |
XPath parser control block. More... | |
struct | xpath_fncb_t |
XPath function control block. More... | |
struct | xpath_walkerparms_t |
Value or object node walker fn callback parameters. More... | |
struct | xpath_compwalkerparms_t |
Value node compare walker fn callback parameters. More... | |
struct | xpath_stringwalkerparms_t |
Value node stringify walker fn callback parameters. More... | |
struct | xpath_aio_cb_t |
AIO Subtree respresentation. More... | |
Macros | |
#define | XP_URL_ESC_WILDCARD '-' |
Special URL to XPath translation. | |
#define | XP_FL_DYNNODE bit0 |
Begin XPath control block flag definitions (uint32). More... | |
#define | XP_FL_SKIP_MODE bit1 |
during XPath evaluation, skipping the rest of a FALSE AND or TRUE OR expression | |
#define | XP_FL_LOAD_IMPORT bit2 |
OLD: bit 2 not used. More... | |
#define | XP_FL_ABSPATH bit3 |
used by xpath_leafref.c to keep track of path type | |
#define | XP_FL_CONFIGONLY bit4 |
used for YANG/NETCONF to auto-filter any non-config nodes that are matched by an XPath wildcard mechanism | |
#define | XP_FL_USEROOT bit5 |
used to indicate the top object node is set FALSE to indicate that all the ncx_module_t datadefQs need to be searched instead | |
#define | XP_FL_INSTANCEID bit6 |
used to restrict the XPath expression to the YANG instance-identifier syntax | |
#define | XP_FL_SCHEMA_INSTANCEID bit7 |
used to restrict the XPath expression to an ncx:schema-instance string syntax | |
#define | XP_FL_TOP_RPC_INPUT bit8 |
set if starting context node is RPC input which is allowed in YANG 1.1 More... | |
#define | XP_FL_ACTION_INPUT bit9 |
set if starting context node is within action input which is allowed in YANG 1.1 More... | |
#define | XP_FL_NACM_GET2 bit10 |
set if the XPath parser is being called to cache a data rule but found a GET2 node, forcing this rule to be checked during GET2 traversal | |
#define | XP_FL_KEEP_RESULT bit11 |
set if the caller wants the test result to be kept will free pcb->result if already set when trying to save eval result | |
#define | XP_FL_FOUND_PRED bit12 |
set if the parser found any predicates in the XPath expression | |
#define | XP_FL_GET_WHEN bit13 |
the parser is processing a when-stmt for a GET node so retrieve the value now instead of leaving the state to XP_RSP_GET2_PENDING | |
#define | XP_FL_BACKPTR_CDIRTY bit0 |
static config dirty for <candidate> | |
#define | XP_FL_BACKPTR_RDIRTY bit1 |
static config dirty for <running> | |
#define | XP_FL_BACKPTR_SDIRTY bit2 |
static config dirty for <startup> | |
#define | XPATH_GET_TYPE(P) (P)->xpath_type |
get the XPath type from xpath_pcb_t * (P) | |
#define | XPATH_GET_RESTYPE(R) (R)->restype |
get the result type from xpath_result_t * (R) | |
#define | XPATH_NACM_GET2(P) ((P)->flags & XP_FL_NACM_GET2) |
test if the NACM GET2 mode is active in xpath_pcb_t (P) | |
#define | XPATH_NONCONFIG_WARN(P) (P)->nonconfig_warn_obj |
YPW-1363: check nonconfig warning. | |
#define | XPATH_VAL_CXT(P) ((P)->val || (P)->val_get2) |
test if context node is a value or get2 in xpath_pcb_t * (P) | |
#define | XPATH_ANY_CXT(P) ((P)->val || (P)->val_get2 || (P)->obj) |
test if context node is a value or get2 in xpath_pcb_t * (P) | |
#define | XPATH_SCB(P) (P)->scb |
access the XPath scb backptr in xpath_pcb_t * (P) | |
#define | XPATH_GET2CB_OBJ(N) (N)->cb->obj |
access the GET2 control block object in xpath_get2_node_t (N) | |
#define | XPATH_MHDR(P) (P)->mhdr |
access the message header back pointer | |
#define | XPATH_EXPRSTR(P) (P)->exprstr |
access the XPath extression string | |
#define | XPATH_SET_DISABLED_OBJ_OK(P) (P)->disabled_obj_ok = TRUE |
set the disabled_obj_ok flag | |
#define | XPATH_DISABLED_OBJ_OK(P) (P)->disabled_obj_ok |
check the disabled_obj_ok flag | |
Typedefs | |
typedef ncx_var_t *(* | xpath_getvar_fn_t) (struct xpath_pcb_t_ *pcb, const xmlChar *varname, status_t *res) |
XPath GET variable callback function. More... | |
typedef xpath_result_t *(* | xpath_fn_t) (xpath_pcb_t *pcb, dlq_hdr_t *parmQ, status_t *res) |
XPath function prototype. More... | |
Internal data structures used for XPath evaluation.
#define XP_FL_ACTION_INPUT bit9 |
set if starting context node is within action input which is allowed in YANG 1.1
T: is within action/input F: is not within action input set in set_nodeset_parent
#define XP_FL_DYNNODE bit0 |
Begin XPath control block flag definitions (uint32).
If dynnode is present, then at least one component within the entire XPath expression is variable. Only relevant if the source is XP_SRC_LEAFREF!!! Any predicate found will cause this bit to be set If not set, then the expression is considered constant either /foo/bar/baz or ../bar/baz
**** NO LONGER USED **** **** Use xpath_expr_scan_predicates() instead ****
#define XP_FL_LOAD_IMPORT bit2 |
OLD: bit 2 not used.
during leafref resolution need to force import being loaded
#define XP_FL_TOP_RPC_INPUT bit8 |
set if starting context node is RPC input which is allowed in YANG 1.1
T: is RPC/input F: is not, could be RPC/output or NOTIF
typedef xpath_result_t*(* xpath_fn_t) (xpath_pcb_t *pcb, dlq_hdr_t *parmQ, status_t *res) |
XPath function prototype.
The XPath functions are stored in an array and every one uses the same API signature so the XPath parser can invoke them easily without knowing anything about any of the functions
pcb | XPath parser control block to use |
parmQ | Q of xpath_result_t prepresenting the ordered parameter list |
res | address of return status |
*res | result status |
typedef ncx_var_t*(* xpath_getvar_fn_t) (struct xpath_pcb_t_ *pcb, const xmlChar *varname, status_t *res) |
XPath GET variable callback function.
Access to XPath variable implementation. Used in NACM for USER variable. Used in yangcli for complete hierarchy of name, val_value_t pairs
Callback function for retrieval of a variable binding
pcb | XPath parser control block in use |
varname | variable name requested |
res | address of return status |
*res | return status |
enum xpath_curmode_t |
enum xpath_document_t |
enum xpath_exop_t |
XPath expression operation type.
enum xpath_get2_form_t |
enum xpath_get2_state_t |
GET2 retrieval states.
Enumerations for internal states for GET2 processing
enum xpath_nodetype_t |
enum xpath_restype_t |
enum xpath_rntype_t |
enum xpath_source_t |