From 010f6ff55004ece9dd504a7267e279eb6cde9aff Mon Sep 17 00:00:00 2001 From: Johan Dahlin Date: Mon, 31 May 2010 17:54:42 -0300 Subject: [gifunctioninfo] Move out to another file Move out GIFunctionInfo to gifunctioninfo.[ch] --- girepository/girepository.h | 89 +-------------------------------------------- 1 file changed, 2 insertions(+), 87 deletions(-) (limited to 'girepository/girepository.h') diff --git a/girepository/girepository.h b/girepository/girepository.h index e006b5e0..389877c1 100644 --- a/girepository/girepository.h +++ b/girepository/girepository.h @@ -27,7 +27,9 @@ #include #include #include +#include #include +#include G_BEGIN_DECLS @@ -143,93 +145,6 @@ void gi_cclosure_marshal_generic (GClosure *closure, gpointer invocation_hint, gpointer marshal_data); -/* GIFunctionInfo */ - -#define GI_IS_FUNCTION_INFO(info) \ - (g_base_info_get_type((GIBaseInfo*)info) == GI_INFO_TYPE_FUNCTION) - -/** - * GIFunctionInfoFlags: - * @GI_FUNCTION_IS_METHOD: is a method. - * @GI_FUNCTION_IS_CONSTRUCTOR: is a constructor. - * @GI_FUNCTION_IS_GETTER: is a getter of a #GIPropertyInfo. - * @GI_FUNCTION_IS_SETTER: is a setter of a #GIPropertyInfo. - * @GI_FUNCTION_WRAPS_VFUNC: represents a virtual function. - * @GI_FUNCTION_THROWS: the function may throw an error. - * - * Flags for a #GIFunctionInfo struct. - */ -typedef enum -{ - GI_FUNCTION_IS_METHOD = 1 << 0, - GI_FUNCTION_IS_CONSTRUCTOR = 1 << 1, - GI_FUNCTION_IS_GETTER = 1 << 2, - GI_FUNCTION_IS_SETTER = 1 << 3, - GI_FUNCTION_WRAPS_VFUNC = 1 << 4, - GI_FUNCTION_THROWS = 1 << 5 -} GIFunctionInfoFlags; - -const gchar * g_function_info_get_symbol (GIFunctionInfo *info); -GIFunctionInfoFlags g_function_info_get_flags (GIFunctionInfo *info); -GIPropertyInfo * g_function_info_get_property (GIFunctionInfo *info); -GIVFuncInfo * g_function_info_get_vfunc (GIFunctionInfo *info); - -typedef union -{ - gboolean v_boolean; - gint8 v_int8; - guint8 v_uint8; - gint16 v_int16; - guint16 v_uint16; - gint32 v_int32; - guint32 v_uint32; - gint64 v_int64; - guint64 v_uint64; - gfloat v_float; - gdouble v_double; - gshort v_short; - gushort v_ushort; - gint v_int; - guint v_uint; - glong v_long; - gulong v_ulong; - gssize v_ssize; - gsize v_size; - gchar * v_string; - gpointer v_pointer; -} GArgument; - -#define G_INVOKE_ERROR (g_invoke_error_quark ()) -GQuark g_invoke_error_quark (void); - -/** - * GInvokeError: - * @G_INVOKE_ERROR_FAILED: invokation failed, unknown error. - * @G_INVOKE_ERROR_SYMBOL_NOT_FOUND: symbol couldn't be found in any of the - * libraries associated with the typelib of the function. - * @G_INVOKE_ERROR_ARGUMENT_MISMATCH: the arguments provided didn't match - * the expected arguments for the functions type signature. - * - * An error occuring while invoking a function via - * g_function_info_invoke(). - */ - -typedef enum -{ - G_INVOKE_ERROR_FAILED, - G_INVOKE_ERROR_SYMBOL_NOT_FOUND, - G_INVOKE_ERROR_ARGUMENT_MISMATCH -} GInvokeError; - -gboolean g_function_info_invoke (GIFunctionInfo *info, - const GArgument *in_args, - int n_in_args, - const GArgument *out_args, - int n_out_args, - GArgument *return_value, - GError **error); - - /* GICallableInfo */ #define GI_IS_CALLABLE_INFO(info) \ -- cgit v1.2.1