@@ -1247,7 +1247,7 @@ lydjson_parse_any(struct lyd_json_ctx *lydctx, const struct lysc_node *snode, co
12471247 switch (* status ) {
12481248 case LYJSON_OBJECT :
12491249 /* create empty node */
1250- r = lyd_create_any (snode , NULL , LYD_ANYDATA_DATATREE , 1 , 0 , node );
1250+ r = lyd_create_any (snode , NULL , NULL , 0 , 1 , 0 , node );
12511251 LY_CHECK_ERR_GOTO (r , rc = r , cleanup );
12521252 break ;
12531253 case LYJSON_ARRAY :
@@ -1267,20 +1267,21 @@ lydjson_parse_any(struct lyd_json_ctx *lydctx, const struct lysc_node *snode, co
12671267 rc = LY_EMEM ;
12681268 goto cleanup ;
12691269 }
1270- r = lyd_create_any (snode , val , LYD_ANYDATA_JSON , 1 , 0 , node );
1270+ r = lyd_create_any (snode , NULL , val , LYD_NODEHINT_LIST | LYD_NODEHINT_LEAFLIST , 1 , 0 , node );
12711271 LY_CHECK_ERR_GOTO (r , rc = r , cleanup );
12721272 val = NULL ;
12731273 break ;
12741274 case LYJSON_STRING :
12751275 /* string value */
12761276 if (lydctx -> jsonctx -> dynamic ) {
1277- LY_CHECK_GOTO (rc = lyd_create_any (snode , lydctx -> jsonctx -> value , LYD_ANYDATA_STRING , 1 , 0 , node ), cleanup );
1277+ LY_CHECK_GOTO (rc = lyd_create_any (snode , NULL , lydctx -> jsonctx -> value ,
1278+ LYD_VALHINT_STRING | LYD_VALHINT_NUM64 , 1 , 0 , node ), cleanup );
12781279 lydctx -> jsonctx -> dynamic = 0 ;
12791280 } else {
12801281 val = strndup (lydctx -> jsonctx -> value , lydctx -> jsonctx -> value_len );
12811282 LY_CHECK_ERR_GOTO (!val , LOGMEM (lydctx -> jsonctx -> ctx ); rc = LY_EMEM , cleanup );
12821283
1283- r = lyd_create_any (snode , val , LYD_ANYDATA_STRING , 1 , 0 , node );
1284+ r = lyd_create_any (snode , NULL , val , LYD_VALHINT_STRING | LYD_VALHINT_NUM64 , 1 , 0 , node );
12841285 LY_CHECK_ERR_GOTO (r , rc = r , cleanup );
12851286 val = NULL ;
12861287 }
@@ -1293,13 +1294,13 @@ lydjson_parse_any(struct lyd_json_ctx *lydctx, const struct lysc_node *snode, co
12931294 val = strndup (lydctx -> jsonctx -> value , lydctx -> jsonctx -> value_len );
12941295 LY_CHECK_ERR_GOTO (!val , LOGMEM (lydctx -> jsonctx -> ctx ); rc = LY_EMEM , cleanup );
12951296
1296- r = lyd_create_any (snode , val , LYD_ANYDATA_JSON , 1 , 0 , node );
1297+ r = lyd_create_any (snode , NULL , val , ( * status == LYJSON_NUMBER ) ? LYD_VALHINT_DECNUM : LYD_VALHINT_BOOLEAN , 1 , 0 , node );
12971298 LY_CHECK_ERR_GOTO (r , rc = r , cleanup );
12981299 val = NULL ;
12991300 break ;
13001301 case LYJSON_NULL :
13011302 /* no value */
1302- r = lyd_create_any (snode , NULL , LYD_ANYDATA_JSON , 1 , 0 , node );
1303+ r = lyd_create_any (snode , NULL , NULL , LYD_VALHINT_EMPTY , 1 , 0 , node );
13031304 LY_CHECK_ERR_GOTO (r , rc = r , cleanup );
13041305 break ;
13051306 default :
0 commit comments