diff --git a/libvips/Vips-8.0.metadata b/libvips/Vips-8.0.metadata index 0cdab554..d038ac0c 100644 --- a/libvips/Vips-8.0.metadata +++ b/libvips/Vips-8.0.metadata @@ -6,22 +6,32 @@ ClassMapFn.cls type="GLib.ObjectClass" ArgumentClassMapFn.object_class type="GLib.ObjectClass" ArgumentTable type="GLib.HashTable" -Image.eval#virtual_method skip -Image.invalidate#virtual_method skip -Image.minimise#virtual_method skip -Image.posteval#virtual_method skip -Image.preeval#virtual_method skip -Image.written#virtual_method skip -Image.memory skip -Image.matrix_from_array skip +ArrayDouble.newv skip=false +ArrayImage.newv skip=false +ArrayInt.newv skip=false -Object.close#virtual_method skip -Object.postbuild#virtual_method skip -Object.postclose#virtual_method skip -Object.preclose#virtual_method skip +Image.*#method skip=false +Image.eval#virtual_method name="eval_impl" +Image.invalidate#virtual_method name="invalidate_impl" +Image.minimise#virtual_method name="minimise_impl" +Image.posteval#virtual_method name="posteval_impl" +Image.preeval#virtual_method name="preeval_impl" +Image.written#virtual_method name="written_impl" +Image.written#virtual_method.result out +Image.set_area.free_fn closure=-1 destroy=-1 + +Object.close#virtual_method name="close_impl" +Object.postbuild#virtual_method name="postbuild_impl" +Object.postclose#virtual_method name="postclose_impl" +Object.preclose#virtual_method name="preclose_impl" Object.preclose#method name="do_preclose" +Object.sanity#virtual_method name="sanity_impl" _object_set_member name="set_member" parent="Vips.Object" symbol_type="method" instance_idx=0 +value_set_blob.free_fn closure=-1 destroy=-1 +value_set_area.free_fn closure=-1 destroy=-1 +Area.new.free_fn closure=-1 destroy=-1 + cache_* skip=false name="cache_(.+)" parent="Vips.Cache" col_* skip=false name="col_(.+)" parent="Vips.ColorUtils" tracked_* skip=false name="tracked_(.+)" parent="Vips.Tracked" diff --git a/libvips/iofuncs/header.c b/libvips/iofuncs/header.c index 8f49bc37..b6e0b50f 100644 --- a/libvips/iofuncs/header.c +++ b/libvips/iofuncs/header.c @@ -1545,8 +1545,8 @@ vips_image_get_fields( VipsImage *image ) * vips_image_set_area: * @image: image to attach the metadata to * @name: metadata name - * @free_fn: (scope async): free function for @data - * @data: pointer to area of memory + * @free_fn: (scope async) (nullable): free function for @data + * @data: (transfer full): pointer to area of memory * * Attaches @data as a metadata item on @image under the name @name. When * VIPS no longer needs the metadata, it will be freed with @free_fn. @@ -1622,8 +1622,9 @@ vips_image_get_area( const VipsImage *image, * vips_image_set_blob: * @image: image to attach the metadata to * @name: metadata name - * @free_fn: (scope async): free function for @data - * @data: (array length=length) (element-type guint8): pointer to area of memory + * @free_fn: (scope async) (nullable): free function for @data + * @data: (array length=length) (element-type guint8) (transfer full): pointer to area of + * memory * @length: length of memory area * * Attaches @blob as a metadata item on @image under the name @name. A diff --git a/libvips/iofuncs/type.c b/libvips/iofuncs/type.c index 3dc336a4..affc25de 100644 --- a/libvips/iofuncs/type.c +++ b/libvips/iofuncs/type.c @@ -238,8 +238,8 @@ vips_area_unref( VipsArea *area ) /** * vips_area_new: - * @free_fn: (scope async): @data will be freed with this function - * @data: data will be freed with this function + * @free_fn: (scope async) (nullable): @data will be freed with this function + * @data: (transfer full): data will be freed with this function * * A VipsArea wraps a chunk of memory. It adds reference counting and a free * function. It also keeps a count and a %GType, so the area can be an array. @@ -1511,8 +1511,8 @@ vips_array_image_get_type( void ) /** * vips_value_set_area: * @value: set this value - * @free_fn: (scope async): data will be freed with this function - * @data: set @value to track this pointer + * @free_fn: (scope async) (nullable): data will be freed with this function + * @data: (transfer full): set @value to track this pointer * * Set value to be a ref-counted area of memory with a free function. */ @@ -1646,8 +1646,9 @@ vips_value_set_ref_string( GValue *value, const char *str ) /** * vips_value_set_blob: * @value: (out): GValue to set - * @free_fn: (scope async): free function for @data - * @data: pointer to area of memory + * @free_fn: (scope async) (nullable): free function for @data + * @data: (array length=length) (element-type guint8) (transfer full): pointer to area of + * memory * @length: length of memory area * * Sets @value to hold a @data. When @value is freed, @data will be @@ -1676,7 +1677,8 @@ vips_value_set_blob( GValue *value, /** * vips_value_set_blob_free: * @value: GValue to set - * @data: pointer to area of memory + * @data: (transfer full) (array length=length) (element-type guint8) : pointer to area of + * memory * @length: length of memory area * * Just like vips_value_set_blob(), but when @@ -1712,7 +1714,8 @@ vips_value_set_blob_free( GValue *value, void *data, size_t length ) * * See also: vips_value_set_blob() * - * Returns: (transfer none): The pointer held by @value. + * Returns: (transfer none) (array length=length) (element-type guint8): The pointer held + * by @value. */ void * vips_value_get_blob( const GValue *value, size_t *length )