yumapro
23.10T-12
YumaPro SDK
|
Manages the storage and access of child nodes within a YANG container or list instance. More...
Data Structures | |
struct | val_tree_t |
wrapper for the height-balanced tree struct More... | |
Enumerations | |
enum | val_child_op_t { VAL_CHILD_OP_NONE , VAL_CHILD_OP_PREV , VAL_CHILD_OP_SAME , VAL_CHILD_OP_NEXT } |
modify the procedure call to get the previous, same or next entry More... | |
Functions | |
status_t | val_child_add (val_value_t *child, val_value_t *parent) |
Add a child value node to a parent value node. More... | |
status_t | val_child_add_last (val_value_t *child, val_value_t *parent) |
Add a child value node as last node to a parent value node. More... | |
status_t | val_child_add_force (val_value_t *child, val_value_t *parent) |
Add a child value node to a parent value node Force add even if Tree Insersion fails. More... | |
status_t | val_child_add_force_last (val_value_t *child, val_value_t *parent) |
Add a child value node as last node to a parent value node Force if tree insertion fails. More... | |
val_value_t * | val_child_find (const val_value_t *parent, const xmlChar *child_modname, const xmlChar *child_name) |
Find the child node for the specified child name and modname. More... | |
val_value_t * | val_child_find_next (const val_value_t *parent, const xmlChar *child_modname, const xmlChar *child_name, const val_value_t *lastmatch) |
Find the next child header for the specified child. More... | |
val_value_t * | val_child_find_nsid (const val_value_t *parent, xmlns_id_t child_nsid, const xmlChar *child_name) |
Find the child node for the specified child name and namespace ID. More... | |
val_value_t * | val_child_find_same_nsid (const val_value_t *parent, xmlns_id_t child_nsid, const xmlChar *child_name, val_value_t *curchild, val_child_op_t child_op) |
Find the child node for the specified child name and modname. More... | |
val_value_t * | val_child_find_obj (const val_value_t *parent, const obj_template_t *child_obj) |
Find the child node for the specified child object header. More... | |
val_value_t * | val_child_find_same (const val_value_t *child, const val_value_t *parent, val_child_op_t child_op) |
Find the child header for the specified child, which is a different root; e.g., trying to match candidate value in running. More... | |
val_value_t * | val_child_find_same_lastmatch (const val_value_t *child, const val_value_t *parent, val_value_t *lastmatch, val_child_op_t child_op) |
Find the child header for the specified child. More... | |
val_value_t * | val_child_find_count (const val_value_t *parent, const xmlChar *child_modname, const xmlChar *child_name, uint32 *matchcount) |
Find the child node for the specified child name and modname Get the first instance and also return the count. More... | |
val_child_hdr_t * | val_child_find_hdr (val_value_t *child, val_value_t *parent) |
Find the child header for the specified child. More... | |
val_child_hdr_t * | val_child_find_hdr_lastmatch (val_value_t *child, val_value_t *parent, val_value_t *lastmatch) |
Find the child header for the specified child based on the last match. More... | |
status_t | val_child_insert (val_value_t *child, val_value_t *current, val_value_t *parent, op_insertop_t insert_op) |
Insert a child value node into a parent value node before or after the specified node. More... | |
void | val_child_remove (val_value_t *child) |
Remove a child value node from its parent value node. More... | |
void | val_child_mark_deleted (val_value_t *child) |
Remove a deleted child value node (mark deleted only) More... | |
void | val_child_mark_undeleted (val_value_t *child) |
Re-Add a previously deleted child value node (unmark deleted) More... | |
status_t | val_child_swap (val_value_t *newchild, val_value_t *curchild) |
Swap a child value node with a current value node. More... | |
val_value_t * | val_child_first (const val_value_t *parent) |
Get the first child present for this parent. More... | |
val_value_t * | val_child_next (const val_value_t *curchild) |
Get the next child present for the current node Parent must be set. More... | |
val_value_t * | val_child_next_same (val_value_t *curnode) |
Get the next node of the same type. More... | |
val_value_t * | val_child_prev_same (val_value_t *curnode) |
Get the previous node of the same type. More... | |
val_value_t * | val_child_first_terminal (const val_value_t *parent) |
Get the first terminal node child present for this parent. More... | |
val_value_t * | val_child_next_terminal (const val_value_t *curchild) |
Get the next terminal node child present for the current node Parent must be set. More... | |
uint32 | val_child_count (val_value_t *parent) |
Get the number of non-deleted children in this parent. More... | |
uint32 | val_child_count_nsid (val_value_t *parent, xmlns_id_t nsid, const xmlChar *name, val_value_t **firstval) |
Get the number of non-deleted children matching the NSID and namestring in this parent. More... | |
void | val_child_clean_hdrQ (dlq_hdr_t *child_hdrQ) |
Empty and clean a Q of child headers. More... | |
boolean | val_child_find_all_children (val_walker2_fn_t walkerfn, void *cookie1, void *cookie2, val_value_t *startnode, xmlns_id_t mod_nsid, const xmlChar *name, boolean configonly, boolean textmode) |
Find all children instances of the specified node(s) The walker fn will be called for each match. More... | |
boolean | val_child_find_all_ancestors (val_walker2_fn_t walkerfn, void *cookie1, void *cookie2, val_value_t *startnode, xmlns_id_t mod_nsid, const xmlChar *name, boolean configonly, boolean textmode, boolean orself) |
Find all the ancestor instances of the specified node within the path to root from the current node; use the filter criteria provided. More... | |
boolean | val_child_find_all_descendants (val_walker2_fn_t walkerfn, void *cookie1, void *cookie2, val_value_t *startnode, xmlns_id_t mod_nsid, const xmlChar *name, boolean configonly, boolean textmode, boolean orself, boolean forceall) |
Find all occurances of the specified node within the current subtree. More... | |
boolean | val_child_find_all_descendants_old (val_walker_fn_t walkerfn, void *cookie1, void *cookie2, val_value_t *startnode, xmlns_id_t mod_nsid, const xmlChar *name, boolean configonly, boolean textmode, boolean orself, boolean forceall) |
Find all occurances of the specified node within the current subtree. More... | |
boolean | val_child_find_all_pfaxis (val_walker2_fn_t walkerfn, void *cookie1, void *cookie2, val_value_t *startnode, xmlns_id_t mod_nsid, const xmlChar *name, boolean configonly, boolean dblslash, boolean textmode, ncx_xpath_axis_t axis) |
Find all occurances of the specified node for the specified preceding or following axis. More... | |
boolean | val_child_find_all_pfsibling_axis (val_walker2_fn_t walkerfn, void *cookie1, void *cookie2, val_value_t *startnode, xmlns_id_t mod_nsid, const xmlChar *name, boolean configonly, boolean dblslash, boolean textmode, ncx_xpath_axis_t axis) |
Find all occurances of the specified node for the specified axis. More... | |
void | val_child_move_children (val_value_t *srcval, val_value_t *destval) |
Move all the child nodes from src to dest Source and dest must both be containers! More... | |
status_t | val_child_add_clean (val_editvars_t *editvars, val_value_t *child, val_value_t *parent, dlq_hdr_t *cleanQ) |
Add a child value node to a parent value node This is only called by the agent when adding nodes to a target database. More... | |
status_t | val_child_add_clean2 (val_editvars_t *editvars, val_value_t *child, val_value_t *parent, dlq_hdr_t *cleanQ, boolean check_exists) |
Add a child value node to a parent value node. More... | |
status_t | val_child_add_clean_test (val_value_t *child, val_value_t *parent, dlq_hdr_t *cleanQ) |
Test the add_child_clean. More... | |
status_t | val_child_add_clean3 (val_editvars_t *editvars, val_value_t *child, val_value_t *parent, boolean check_exists) |
Add a child value node to a parent value node. More... | |
void | val_child_mark_default_deleted (val_value_t *val) |
Mark all the leaf-list nodes that are defaults as deleted. More... | |
void | val_child_finish_default_deleted (val_value_t *val) |
Delete all the marked default leaf-list nodes. More... | |
void | val_child_mark_default_undeleted (val_value_t *val) |
Mark all the leaf-list nodes that are defaults as deleted. More... | |
val_value_t * | val_child_first_test (val_value_t *parent, val_hdr_test_fn_t hdr_test_fn, val_test2_fn_t test_fn, void *cookie) |
Get the first child present for this parent that passes the callback tests. More... | |
val_value_t * | val_child_next_test (val_value_t *curchild, val_hdr_test_fn_t hdr_test_fn, val_test2_fn_t test_fn, void *cookie) |
Get the next child present for this parent that passes the callback tests. More... | |
val_value_t * | val_child_hdr_first (const val_child_hdr_t *hdr) |
Get the first entry in the child header. More... | |
val_value_t * | val_child_hdr_last (const val_child_hdr_t *hdr) |
Get the last entry in the child header. More... | |
val_value_t * | val_child_hdr_next (const val_child_hdr_t *hdr, const val_value_t *curval) |
Get the next entry in the child header. More... | |
val_value_t * | val_child_hdr_previous (const val_child_hdr_t *hdr, const val_value_t *curval) |
Get the previous entry in the child header. More... | |
val_value_t * | val_child_hdr_find_match (val_child_hdr_t *hdr, const val_value_t *findval) |
Find the matching entry in the hdr. More... | |
boolean | val_child_find_deleted (const val_value_t *startnode, const val_value_t *delnode) |
Find the deleted node within the startnode. More... | |
val_tree_t * | val_tree_new (void) |
Create a new empty val_tree. More... | |
void | val_tree_free (val_tree_t *val_tree) |
Clean and free the specified val_tree. More... | |
status_t | val_tree_insert (val_value_t *childval, val_tree_t *val_tree, boolean ignore_err, boolean *inserted) |
Add a list entry to the val_tree. More... | |
boolean | val_tree_remove (val_value_t *childval, val_tree_t *val_tree) |
Remove a value node from the specified val_tree. More... | |
status_t | val_tree_swap (val_value_t *newval, val_value_t *childval, val_tree_t *val_tree) |
Change the node in the specified tree. More... | |
void | val_tree_remove_deleted (val_value_t *childval, val_tree_t *val_tree) |
A node is being removed from the tree but not the que because it is marked as VAL_FL_DELETED. More... | |
status_t | val_tree_add_undeleted (val_value_t *childval, val_tree_t *val_tree) |
A node is being added back to the the tree but not the que because it was marked as VAL_FL_DELETED. More... | |
val_value_t * | val_tree_find (const val_value_t *childval, val_tree_t *val_tree) |
Find a value node from the specified val_tree. More... | |
Manages the storage and access of child nodes within a YANG container or list instance.
Child nodes or a list are stored in a queue to preserve order and usually in an AVL tree for fast lookup by key leaf values.
enum val_child_op_t |
status_t val_child_add | ( | val_value_t * | child, |
val_value_t * | parent | ||
) |
Add a child value node to a parent value node.
Replaces val_add_child
child | node to store in the parent |
parent | complex value node with a child header Q |
status_t val_child_add_clean | ( | val_editvars_t * | editvars, |
val_value_t * | child, | ||
val_value_t * | parent, | ||
dlq_hdr_t * | cleanQ | ||
) |
Add a child value node to a parent value node This is only called by the agent when adding nodes to a target database.
Pass in the editvar to use
If the child node being added is part of a choice/case, then all sibling nodes in other cases within the same choice will be deleted
The insert operation will also be check to see if the child is a list oo a leaf-list, which is ordered-by user
The default insert mode is always 'last'
editvars | val_editvars_t struct to use (may be NULL) | |
child | node to store in the parent | |
parent | complex value node with a childQ | |
[out] | cleanQ | address of Q to receive any ncx_backptr_t to val_value_t structs for nodes marked as deleted
|
status_t val_child_add_clean2 | ( | val_editvars_t * | editvars, |
val_value_t * | child, | ||
val_value_t * | parent, | ||
dlq_hdr_t * | cleanQ, | ||
boolean | check_exists | ||
) |
Add a child value node to a parent value node.
This is only called by the agent when adding nodes to a target database.
Pass in the editvar to use
If the child node being added is part of a choice/case, then all sibling nodes in other cases within the same choice will be deleted
The insert operation will also be check to see if the child is a list oo a leaf-list, which is ordered-by user
The default insert mode is always 'last'
editvars | val_editvars_t struct to use (may be NULL) | |
child | node to store in the parent | |
parent | complex value node with a childQ | |
[out] | cleanQ | address of Q to receive any ncx_backptr_t to val_value_t structs for nodes marked as deleted
|
check_exists | TRUE to check if child is a leaf or container or anyxml that exists and delete before adding new one |
status_t val_child_add_clean3 | ( | val_editvars_t * | editvars, |
val_value_t * | child, | ||
val_value_t * | parent, | ||
boolean | check_exists | ||
) |
Add a child value node to a parent value node.
MUST USE THIS VERSION STARTING 22.10-17, 23.10-5, 23.10T-5
This is only called by the agent when adding nodes to a target database.
Pass in the editvar to use
If the child node being added is part of a choice/case, then all sibling nodes in other cases within the same choice will be deleted
The insert operation will also be check to see if the child is a list oo a leaf-list, which is ordered-by user
The default insert mode is always 'last'
editvars | val_editvars_t struct to use (may be NULL) |
child | node to store in the parent |
parent | complex value node with a childQ |
check_exists | TRUE to check if child is a leaf or container or anyxml that exists and delete before adding new one |
status_t val_child_add_clean_test | ( | val_value_t * | child, |
val_value_t * | parent, | ||
dlq_hdr_t * | cleanQ | ||
) |
Test the add_child_clean.
Gather backpointers to any deleted siblings due to the parent choice changing. If this node causes the current case to be deleted then the cleanQ will have backpointers to these nodes.
child | node to store in the parent |
parent | complex value node with a childQ |
cleanQ | address of Q to receive any ncx_backptr_t to val_value_t structs for nodes marked as deleted
|
status_t val_child_add_force | ( | val_value_t * | child, |
val_value_t * | parent | ||
) |
Add a child value node to a parent value node Force add even if Tree Insersion fails.
child | node to store in the parent |
parent | complex value node with a child header Q |
status_t val_child_add_force_last | ( | val_value_t * | child, |
val_value_t * | parent | ||
) |
Add a child value node as last node to a parent value node Force if tree insertion fails.
child | node to store in the parent |
parent | complex value node with a child header Q |
status_t val_child_add_last | ( | val_value_t * | child, |
val_value_t * | parent | ||
) |
Add a child value node as last node to a parent value node.
Simply makes a new last child!!! Force new last child entry
child | node to store in the parent |
parent | complex value node with a child header Q |
void val_child_clean_hdrQ | ( | dlq_hdr_t * | child_hdrQ | ) |
Empty and clean a Q of child headers.
child_hdrQ | Q of agt_val_child_hdr_t to clean |
uint32 val_child_count | ( | val_value_t * | parent | ) |
Get the number of non-deleted children in this parent.
parent | parent val to check |
uint32 val_child_count_nsid | ( | val_value_t * | parent, |
xmlns_id_t | nsid, | ||
const xmlChar * | name, | ||
val_value_t ** | firstval | ||
) |
Get the number of non-deleted children matching the NSID and namestring in this parent.
parent | parent val to search | |
nsid | namespace ID of child | |
name | child name | |
[out] | firstval | address of return first found pointer
|
val_value_t * val_child_find | ( | const val_value_t * | parent, |
const xmlChar * | child_modname, | ||
const xmlChar * | child_name | ||
) |
Find the child node for the specified child name and modname.
parent | parent val to search |
child_modname | modname of child node (NULL to match any module) |
child_name | local-name of child node |
boolean val_child_find_all_ancestors | ( | val_walker2_fn_t | walkerfn, |
void * | cookie1, | ||
void * | cookie2, | ||
val_value_t * | startnode, | ||
xmlns_id_t | mod_nsid, | ||
const xmlChar * | name, | ||
boolean | configonly, | ||
boolean | textmode, | ||
boolean | orself | ||
) |
Find all the ancestor instances of the specified node within the path to root from the current node; use the filter criteria provided.
If the walker function returns TRUE, then the walk will continue; If FALSE it will terminate right away This is an XPath support function for searching the ancestor axis during path evaluation
walkerfn | callback function to use |
cookie1 | cookie1 value to pass to walker fn |
cookie2 | cookie2 value to pass to walker fn |
startnode | node to check |
mod_nsid | module namespace ID; the module with this NSID will be used == 0: the first match in any namespace will be returned; |
name | name of ancestor node to find NULL to match any ancestor name |
configonly | TRUE to skip over non-config nodes FALSE to check all nodes Only used if name == NULL |
textmode | TRUE if just testing for text() nodes name and modname will be ignored in this mode FALSE if using name and modname to filter |
orself | TRUE if axis is really ancestor-or-self FALSE if axis is ancestor |
boolean val_child_find_all_children | ( | val_walker2_fn_t | walkerfn, |
void * | cookie1, | ||
void * | cookie2, | ||
val_value_t * | startnode, | ||
xmlns_id_t | mod_nsid, | ||
const xmlChar * | name, | ||
boolean | configonly, | ||
boolean | textmode | ||
) |
Find all children instances of the specified node(s) The walker fn will be called for each match.
If the walker function returns TRUE, then the walk will continue; If FALSE it will terminate right away This is an XPath support function for searching the child axis during path evaluation
walkerfn | callback function to use |
cookie1 | cookie1 value to pass to walker fn |
cookie2 | cookie2 value to pass to walker fn |
startnode | node to check |
mod_nsid | module namespace ID; the module with this NSID will be used == 0: the first match in any namespace will be returned; |
name | name of child node to find NULL to match any child name |
configonly | TRUE to skip over non-config nodes FALSE to check all nodes Only used if name == NULL |
textmode | TRUE if just testing for text() nodes name and modname will be ignored in this mode FALSE if using name and modname to filter |
boolean val_child_find_all_descendants | ( | val_walker2_fn_t | walkerfn, |
void * | cookie1, | ||
void * | cookie2, | ||
val_value_t * | startnode, | ||
xmlns_id_t | mod_nsid, | ||
const xmlChar * | name, | ||
boolean | configonly, | ||
boolean | textmode, | ||
boolean | orself, | ||
boolean | forceall | ||
) |
Find all occurances of the specified node within the current subtree.
The walker fn will be called for each match.
If the walker function returns TRUE, then the walk will continue; If FALSE it will terminate right away This is an XPath support function for searching the descendant axis during path evaluation
walkerfn | callback function to use |
cookie1 | cookie1 value to pass to walker fn |
cookie2 | cookie2 value to pass to walker fn |
startnode | node to check |
mod_nsid | module namespace ID; the module with this NSID will be used == 0: the first match in any namespace will be returned; |
name | name of descendant node to find NULL to match any descendant name |
configonly | TRUE to skip over non-config nodes FALSE to check all nodes Only used if name == NULL |
textmode | TRUE if just testing for text() nodes name and modname will be ignored in this mode FALSE if using name and modname to filter |
orself | TRUE if axis is really descendant-or-self FALSE if axis is descendant |
forceall | TRUE to invoke the descendant callbacks even if fncalled was true from the current (parent) node; FALSE to skip descendants if fncalled was TRUE |
boolean val_child_find_all_descendants_old | ( | val_walker_fn_t | walkerfn, |
void * | cookie1, | ||
void * | cookie2, | ||
val_value_t * | startnode, | ||
xmlns_id_t | mod_nsid, | ||
const xmlChar * | name, | ||
boolean | configonly, | ||
boolean | textmode, | ||
boolean | orself, | ||
boolean | forceall | ||
) |
Find all occurances of the specified node within the current subtree.
The walker fn will be called for each match.
Called for GET2 val node that has no hdr
If the walker function returns TRUE, then the walk will continue; If FALSE it will terminate right away
walkerfn | callback function to use |
cookie1 | cookie1 value to pass to walker fn |
cookie2 | cookie2 value to pass to walker fn |
startnode | node to check |
mod_nsid | module namespace ID; the module with this NSID will be used == 0: the first match in any namespace will be returned; |
name | name of descendant node to find NULL to match any descendant name |
configonly | TRUE to skip over non-config nodes FALSE to check all nodes Only used if name == NULL |
textmode | TRUE if just testing for text() nodes name and modname will be ignored in this mode FALSE if using name and modname to filter |
orself | TRUE if axis is really descendant-or-self FALSE if axis is descendant |
forceall | TRUE to invoke the descendant callbacks even if fncalled was true from the current (parent) node; FALSE to skip descendants if fncalled was TRUE |
boolean val_child_find_all_pfaxis | ( | val_walker2_fn_t | walkerfn, |
void * | cookie1, | ||
void * | cookie2, | ||
val_value_t * | startnode, | ||
xmlns_id_t | mod_nsid, | ||
const xmlChar * | name, | ||
boolean | configonly, | ||
boolean | dblslash, | ||
boolean | textmode, | ||
ncx_xpath_axis_t | axis | ||
) |
Find all occurances of the specified node for the specified preceding or following axis.
preceding::* following::*
within the current subtree. The walker fn will be called for each match. Because the callbacks will be done in sequential order, starting from the
If the walker function returns TRUE, then the walk will continue; If FALSE it will terminate right away
walkerfn | callback function to use |
cookie1 | cookie1 value to pass to walker fn |
cookie2 | cookie2 value to pass to walker fn |
startnode | node to check |
mod_nsid | module namespace ID; the module with this NSID will be used == 0: the first match in any namespace will be returned; |
name | name of preceding or following node to find NULL to match any node name |
configonly | TRUE to skip over non-config nodes FALSE to check all nodes Only used if name == NULL |
dblslash | TRUE if all decendents of the preceding or following nodes should be checked FALSE only 1 level is checked, not their descendants |
textmode | TRUE if just testing for text() nodes name and modname will be ignored in this mode FALSE if using name and modname to filter |
axis | XPath axis enum to use |
boolean val_child_find_all_pfsibling_axis | ( | val_walker2_fn_t | walkerfn, |
void * | cookie1, | ||
void * | cookie2, | ||
val_value_t * | startnode, | ||
xmlns_id_t | mod_nsid, | ||
const xmlChar * | name, | ||
boolean | configonly, | ||
boolean | dblslash, | ||
boolean | textmode, | ||
ncx_xpath_axis_t | axis | ||
) |
Find all occurances of the specified node for the specified axis.
preceding-sibling::* following-sibling::*
within the current subtree. The walker fn will be called for each match. Because the callbacks will be done in sequential order, starting from the
If the walker function returns TRUE, then the walk will continue; If FALSE it will terminate right away
walkerfn | callback function to use |
cookie1 | cookie1 value to pass to walker fn |
cookie2 | cookie2 value to pass to walker fn |
startnode | node to check |
mod_nsid | module namespace ID; the module with this NSID will be used == 0: the first match in any namespace will be returned; |
name | name of preceding or following node to find NULL to match any node name |
configonly | TRUE to skip over non-config nodes FALSE to check all nodes Only used if name == NULL |
dblslash | TRUE if all decendents of the preceding or following nodes should be checked FALSE only 1 level is checked, not their descendants |
textmode | TRUE if just testing for text() nodes name and modname will be ignored in this mode FALSE if using name and modname to filter |
axis | XPath axis enum to use |
val_value_t * val_child_find_count | ( | const val_value_t * | parent, |
const xmlChar * | child_modname, | ||
const xmlChar * | child_name, | ||
uint32 * | matchcount | ||
) |
Find the child node for the specified child name and modname Get the first instance and also return the count.
parent | parent val to search | |
child_modname | modname of child node (NULL to match any module) | |
child_name | local-name of child node | |
[out] | matchcount | address of return match count
|
boolean val_child_find_deleted | ( | const val_value_t * | startnode, |
const val_value_t * | delnode | ||
) |
Find the deleted node within the startnode.
startnode | top-level node to check all descendants-or-self |
delnode | deleted node to find |
val_child_hdr_t * val_child_find_hdr | ( | val_value_t * | child, |
val_value_t * | parent | ||
) |
Find the child header for the specified child.
child | similar or exact child val to find |
parent | parent val to search |
val_child_hdr_t * val_child_find_hdr_lastmatch | ( | val_value_t * | child, |
val_value_t * | parent, | ||
val_value_t * | lastmatch | ||
) |
Find the child header for the specified child based on the last match.
Does not return the child itself Include a pointer to the last header found
child | similar or exact child val to find |
parent | parent val to search |
lastmatch | lastmatch child |
val_value_t * val_child_find_next | ( | const val_value_t * | parent, |
const xmlChar * | child_modname, | ||
const xmlChar * | child_name, | ||
const val_value_t * | lastmatch | ||
) |
Find the next child header for the specified child.
This function is deprecated! Use val_child_next_same instead!
parent | parent val to search |
child_modname | modname of child node (NULL to match any module) |
child_name | local-name of child node |
lastmatch | optional lastmatch found in correct parent |
val_value_t * val_child_find_nsid | ( | const val_value_t * | parent, |
xmlns_id_t | child_nsid, | ||
const xmlChar * | child_name | ||
) |
Find the child node for the specified child name and namespace ID.
parent | parent val |
child_nsid | module namespace ID of child node |
child_name | local-name of child node to find |
val_value_t * val_child_find_obj | ( | const val_value_t * | parent, |
const obj_template_t * | child_obj | ||
) |
Find the child node for the specified child object header.
parent | parent val |
child_obj | child object template to find a value for |
val_value_t * val_child_find_same | ( | const val_value_t * | child, |
const val_value_t * | parent, | ||
val_child_op_t | child_op | ||
) |
Find the child header for the specified child, which is a different root; e.g., trying to match candidate value in running.
child | similar child val to find |
parent | parent val to search |
child_op | == operation (prev, cur, next) |
val_value_t * val_child_find_same_lastmatch | ( | const val_value_t * | child, |
const val_value_t * | parent, | ||
val_value_t * | lastmatch, | ||
val_child_op_t | child_op | ||
) |
Find the child header for the specified child.
child | similar child val to find |
parent | parent val to search |
lastmatch | optional lastmatch found in correct parent |
child_op | operation (prev, cur, next) |
val_value_t * val_child_find_same_nsid | ( | const val_value_t * | parent, |
xmlns_id_t | child_nsid, | ||
const xmlChar * | child_name, | ||
val_value_t * | curchild, | ||
val_child_op_t | child_op | ||
) |
Find the child node for the specified child name and modname.
parent | parent val |
child_nsid | module namespace ID of child node |
child_name | local-name of child node |
curchild | current child to find an entry after this one |
child_op | operation (prev, cur, next) |
void val_child_finish_default_deleted | ( | val_value_t * | val | ) |
Delete all the marked default leaf-list nodes.
val | val_value_t struct of first leaf-list to check |
val_value_t * val_child_first | ( | const val_value_t * | parent | ) |
Get the first child present for this parent.
parent | parent node |
val_value_t * val_child_first_terminal | ( | const val_value_t * | parent | ) |
Get the first terminal node child present for this parent.
parent | parent nodeto search |
val_value_t * val_child_first_test | ( | val_value_t * | parent, |
val_hdr_test_fn_t | hdr_test_fn, | ||
val_test2_fn_t | test_fn, | ||
void * | cookie | ||
) |
Get the first child present for this parent that passes the callback tests.
Each header will be checked first. If true returned then val_test_fn is checked If both return true then the node is returned as 'first'
parent | parent node |
hdr_test_fn | header test function |
test_fn | value test function |
cookie | opaque user parameter |
val_value_t * val_child_hdr_find_match | ( | val_child_hdr_t * | hdr, |
const val_value_t * | findval | ||
) |
Find the matching entry in the hdr.
hdr | header to check |
findval | value to find |
val_value_t * val_child_hdr_first | ( | const val_child_hdr_t * | hdr | ) |
Get the first entry in the child header.
hdr | header to check |
val_value_t * val_child_hdr_last | ( | const val_child_hdr_t * | hdr | ) |
Get the last entry in the child header.
hdr | header to check |
val_value_t * val_child_hdr_next | ( | const val_child_hdr_t * | hdr, |
const val_value_t * | curval | ||
) |
Get the next entry in the child header.
hdr | header to check |
curval | current value |
val_value_t * val_child_hdr_previous | ( | const val_child_hdr_t * | hdr, |
const val_value_t * | curval | ||
) |
Get the previous entry in the child header.
hdr | header to check |
curval | current value |
status_t val_child_insert | ( | val_value_t * | child, |
val_value_t * | current, | ||
val_value_t * | parent, | ||
op_insertop_t | insert_op | ||
) |
Insert a child value node into a parent value node before or after the specified node.
child | node to store in the parent |
current | last node that was stored in the parent (may be NULL) |
parent | complex value node with a childQ |
insert_op | insert operation enum (first, last, before, after) |
void val_child_mark_default_deleted | ( | val_value_t * | val | ) |
Mark all the leaf-list nodes that are defaults as deleted.
val | val_value_t struct of first leaf-list to check |
void val_child_mark_default_undeleted | ( | val_value_t * | val | ) |
Mark all the leaf-list nodes that are defaults as deleted.
val | val_value_t struct of first leaf-list to check |
void val_child_mark_deleted | ( | val_value_t * | child | ) |
Remove a deleted child value node (mark deleted only)
NEEDS SPECIAL HANDLING FOR agt_val.c
child | node to mark deleted |
void val_child_mark_undeleted | ( | val_value_t * | child | ) |
Re-Add a previously deleted child value node (unmark deleted)
NEEDS SPECIAL HANDLING FOR agt_val.c
child | node to add back |
void val_child_move_children | ( | val_value_t * | srcval, |
val_value_t * | destval | ||
) |
Move all the child nodes from src to dest Source and dest must both be containers!
srcval | source val_value_t struct to move |
destval | destination value struct ot use |
val_value_t * val_child_next | ( | const val_value_t * | curchild | ) |
Get the next child present for the current node Parent must be set.
curchild | current child to get next for |
val_value_t * val_child_next_same | ( | val_value_t * | curnode | ) |
Get the next node of the same type.
curnode | current list entry |
val_value_t * val_child_next_terminal | ( | const val_value_t * | curchild | ) |
Get the next terminal node child present for the current node Parent must be set.
curchild | current child to get next terminal for |
val_value_t * val_child_next_test | ( | val_value_t * | curchild, |
val_hdr_test_fn_t | hdr_test_fn, | ||
val_test2_fn_t | test_fn, | ||
void * | cookie | ||
) |
Get the next child present for this parent that passes the callback tests.
Each header will be checked first. If true returned then val_test_fn is checked If both return true then the node is returned as 'first'
curchild | current node to start next at |
hdr_test_fn | header test function |
test_fn | value test function |
cookie | opaque user parameter |
val_value_t * val_child_prev_same | ( | val_value_t * | curnode | ) |
Get the previous node of the same type.
curnode | current list entry |
void val_child_remove | ( | val_value_t * | child | ) |
Remove a child value node from its parent value node.
child | node to store in the parent |
status_t val_child_swap | ( | val_value_t * | newchild, |
val_value_t * | curchild | ||
) |
Swap a child value node with a current value node.
newchild | node to store in the place of the curchild |
curchild | node to remove from the parent |
status_t val_tree_add_undeleted | ( | val_value_t * | childval, |
val_tree_t * | val_tree | ||
) |
A node is being added back to the the tree but not the que because it was marked as VAL_FL_DELETED.
but there was a rollback so now it is needs to be put back in the tree
childval | child value to add back |
val_tree | val_tree to use for removal |
val_value_t * val_tree_find | ( | const val_value_t * | childval, |
val_tree_t * | val_tree | ||
) |
Find a value node from the specified val_tree.
childval | similar child value to find |
val_tree | val_tree to use for search |
void val_tree_free | ( | val_tree_t * | val_tree | ) |
Clean and free the specified val_tree.
val_tree | tree to clean and free |
status_t val_tree_insert | ( | val_value_t * | childval, |
val_tree_t * | val_tree, | ||
boolean | ignore_err, | ||
boolean * | inserted | ||
) |
Add a list entry to the val_tree.
Before or after the specified node Check for duplicates
childval | child value to add | |
val_tree | val_tree to use for insertion | |
ignore_err | TRUE to return TRUE if skipped because sanity failed | |
[out] | inserted | address of return inserted flag
|
val_tree_t * val_tree_new | ( | void | ) |
Create a new empty val_tree.
boolean val_tree_remove | ( | val_value_t * | childval, |
val_tree_t * | val_tree | ||
) |
Remove a value node from the specified val_tree.
childval | child value to remove |
val_tree | val_tree to use for removal |
void val_tree_remove_deleted | ( | val_value_t * | childval, |
val_tree_t * | val_tree | ||
) |
A node is being removed from the tree but not the que because it is marked as VAL_FL_DELETED.
childval | child value to remove |
val_tree | val_tree to use for removal |
status_t val_tree_swap | ( | val_value_t * | newval, |
val_value_t * | childval, | ||
val_tree_t * | val_tree | ||
) |
Change the node in the specified tree.
newval | child value to take its place |
childval | child value to remove |
val_tree | val_tree to use for removal |