Lines Matching refs:elt
86 const ucl_object_t *elt; in ucl_schema_test_pattern() local
91 while ((elt = ucl_object_iterate (obj, &iter, true)) != NULL) { in ucl_schema_test_pattern()
92 if (regexec (®, ucl_object_key (elt), 0, NULL, 0) == 0) { in ucl_schema_test_pattern()
93 res = elt; in ucl_schema_test_pattern()
116 const ucl_object_t *elt, *cur, *cur_dep; in ucl_schema_validate_dependencies() local
121 elt = ucl_object_lookup (obj, ucl_object_key (cur)); in ucl_schema_validate_dependencies()
122 if (elt != NULL) { in ucl_schema_validate_dependencies()
128 ucl_schema_create_error (err, UCL_SCHEMA_MISSING_DEPENDENCY, elt, in ucl_schema_validate_dependencies()
154 const ucl_object_t *elt, *prop, *found, *additional_schema = NULL, in ucl_schema_validate_object() local
160 while (ret && (elt = ucl_object_iterate (schema, &iter, true)) != NULL) { in ucl_schema_validate_object()
161 if (elt->type == UCL_OBJECT && in ucl_schema_validate_object()
162 strcmp (ucl_object_key (elt), "properties") == 0) { in ucl_schema_validate_object()
164 while (ret && (prop = ucl_object_iterate (elt, &piter, true)) != NULL) { in ucl_schema_validate_object()
172 else if (strcmp (ucl_object_key (elt), "additionalProperties") == 0) { in ucl_schema_validate_object()
173 if (elt->type == UCL_BOOLEAN) { in ucl_schema_validate_object()
174 if (!ucl_object_toboolean (elt)) { in ucl_schema_validate_object()
179 else if (elt->type == UCL_OBJECT) { in ucl_schema_validate_object()
181 additional_schema = elt; in ucl_schema_validate_object()
184 ucl_schema_create_error (err, UCL_SCHEMA_INVALID_SCHEMA, elt, in ucl_schema_validate_object()
190 else if (strcmp (ucl_object_key (elt), "required") == 0) { in ucl_schema_validate_object()
191 if (elt->type == UCL_ARRAY) { in ucl_schema_validate_object()
192 required = elt; in ucl_schema_validate_object()
195 ucl_schema_create_error (err, UCL_SCHEMA_INVALID_SCHEMA, elt, in ucl_schema_validate_object()
201 else if (strcmp (ucl_object_key (elt), "minProperties") == 0 in ucl_schema_validate_object()
202 && ucl_object_toint_safe (elt, &minmax)) { in ucl_schema_validate_object()
211 else if (strcmp (ucl_object_key (elt), "maxProperties") == 0 in ucl_schema_validate_object()
212 && ucl_object_toint_safe (elt, &minmax)) { in ucl_schema_validate_object()
221 else if (strcmp (ucl_object_key (elt), "patternProperties") == 0) { in ucl_schema_validate_object()
225 while (ret && (prop = ucl_object_iterate (elt, &piter, true)) != NULL) { in ucl_schema_validate_object()
236 else if (elt->type == UCL_OBJECT && in ucl_schema_validate_object()
237 strcmp (ucl_object_key (elt), "dependencies") == 0) { in ucl_schema_validate_object()
238 ret = ucl_schema_validate_dependencies (elt, obj, err, root, in ucl_schema_validate_object()
249 while ((elt = ucl_object_iterate_safe (iter, true)) != NULL) { in ucl_schema_validate_object()
250 found = ucl_object_lookup (prop, ucl_object_key (elt)); in ucl_schema_validate_object()
268 ucl_object_key (elt)); in ucl_schema_validate_object()
273 if (!ucl_schema_validate (additional_schema, elt, in ucl_schema_validate_object()
287 while ((elt = ucl_object_iterate (required, &iter, true)) != NULL) { in ucl_schema_validate_object()
288 if (ucl_object_lookup (obj, ucl_object_tostring (elt)) == NULL) { in ucl_schema_validate_object()
291 ucl_object_tostring (elt)); in ucl_schema_validate_object()
307 const ucl_object_t *elt, *test; in ucl_schema_validate_number() local
313 while (ret && (elt = ucl_object_iterate (schema, &iter, true)) != NULL) { in ucl_schema_validate_number()
314 if ((elt->type == UCL_FLOAT || elt->type == UCL_INT) && in ucl_schema_validate_number()
315 strcmp (ucl_object_key (elt), "multipleOf") == 0) { in ucl_schema_validate_number()
316 constraint = ucl_object_todouble (elt); in ucl_schema_validate_number()
318 ucl_schema_create_error (err, UCL_SCHEMA_INVALID_SCHEMA, elt, in ucl_schema_validate_number()
332 else if ((elt->type == UCL_FLOAT || elt->type == UCL_INT) && in ucl_schema_validate_number()
333 strcmp (ucl_object_key (elt), "maximum") == 0) { in ucl_schema_validate_number()
334 constraint = ucl_object_todouble (elt); in ucl_schema_validate_number()
348 else if ((elt->type == UCL_FLOAT || elt->type == UCL_INT) && in ucl_schema_validate_number()
349 strcmp (ucl_object_key (elt), "minimum") == 0) { in ucl_schema_validate_number()
350 constraint = ucl_object_todouble (elt); in ucl_schema_validate_number()
373 const ucl_object_t *elt; in ucl_schema_validate_string() local
381 while (ret && (elt = ucl_object_iterate (schema, &iter, true)) != NULL) { in ucl_schema_validate_string()
382 if (elt->type == UCL_INT && in ucl_schema_validate_string()
383 strcmp (ucl_object_key (elt), "maxLength") == 0) { in ucl_schema_validate_string()
384 constraint = ucl_object_toint (elt); in ucl_schema_validate_string()
393 else if (elt->type == UCL_INT && in ucl_schema_validate_string()
394 strcmp (ucl_object_key (elt), "minLength") == 0) { in ucl_schema_validate_string()
395 constraint = ucl_object_toint (elt); in ucl_schema_validate_string()
405 else if (elt->type == UCL_STRING && in ucl_schema_validate_string()
406 strcmp (ucl_object_key (elt), "pattern") == 0) { in ucl_schema_validate_string()
407 if (regcomp (&re, ucl_object_tostring (elt), in ucl_schema_validate_string()
409 ucl_schema_create_error (err, UCL_SCHEMA_INVALID_SCHEMA, elt, in ucl_schema_validate_string()
410 "cannot compile pattern %s", ucl_object_tostring (elt)); in ucl_schema_validate_string()
417 ucl_object_tostring (elt)); in ucl_schema_validate_string()
451 const ucl_object_t *elt; in ucl_schema_array_is_unique() local
455 while ((elt = ucl_object_iterate (obj, &iter, true)) != NULL) { in ucl_schema_array_is_unique()
456 test.obj = elt; in ucl_schema_array_is_unique()
459 ucl_schema_create_error (err, UCL_SCHEMA_CONSTRAINT, elt, in ucl_schema_array_is_unique()
466 ucl_schema_create_error (err, UCL_SCHEMA_UNKNOWN, elt, in ucl_schema_array_is_unique()
471 node->obj = elt; in ucl_schema_array_is_unique()
489 const ucl_object_t *elt, *it, *found, *additional_schema = NULL, in ucl_schema_validate_array() local
496 while (ret && (elt = ucl_object_iterate (schema, &iter, true)) != NULL) { in ucl_schema_validate_array()
497 if (strcmp (ucl_object_key (elt), "items") == 0) { in ucl_schema_validate_array()
498 if (elt->type == UCL_ARRAY) { in ucl_schema_validate_array()
500 while (ret && (it = ucl_object_iterate (elt, &piter, true)) != NULL) { in ucl_schema_validate_array()
512 else if (elt->type == UCL_OBJECT) { in ucl_schema_validate_array()
515 ret = ucl_schema_validate (elt, it, false, err, root, in ucl_schema_validate_array()
520 ucl_schema_create_error (err, UCL_SCHEMA_INVALID_SCHEMA, elt, in ucl_schema_validate_array()
526 else if (strcmp (ucl_object_key (elt), "additionalItems") == 0) { in ucl_schema_validate_array()
527 if (elt->type == UCL_BOOLEAN) { in ucl_schema_validate_array()
528 if (!ucl_object_toboolean (elt)) { in ucl_schema_validate_array()
533 else if (elt->type == UCL_OBJECT) { in ucl_schema_validate_array()
535 additional_schema = elt; in ucl_schema_validate_array()
538 ucl_schema_create_error (err, UCL_SCHEMA_INVALID_SCHEMA, elt, in ucl_schema_validate_array()
544 else if (elt->type == UCL_BOOLEAN && in ucl_schema_validate_array()
545 strcmp (ucl_object_key (elt), "uniqueItems") == 0) { in ucl_schema_validate_array()
546 need_unique = ucl_object_toboolean (elt); in ucl_schema_validate_array()
548 else if (strcmp (ucl_object_key (elt), "minItems") == 0 in ucl_schema_validate_array()
549 && ucl_object_toint_safe (elt, &minmax)) { in ucl_schema_validate_array()
558 else if (strcmp (ucl_object_key (elt), "maxItems") == 0 in ucl_schema_validate_array()
559 && ucl_object_toint_safe (elt, &minmax)) { in ucl_schema_validate_array()
580 elt = ucl_array_find_index (obj, idx); in ucl_schema_validate_array()
581 while (elt) { in ucl_schema_validate_array()
582 if (!ucl_schema_validate (additional_schema, elt, false, in ucl_schema_validate_array()
587 elt = ucl_array_find_index (obj, idx ++); in ucl_schema_validate_array()
609 const ucl_object_t *elt; in ucl_schema_type_is_allowed() local
620 while ((elt = ucl_object_iterate (type, &iter, true)) != NULL) { in ucl_schema_type_is_allowed()
621 if (ucl_schema_type_is_allowed (elt, obj, err)) { in ucl_schema_type_is_allowed()
665 const ucl_object_t *elt; in ucl_schema_validate_enum() local
668 while ((elt = ucl_object_iterate (en, &iter, true)) != NULL) { in ucl_schema_validate_enum()
669 if (ucl_object_compare (elt, obj) == 0) { in ucl_schema_validate_enum()
886 const ucl_object_t *elt, *cur; in ucl_schema_validate_values() local
889 elt = ucl_object_lookup (schema, "maxValues"); in ucl_schema_validate_values()
890 if (elt != NULL && elt->type == UCL_INT) { in ucl_schema_validate_values()
891 constraint = ucl_object_toint (elt); in ucl_schema_validate_values()
905 elt = ucl_object_lookup (schema, "minValues"); in ucl_schema_validate_values()
906 if (elt != NULL && elt->type == UCL_INT) { in ucl_schema_validate_values()
907 constraint = ucl_object_toint (elt); in ucl_schema_validate_values()
935 const ucl_object_t *elt, *cur, *ref_root; in ucl_schema_validate() local
961 elt = ucl_object_lookup (schema, "enum"); in ucl_schema_validate()
962 if (elt != NULL && elt->type == UCL_ARRAY) { in ucl_schema_validate()
963 if (!ucl_schema_validate_enum (elt, obj, err)) { in ucl_schema_validate()
968 elt = ucl_object_lookup (schema, "allOf"); in ucl_schema_validate()
969 if (elt != NULL && elt->type == UCL_ARRAY) { in ucl_schema_validate()
971 while ((cur = ucl_object_iterate (elt, &iter, true)) != NULL) { in ucl_schema_validate()
979 elt = ucl_object_lookup (schema, "anyOf"); in ucl_schema_validate()
980 if (elt != NULL && elt->type == UCL_ARRAY) { in ucl_schema_validate()
982 while ((cur = ucl_object_iterate (elt, &iter, true)) != NULL) { in ucl_schema_validate()
997 elt = ucl_object_lookup (schema, "oneOf"); in ucl_schema_validate()
998 if (elt != NULL && elt->type == UCL_ARRAY) { in ucl_schema_validate()
1001 while ((cur = ucl_object_iterate (elt, &iter, true)) != NULL) { in ucl_schema_validate()
1015 elt = ucl_object_lookup (schema, "not"); in ucl_schema_validate()
1016 if (elt != NULL && elt->type == UCL_OBJECT) { in ucl_schema_validate()
1017 if (ucl_schema_validate (elt, obj, true, err, root, external_refs)) { in ucl_schema_validate()
1026 elt = ucl_object_lookup (schema, "$ref"); in ucl_schema_validate()
1027 if (elt != NULL) { in ucl_schema_validate()
1029 cur = ucl_schema_resolve_ref (root, ucl_object_tostring (elt), in ucl_schema_validate()
1041 elt = ucl_object_lookup (schema, "type"); in ucl_schema_validate()
1042 if (!ucl_schema_type_is_allowed (elt, obj, err)) { in ucl_schema_validate()