Lines Matching full:object
118 …* by loosing floating point. Every object may be converted to a string by #ucl_object_tostring_for…
122 UCL_OBJECT = 0, /**< UCL object - key/value pairs */
147 * that the input memory is not freed if an object is in use. Moreover, if you want to use
181 * Basic flags for an object (can use up to 12 bits as higher 4 bits are used
185 UCL_OBJECT_ALLOCATED_KEY = (1 << 0), /**< An object has key allocated internally */
186 UCL_OBJECT_ALLOCATED_VALUE = (1 << 1), /**< An object has a string value allocated internally */
187 UCL_OBJECT_NEED_KEY_ESCAPE = (1 << 2), /**< The key of an object need to be escaped on output */
188 UCL_OBJECT_EPHEMERAL = (1 << 3), /**< Temporary object that does not need to be freed really */
190 UCL_OBJECT_MULTIVALUE = (1 << 5), /**< Object is a key with multiple values */
191 UCL_OBJECT_INHERITED = (1 << 6), /**< Object has been inherited from another */
192 UCL_OBJECT_BINARY = (1 << 7), /**< Object contains raw binary data */
193 UCL_OBJECT_SQUOTED = (1 << 8) /**< Object has been enclosed in single quotes */
201 UCL_DUPLICATE_MERGE, /**< Merge new object with old one */
217 * UCL object structure. Please mention that the most of fields should not be touched by
225 int64_t iv; /**< Int value of an object */
226 const char *sv; /**< String value of an object */
227 double dv; /**< Double value of an object */
229 void *ov; /**< Object */
232 const char *key; /**< Key of an object */
236 uint32_t len; /**< Size of an object */
238 uint16_t flags; /**< Object flags */
259 * Copy and return a key of an object, returned key is zero-terminated
260 * @param obj CL object
266 * Copy and return a string value of an object, returned key is zero-terminated
267 * @param obj CL object
268 * @return zero terminated string representation of object value
273 * Creates a new object
274 * @return new object
279 * Create new object with type specified
280 * @param type type of a new object
281 * @return new object
286 * Create new object with type and priority specified
287 * @param type type of a new object
288 * @param priority priority of an object
289 * @return new object
295 * Create new object with userdata dtor
299 * @return new object
305 * Perform deep copy of an object copying everything
306 * @param other object to copy
307 * @return new object with refcount equal to 1
313 * Return the type of an object
314 * @return the object type
319 * Converts ucl object type to its string representation
320 * @param type type of object
334 * Convert any string to an ucl object making the specified transformations
338 * @return new object
344 * Create a UCL object from the specified string
346 * @return new object
351 * Create a UCL object from the specified string
354 * @return new object
360 * Create an object from an integer number
362 * @return new object
367 * Create an object from a float number
369 * @return new object
374 * Create an object from a boolean
376 * @return new object
381 * Insert a object 'elt' to the hash 'top' and associate it with key 'key'
382 * @param top destination object (must be of type UCL_OBJECT)
384 * @param key key to associate with this object (either const or preallocated)
393 …* Replace a object 'elt' to the hash 'top' and associate it with key 'key', old object will be unr…
394 * if no object has been found this function works like ucl_object_insert_key()
395 * @param top destination object (must be of type UCL_OBJECT)
397 * @param key key to associate with this object (either const or preallocated)
406 * Merge the keys from one object to another object. Overwrite on conflict
407 * @param top destination object (must be of type UCL_OBJECT)
415 * Delete a object associated with key 'key', old object will be unrefered,
416 * @param top object
417 * @param key key associated to the object to remove
424 * Delete a object associated with key 'key', old object will be unrefered,
425 * @param top object
426 * @param key key associated to the object to remove
433 * Removes `key` from `top` object, returning the object that was removed. This
434 * object is not released, caller must unref the returned object when it is no
436 * @param top object
439 * @return removed object or NULL if object has not been found
445 * Removes `key` from `top` object returning the object that was removed. This
446 * object is not released, caller must unref the returned object when it is no
448 * @param top object
450 * @return removed object or NULL if object has not been found
456 * Insert a object 'elt' to the hash 'top' and associate it with key 'key', if
458 * @param top destination object (must be of type UCL_OBJECT)
460 * @param key key to associate with this object (either const or preallocated)
469 * Reserve space in ucl array or object for `elt` elements
470 * @param obj object to reserve
471 * @param reserved size to reserve in an object
477 * Append an element to the end of array object
478 * @param top destination object (must NOT be NULL)
486 * Append an element to the start of array object
487 * @param top destination object (must NOT be NULL)
505 * Removes an element `elt` from the array `top`, returning the object that was
506 * removed. This object is not released, caller must unref the returned object
508 * @param top array ucl object
517 * @param top array ucl object
524 * @param top array ucl object
530 * Removes the last element from the array `top`, returning the object that was
531 * removed. This object is not released, caller must unref the returned object
533 * @param top array ucl object
539 * Removes the first element from the array `top`, returning the object that was
540 * removed. This object is not released, caller must unref the returned object
542 * @param top array ucl object
549 * @param top object to get size from (must be of type UCL_ARRAY)
555 * Return object identified by index of the array `top`
556 * @param top object to get a key from (must be of type UCL_ARRAY)
558 * @return object at the specified index or NULL if index is not found
565 * @param top object to get a key from (must be of type UCL_ARRAY)
573 * Replace an element in an array with a different element, returning the object
574 * that was replaced. This object is not released, caller must unref the
575 * returned object when it is no longer needed.
576 * @param top destination object (must be of type UCL_ARRAY)
579 * @return object that was replaced or NULL if index is not found
595 * Converts an object to double value
596 * @param obj CL object
604 * @param obj CL object
610 * Converts an object to integer value
611 * @param obj CL object
619 * @param obj CL object
625 * Converts an object to boolean value
626 * @param obj CL object
634 * @param obj CL object
640 * Converts an object to string value
641 * @param obj CL object
649 * @param obj CL object
655 * Convert any object to a string in JSON notation if needed
656 * @param obj CL object
664 * @param obj CL object
674 * @param obj CL object
680 * Return object identified by a key in the specified object
681 * @param obj object to get a key from (must be of type UCL_OBJECT)
683 * @return object matching the specified key or NULL if key was not found
690 * Return object identified by a key in the specified object, if the first key is
694 * @param obj object to get a key from (must be of type UCL_OBJECT)
697 * @return object matching the specified key or NULL if key was not found
704 * Return object identified by a fixed size key in the specified object
705 * @param obj object to get a key from (must be of type UCL_OBJECT)
708 * @return object matching the specified key or NULL if key was not found
715 * Return object identified by dot notation string
716 * @param obj object to search in
718 * @return object matched the specified path or NULL if path is not found
725 * Return object identified by object notation string using arbitrary delimiter
726 * @param obj object to search in
729 * @return object matched the specified path or NULL if path is not found
736 * Returns a key of an object as a NULL terminated string
737 * @param obj CL object
743 * Returns a key of an object as a fixed size string (may be more efficient)
744 * @param obj CL object
751 * Increase reference count for an object
752 * @param obj object to ref
753 * @return the referenced object
758 * Free ucl object
759 * @param obj ucl object to free
764 * Decrease reference count for an object
765 * @param obj object to unref
771 * @param o1 the first object
772 * @param o2 the second object
784 * @param o1 the first object
785 * @param o2 the second object
809 * Sorts keys in object in place
817 * Get the priority for specific UCL object
818 * @param obj any ucl object
819 * @return priority of an object
824 * Set explicit priority of an object.
825 * @param obj any ucl object
832 * Opaque iterator object
837 * Get next key from an object
838 * @param obj object to iterate
843 * @return the next object or NULL
852 * Create new safe iterator for the specified object
853 * @param obj object to iterate
854 * @return new iterator object that should be used with safe iterators API only
859 * Check safe iterator object after performing some operations on it
868 * Reset initialized iterator to a new object
869 * @param obj new object to iterate
870 * @return modified iterator object
876 * Get the next object from the `obj`. This function iterates over arrays, objects
880 * @return the next object in sequence
894 * Get the next object from the `obj`. This function iterates over arrays, objects
898 * @return the next object in sequence
905 * @param it safe iterator object
923 * @param arguments arguments object
936 * @param arguments arguments object
951 * Creates new parser object
953 * @return new parser object
960 * @param parser parser object
969 * @param parser parser object
976 * @param parser parser object
988 * @param parser parser object
1014 * @param parser parser object
1053 * Insert new chunk to a parser (must have previously processed data with an existing top object)
1078 * Load ucl object from a string
1088 * Load ucl object from a string
1173 * Provide a UCL_ARRAY of paths to search for include files. The object is
1174 * copied so caller must unref the object.
1183 * Get a top object for a parser (refcount is increased)
1186 * @return top parser object or NULL
1191 * Get the current stack object as stack accessor function for use in macro
1193 * @param parser parser object
1195 * @return current stack object or NULL
1215 * @param parser parser object
1222 * @param parser parser object
1229 * @param parser parser object
1236 * @param parser parser object
1243 * @param parser parser object
1248 * Free ucl parser object
1249 * @param parser parser object
1255 * refcount to prevent this object to be destroyed on parser's destruction
1262 * Utility function to find a comment object for the specified object in the input
1263 * @param comments comments object
1264 * @param srch search object
1271 * Move comment from `from` object to `to` object
1272 * @param comments comments object
1273 * @param what source object
1274 * @param with destination object
1281 * Adds a new comment for an object
1282 * @param comments comments object
1283 * @param obj object to add comment to
1291 * @param parser parser object
1302 * @param parser parser object
1312 * @param parser parser object
1356 * @param parser parser object
1372 * @param parser parser object
1412 /** Start ucl object */
1415 /** End ucl object */
1439 /** Top level object */
1446 * Emit object to a string
1447 * @param obj object
1449 * #UCL_EMIT_CONFIG then emit config like object
1450 * @return dump of an object (must be freed after using) or NULL in case of error
1456 * Emit object to a string that can contain `\0` inside
1457 * @param obj object
1459 * #UCL_EMIT_CONFIG then emit config like object
1461 * @return dump of an object (must be freed after using) or NULL in case of error
1467 * Emit object to a string
1468 * @param obj object
1470 * #UCL_EMIT_CONFIG then emit config like object
1473 * @return dump of an object (must be freed after using) or NULL in case of error
1481 * Start streamlined UCL object emitter
1482 * @param obj top UCL object
1493 * Start object or array container for the streamlined output
1495 * @param obj container object
1500 * Add a complete UCL object to streamlined output
1502 * @param obj object to output
1520 * Returns functions to emit object to memory
1528 * Returns functions to emit object to FILE *
1529 * @param fp FILE * object
1535 * Returns functions to emit object to a file descriptor
1562 UCL_SCHEMA_TYPE_MISMATCH, /**< type of object is incorrect */
1579 const ucl_object_t *obj; /**< object where error occurred */
1583 * Validate object `obj` using schema object `schema`.
1584 * @param schema schema object
1585 * @param obj object to validate
1594 * Validate object `obj` using schema object `schema` and root schema at `root`.
1595 * @param schema schema object
1596 * @param obj object to validate
1597 * @param root root schema object
1608 * Validate object `obj` using schema object `schema` and root schema at `root`
1610 * @param schema schema object
1611 * @param obj object to validate
1612 * @param root root schema object