Skip to content

Commit aead67e

Browse files
committed
schema diff UPDATE support for parsed ext-instances
Compiled ext-instances improved and source files split.
1 parent b45dba1 commit aead67e

14 files changed

+3389
-2293
lines changed

CMakeLists.txt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -139,7 +139,9 @@ set(libsrc
139139
src/schema_compile_node.c
140140
src/schema_compile_amend.c
141141
src/schema_features.c
142-
src/schema_diff_change.c
142+
src/schema_diff.c
143+
src/schema_diff_change_compiled.c
144+
src/schema_diff_change_parsed.c
143145
src/schema_diff_tree.c
144146
src/tree_data_sorted.c
145147
src/tree_schema.c

modules/ietf-yang-schema-comparison@2025-10-20.yang

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -953,6 +953,7 @@ module ietf-yang-schema-comparison {
953953
description
954954
"Reference substatement value.";
955955
}
956+
uses ext-instance-stmts;
956957
}
957958
container include {
958959
if-feature parsed-schema;
@@ -981,6 +982,7 @@ module ietf-yang-schema-comparison {
981982
description
982983
"Reference substatement value.";
983984
}
985+
uses ext-instance-stmts;
984986
}
985987
leaf organization {
986988
type string;
@@ -1030,6 +1032,7 @@ module ietf-yang-schema-comparison {
10301032
description
10311033
"Reference substatement value.";
10321034
}
1035+
uses ext-instance-stmts;
10331036
}
10341037
container feature {
10351038
if-feature parsed-schema;
@@ -1055,6 +1058,7 @@ module ietf-yang-schema-comparison {
10551058
description
10561059
"Reference substatement value.";
10571060
}
1061+
uses ext-instance-stmts;
10581062
}
10591063
container identity {
10601064
description
@@ -1151,6 +1155,7 @@ module ietf-yang-schema-comparison {
11511155
description
11521156
"Reference substatement value.";
11531157
}
1158+
uses ext-instance-stmts;
11541159
}
11551160
container ext-instance {
11561161
presence

src/parser_common.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3554,7 +3554,7 @@ lysp_stmt_parse(struct lysp_ctx *pctx, const struct lysp_stmt *stmt, void **resu
35543554
}
35553555

35563556
LY_ERR
3557-
lys_parser_ext_instance_stmt(struct lysp_ctx *pctx, struct lysp_ext_substmt *substmt, struct lysp_stmt *stmt)
3557+
lys_parser_ext_instance_stmt(struct lysp_ctx *pctx, struct lysp_ext_substmt *substmt, const struct lysp_stmt *stmt)
35583558
{
35593559
LY_ERR rc = LY_SUCCESS;
35603560

src/parser_internal.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -457,6 +457,6 @@ LY_ERR lyd_parser_node_insert(struct lyd_node *parent, struct lyd_node **first_p
457457
* @param[in] stmt Parsed generic statement to process.
458458
* @return LY_ERR value.
459459
*/
460-
LY_ERR lys_parser_ext_instance_stmt(struct lysp_ctx *pctx, struct lysp_ext_substmt *substmt, struct lysp_stmt *stmt);
460+
LY_ERR lys_parser_ext_instance_stmt(struct lysp_ctx *pctx, struct lysp_ext_substmt *substmt, const struct lysp_stmt *stmt);
461461

462462
#endif /* LY_PARSER_INTERNAL_H_ */

0 commit comments

Comments
 (0)