diff options
author | Colin Walters <walters@verbum.org> | 2009-12-16 11:47:19 -0500 |
---|---|---|
committer | Colin Walters <walters@verbum.org> | 2010-05-26 13:00:56 -0400 |
commit | 5589687a1fa5d4c7f15213ee3cd6860a03587ced (patch) | |
tree | fcd147f09b04edd06af55ea8c28c6b7320e8e7b5 /girepository/gtypelib.h | |
parent | 786da5cdd2dfc775c08d127c5e855eb091d24974 (diff) | |
download | gobject-introspection-5589687a1fa5d4c7f15213ee3cd6860a03587ced.tar.gz |
Support (out caller-allocates)
People have wanted support for marking (out) on functions of the
form:
/**
* clutter_color_from_pixel:
* @pixel: A pixel
* @color: (out): Color to initialize with value of @pixel
*/
void
clutter_color_from_pixel (guint32 pixel, ClutterColor *color);
Where the caller is supposed to have allocated the argument; the
C function just initializes it. This patch adds support for this
argument passing style to introspection. In this case, we see the
(out), and notice that there's only a single indirection (*) on
the argument, and assume that this means (out caller-allocates).
https://bugzilla.gnome.org/show_bug.cgi?id=604749
Diffstat (limited to 'girepository/gtypelib.h')
-rw-r--r-- | girepository/gtypelib.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/girepository/gtypelib.h b/girepository/gtypelib.h index 617cb39f..0524efa1 100644 --- a/girepository/gtypelib.h +++ b/girepository/gtypelib.h @@ -349,7 +349,7 @@ typedef union * add another level of indirection to the parameter type. Ie if * the type is uint32 in an out parameter, the function actually * takes an uint32*. - * @dipper: The parameter is a pointer to a struct or object that will + * @caller_allocates: The parameter is a pointer to a struct or object that will * receive an output of the function. * @allow_none: Only meaningful for types which are passed as pointers. * For an in parameter, indicates if it is ok to pass NULL in, for @@ -388,7 +388,7 @@ typedef struct { guint in : 1; guint out : 1; - guint dipper : 1; + guint caller_allocates : 1; guint allow_none : 1; guint optional : 1; guint transfer_ownership : 1; @@ -397,7 +397,7 @@ typedef struct { guint scope : 3; /* <private> */ guint reserved :21; - /* <public> */ + gint8 closure; gint8 destroy; |