libyang CHANGE parsing/validation significantly refactored
diff --git a/src/xpath.h b/src/xpath.h
index 99f7106..865c5f0 100644
--- a/src/xpath.h
+++ b/src/xpath.h
@@ -203,6 +203,7 @@
* this case just pass the first top-level node into \p cur_node and use an enum value for this kind of root
* (#LYXP_NODE_ROOT_CONFIG if \p cur_node has config true, otherwise #LYXP_NODE_ROOT). #LYXP_NODE_TEXT and #LYXP_NODE_ATTR can also be used,
* but there are no use-cases in YANG.
+ * @param[in] local_mod Local module relative to the \p expr. Used only to determine the internal canonical value for identities.
* @param[out] set Result set. Must be valid and in the same libyang context as \p cur_node.
* To be safe, always either zero or cast the \p set to empty. After done using, either cast
* the \p set to empty (if allocated statically) or free it (if allocated dynamically) to
@@ -214,7 +215,7 @@
* @return EXIT_SUCCESS on success, EXIT_FAILURE on unresolved when dependency, -1 on error.
*/
int lyxp_eval(const char *expr, const struct lyd_node *cur_node, enum lyxp_node_type cur_node_type,
- struct lyxp_set *set, int options);
+ const struct lys_module *local_mod, struct lyxp_set *set, int options);
/**
* @brief Get all the partial XPath nodes (atoms) that are required for \p expr to be evaluated.
@@ -264,11 +265,13 @@
* @param[in] set Set to cast.
* @param[in] target Target type to cast \p set into.
* @param[in] cur_node Current (context) data node. Cannot be NULL.
+ * @param[in] local_mod Local expression module.
* @param[in] options Whether to apply some evaluation restrictions.
*
* @return EXIT_SUCCESS on success, -1 on error.
*/
-int lyxp_set_cast(struct lyxp_set *set, enum lyxp_set_type target, const struct lyd_node *cur_node, int options);
+int lyxp_set_cast(struct lyxp_set *set, enum lyxp_set_type target, const struct lyd_node *cur_node,
+ const struct lys_module *local_mod, int options);
/**
* @brief Free contents of an XPath \p set.