mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2024-12-25 23:16:14 +01:00
Add struct offsets to field and vfunc elements.
2005-05-22 Matthias Clasen <mclasen@redhat.com> * tests/*: Add struct offsets to field and vfunc elements. * src/generate.c (write_vfunc_info): Write offset information for vfuncs. * src/gidlnode.c (g_idl_node_build_metadata): Write the struct offsets into the metadata. * src/gidlparser.c: Parse the offset attributes of field and vfunc elements. * src/gidlnode.h: Add offset members to field and vfunc nodes.
This commit is contained in:
parent
1ae704b2b7
commit
b1cf4d87c9
@ -657,10 +657,12 @@ write_vfunc_info (const gchar *namespace,
|
|||||||
GIVFuncInfoFlags flags;
|
GIVFuncInfoFlags flags;
|
||||||
const gchar *name;
|
const gchar *name;
|
||||||
gboolean deprecated;
|
gboolean deprecated;
|
||||||
|
gint offset;
|
||||||
|
|
||||||
name = g_base_info_get_name ((GIBaseInfo *)info);
|
name = g_base_info_get_name ((GIBaseInfo *)info);
|
||||||
flags = g_vfunc_info_get_flags (info);
|
flags = g_vfunc_info_get_flags (info);
|
||||||
deprecated = g_base_info_is_deprecated ((GIBaseInfo *)info);
|
deprecated = g_base_info_is_deprecated ((GIBaseInfo *)info);
|
||||||
|
offset = g_vfunc_info_get_offset (info);
|
||||||
|
|
||||||
g_fprintf (file, " <vfunc name=\"%s\"", name);
|
g_fprintf (file, " <vfunc name=\"%s\"", name);
|
||||||
|
|
||||||
@ -675,6 +677,7 @@ write_vfunc_info (const gchar *namespace,
|
|||||||
else if (flags & GI_VFUNC_MUST_NOT_OVERRIDE)
|
else if (flags & GI_VFUNC_MUST_NOT_OVERRIDE)
|
||||||
g_fprintf (file, " override=\"never\"");
|
g_fprintf (file, " override=\"never\"");
|
||||||
|
|
||||||
|
g_fprintf (file, " offset=\"%d\"", offset);
|
||||||
g_fprintf (file, ">\n");
|
g_fprintf (file, ">\n");
|
||||||
|
|
||||||
write_callable_info (namespace, (GICallableInfo*)info, file, 6);
|
write_callable_info (namespace, (GICallableInfo*)info, file, 6);
|
||||||
|
Loading…
Reference in New Issue
Block a user