[pygobject/invoke-rewrite] [gi] revert pygi-argument.h and move the invoke-ng code to pygi-marshal.h



commit cb30d00d1c92e73d9bfb08cc7b600a5aa70f2fc0
Author: John (J5) Palmieri <johnp redhat com>
Date:   Tue Mar 22 14:46:29 2011 -0400

    [gi] revert pygi-argument.h and move the invoke-ng code to pygi-marshal.h

 gi/pygi-argument.h |  268 +-----------------------------------------
 gi/pygi-marshal.h  |  336 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 337 insertions(+), 267 deletions(-)
---
diff --git a/gi/pygi-argument.h b/gi/pygi-argument.h
index d456747..7224c75 100644
--- a/gi/pygi-argument.h
+++ b/gi/pygi-argument.h
@@ -26,10 +26,9 @@
 
 #include <girepository.h>
 
-#include "pygi-private.h"
-
 G_BEGIN_DECLS
 
+
 /* Private */
 gint _pygi_g_type_interface_check_object (GIBaseInfo *info,
                                           PyObject   *object);
@@ -66,271 +65,6 @@ void _pygi_argument_release (GIArgument   *arg,
 
 void _pygi_argument_init (void);
 
-
-/*** argument marshaling and validating routines ***/
-gboolean _pygi_marshal_in_void        (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       PyObject          *py_arg,
-                                       GIArgument        *arg);
-gboolean _pygi_marshal_in_boolean     (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       PyObject          *py_arg,
-                                       GIArgument        *arg);
-gboolean _pygi_marshal_in_int8        (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       PyObject          *py_arg,
-                                       GIArgument        *arg);
-gboolean _pygi_marshal_in_uint8       (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       PyObject          *py_arg,
-                                       GIArgument        *arg);
-gboolean _pygi_marshal_in_int16       (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       PyObject          *py_arg,
-                                       GIArgument        *arg);
-gboolean _pygi_marshal_in_uint16      (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       PyObject          *py_arg,
-                                       GIArgument        *arg);
-gboolean _pygi_marshal_in_int32       (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       PyObject          *py_arg,
-                                       GIArgument        *arg);
-gboolean _pygi_marshal_in_uint32      (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       PyObject          *py_arg,
-                                       GIArgument        *arg);
-gboolean _pygi_marshal_in_int64       (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       PyObject          *py_arg,
-                                       GIArgument        *arg);
-gboolean _pygi_marshal_in_uint64      (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       PyObject          *py_arg,
-                                       GIArgument        *arg);
-gboolean _pygi_marshal_in_float       (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       PyObject          *py_arg,
-                                       GIArgument        *arg);
-gboolean _pygi_marshal_in_double      (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       PyObject          *py_arg,
-                                       GIArgument        *arg);
-gboolean _pygi_marshal_in_unichar     (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       PyObject          *py_arg,
-                                       GIArgument        *arg);
-gboolean _pygi_marshal_in_gtype       (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       PyObject          *py_arg,
-                                       GIArgument        *arg);
-gboolean _pygi_marshal_in_utf8        (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       PyObject          *py_arg,
-                                       GIArgument        *arg);
-gboolean _pygi_marshal_in_filename    (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       PyObject          *py_arg,
-                                       GIArgument        *arg);
-gboolean _pygi_marshal_in_array       (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       PyObject          *py_arg,
-                                       GIArgument        *arg);
-gboolean _pygi_marshal_in_glist       (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       PyObject          *py_arg,
-                                       GIArgument        *arg);
-gboolean _pygi_marshal_in_gslist      (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       PyObject          *py_arg,
-                                       GIArgument        *arg);
-gboolean _pygi_marshal_in_ghash       (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       PyObject          *py_arg,
-                                       GIArgument        *arg);
-gboolean _pygi_marshal_in_gerror      (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       PyObject          *py_arg,
-                                       GIArgument        *arg);
-gboolean _pygi_marshal_in_interface_callback (PyGIInvokeState   *state,
-                                              PyGIFunctionCache *function_cache,
-                                              PyGIArgCache      *arg_cache,
-                                              PyObject          *py_arg,
-                                              GIArgument        *arg);
-gboolean _pygi_marshal_in_interface_enum     (PyGIInvokeState   *state,
-                                              PyGIFunctionCache *function_cache,
-                                              PyGIArgCache      *arg_cache,
-                                              PyObject          *py_arg,
-                                              GIArgument        *arg);
-gboolean _pygi_marshal_in_interface_flags    (PyGIInvokeState   *state,
-                                              PyGIFunctionCache *function_cache,
-                                              PyGIArgCache      *arg_cache,
-                                              PyObject          *py_arg,
-                                              GIArgument        *arg);
-gboolean _pygi_marshal_in_interface_struct   (PyGIInvokeState   *state,
-                                              PyGIFunctionCache *function_cache,
-                                              PyGIArgCache      *arg_cache,
-                                              PyObject          *py_arg,
-                                              GIArgument        *arg);
-gboolean _pygi_marshal_in_interface_interface(PyGIInvokeState   *state,
-                                              PyGIFunctionCache *function_cache,
-                                              PyGIArgCache      *arg_cache,
-                                              PyObject          *py_arg,
-                                              GIArgument        *arg);
-gboolean _pygi_marshal_in_interface_boxed    (PyGIInvokeState   *state,
-                                              PyGIFunctionCache *function_cache,
-                                              PyGIArgCache      *arg_cache,
-                                              PyObject          *py_arg,
-                                              GIArgument        *arg);
-gboolean _pygi_marshal_in_interface_object   (PyGIInvokeState   *state,
-                                              PyGIFunctionCache *function_cache,
-                                              PyGIArgCache      *arg_cache,
-                                              PyObject          *py_arg,
-                                              GIArgument        *arg);
-gboolean _pygi_marshal_in_interface_union    (PyGIInvokeState   *state,
-                                              PyGIFunctionCache *function_cache,
-                                              PyGIArgCache      *arg_cache,
-                                              PyObject          *py_arg,
-                                              GIArgument        *arg);
-
-PyObject *_pygi_marshal_out_void      (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       GIArgument        *arg);
-PyObject *_pygi_marshal_out_boolean   (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       GIArgument        *arg);
-PyObject *_pygi_marshal_out_int8      (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       GIArgument        *arg);
-PyObject *_pygi_marshal_out_uint8     (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       GIArgument        *arg);
-PyObject *_pygi_marshal_out_int16     (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       GIArgument        *arg);
-PyObject *_pygi_marshal_out_uint16    (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       GIArgument        *arg);
-PyObject *_pygi_marshal_out_int32     (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       GIArgument        *arg);
-PyObject *_pygi_marshal_out_uint32    (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       GIArgument        *arg);
-PyObject *_pygi_marshal_out_int64     (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       GIArgument        *arg);
-PyObject *_pygi_marshal_out_uint64    (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       GIArgument        *arg);
-PyObject *_pygi_marshal_out_float     (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       GIArgument        *arg);
-PyObject *_pygi_marshal_out_double    (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       GIArgument        *arg);
-PyObject *_pygi_marshal_out_unichar   (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       GIArgument        *arg);
-PyObject *_pygi_marshal_out_gtype     (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       GIArgument        *arg);
-PyObject *_pygi_marshal_out_utf8      (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       GIArgument        *arg);
-PyObject *_pygi_marshal_out_filename  (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       GIArgument        *arg);
-PyObject *_pygi_marshal_out_array     (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       GIArgument        *arg);
-PyObject *_pygi_marshal_out_glist     (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       GIArgument        *arg);
-PyObject *_pygi_marshal_out_gslist    (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       GIArgument        *arg);
-PyObject *_pygi_marshal_out_ghash     (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       GIArgument        *arg);
-PyObject *_pygi_marshal_out_gerror    (PyGIInvokeState   *state,
-                                       PyGIFunctionCache *function_cache,
-                                       PyGIArgCache      *arg_cache,
-                                       GIArgument        *arg);
-PyObject *_pygi_marshal_out_interface_callback(PyGIInvokeState   *state,
-                                              PyGIFunctionCache *function_cache,
-                                              PyGIArgCache      *arg_cache,
-                                              GIArgument        *arg);
-PyObject *_pygi_marshal_out_interface_enum   (PyGIInvokeState   *state,
-                                              PyGIFunctionCache *function_cache,
-                                              PyGIArgCache      *arg_cache,
-                                              GIArgument        *arg);
-PyObject *_pygi_marshal_out_interface_flags  (PyGIInvokeState   *state,
-                                              PyGIFunctionCache *function_cache,
-                                              PyGIArgCache      *arg_cache,
-                                              GIArgument        *arg);
-PyObject *_pygi_marshal_out_interface_struct (PyGIInvokeState   *state,
-                                              PyGIFunctionCache *function_cache,
-                                              PyGIArgCache      *arg_cache,
-                                              GIArgument        *arg);
-PyObject *_pygi_marshal_out_interface_interface(PyGIInvokeState   *state,
-                                              PyGIFunctionCache *function_cache,
-                                              PyGIArgCache      *arg_cache,
-                                              GIArgument        *arg);
-PyObject *_pygi_marshal_out_interface_boxed  (PyGIInvokeState   *state,
-                                              PyGIFunctionCache *function_cache,
-                                              PyGIArgCache      *arg_cache,
-                                              GIArgument        *arg);
-PyObject *_pygi_marshal_out_interface_object (PyGIInvokeState   *state,
-                                              PyGIFunctionCache *function_cache,
-                                              PyGIArgCache      *arg_cache,
-                                              GIArgument        *arg);
-PyObject *_pygi_marshal_out_interface_union  (PyGIInvokeState   *state,
-                                              PyGIFunctionCache *function_cache,
-                                              PyGIArgCache      *arg_cache,
-                                              GIArgument        *arg);
-
 G_END_DECLS
 
 #endif /* __PYGI_ARGUMENT_H__ */
diff --git a/gi/pygi-marshal.h b/gi/pygi-marshal.h
new file mode 100644
index 0000000..d456747
--- /dev/null
+++ b/gi/pygi-marshal.h
@@ -0,0 +1,336 @@
+/* -*- Mode: C; c-basic-offset: 4 -*-
+ * vim: tabstop=4 shiftwidth=4 expandtab
+ *
+ * Copyright (C) 2005-2009 Johan Dahlin <johan gnome org>
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301
+ * USA
+ */
+
+#ifndef __PYGI_ARGUMENT_H__
+#define __PYGI_ARGUMENT_H__
+
+#include <Python.h>
+
+#include <girepository.h>
+
+#include "pygi-private.h"
+
+G_BEGIN_DECLS
+
+/* Private */
+gint _pygi_g_type_interface_check_object (GIBaseInfo *info,
+                                          PyObject   *object);
+
+gint _pygi_g_type_info_check_object (GITypeInfo *type_info,
+                                     PyObject   *object,
+                                     gboolean   allow_none);
+
+gint _pygi_g_registered_type_info_check_object (GIRegisteredTypeInfo *info,
+                                                gboolean              is_instance,
+                                                PyObject             *object);
+
+
+GArray* _pygi_argument_to_array (GIArgument  *arg,
+                                 GIArgument  *args[],
+                                 GITypeInfo *type_info,
+                                 gboolean    is_method);
+
+GIArgument _pygi_argument_from_object (PyObject   *object,
+                                      GITypeInfo *type_info,
+                                      GITransfer  transfer);
+
+PyObject* _pygi_argument_to_object (GIArgument  *arg,
+                                    GITypeInfo *type_info,
+                                    GITransfer  transfer);
+
+GIArgument _pygi_argument_from_g_value(const GValue *value,
+                                       GITypeInfo *type_info);
+
+void _pygi_argument_release (GIArgument   *arg,
+                             GITypeInfo  *type_info,
+                             GITransfer   transfer,
+                             GIDirection  direction);
+
+void _pygi_argument_init (void);
+
+
+/*** argument marshaling and validating routines ***/
+gboolean _pygi_marshal_in_void        (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       PyObject          *py_arg,
+                                       GIArgument        *arg);
+gboolean _pygi_marshal_in_boolean     (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       PyObject          *py_arg,
+                                       GIArgument        *arg);
+gboolean _pygi_marshal_in_int8        (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       PyObject          *py_arg,
+                                       GIArgument        *arg);
+gboolean _pygi_marshal_in_uint8       (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       PyObject          *py_arg,
+                                       GIArgument        *arg);
+gboolean _pygi_marshal_in_int16       (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       PyObject          *py_arg,
+                                       GIArgument        *arg);
+gboolean _pygi_marshal_in_uint16      (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       PyObject          *py_arg,
+                                       GIArgument        *arg);
+gboolean _pygi_marshal_in_int32       (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       PyObject          *py_arg,
+                                       GIArgument        *arg);
+gboolean _pygi_marshal_in_uint32      (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       PyObject          *py_arg,
+                                       GIArgument        *arg);
+gboolean _pygi_marshal_in_int64       (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       PyObject          *py_arg,
+                                       GIArgument        *arg);
+gboolean _pygi_marshal_in_uint64      (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       PyObject          *py_arg,
+                                       GIArgument        *arg);
+gboolean _pygi_marshal_in_float       (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       PyObject          *py_arg,
+                                       GIArgument        *arg);
+gboolean _pygi_marshal_in_double      (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       PyObject          *py_arg,
+                                       GIArgument        *arg);
+gboolean _pygi_marshal_in_unichar     (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       PyObject          *py_arg,
+                                       GIArgument        *arg);
+gboolean _pygi_marshal_in_gtype       (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       PyObject          *py_arg,
+                                       GIArgument        *arg);
+gboolean _pygi_marshal_in_utf8        (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       PyObject          *py_arg,
+                                       GIArgument        *arg);
+gboolean _pygi_marshal_in_filename    (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       PyObject          *py_arg,
+                                       GIArgument        *arg);
+gboolean _pygi_marshal_in_array       (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       PyObject          *py_arg,
+                                       GIArgument        *arg);
+gboolean _pygi_marshal_in_glist       (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       PyObject          *py_arg,
+                                       GIArgument        *arg);
+gboolean _pygi_marshal_in_gslist      (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       PyObject          *py_arg,
+                                       GIArgument        *arg);
+gboolean _pygi_marshal_in_ghash       (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       PyObject          *py_arg,
+                                       GIArgument        *arg);
+gboolean _pygi_marshal_in_gerror      (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       PyObject          *py_arg,
+                                       GIArgument        *arg);
+gboolean _pygi_marshal_in_interface_callback (PyGIInvokeState   *state,
+                                              PyGIFunctionCache *function_cache,
+                                              PyGIArgCache      *arg_cache,
+                                              PyObject          *py_arg,
+                                              GIArgument        *arg);
+gboolean _pygi_marshal_in_interface_enum     (PyGIInvokeState   *state,
+                                              PyGIFunctionCache *function_cache,
+                                              PyGIArgCache      *arg_cache,
+                                              PyObject          *py_arg,
+                                              GIArgument        *arg);
+gboolean _pygi_marshal_in_interface_flags    (PyGIInvokeState   *state,
+                                              PyGIFunctionCache *function_cache,
+                                              PyGIArgCache      *arg_cache,
+                                              PyObject          *py_arg,
+                                              GIArgument        *arg);
+gboolean _pygi_marshal_in_interface_struct   (PyGIInvokeState   *state,
+                                              PyGIFunctionCache *function_cache,
+                                              PyGIArgCache      *arg_cache,
+                                              PyObject          *py_arg,
+                                              GIArgument        *arg);
+gboolean _pygi_marshal_in_interface_interface(PyGIInvokeState   *state,
+                                              PyGIFunctionCache *function_cache,
+                                              PyGIArgCache      *arg_cache,
+                                              PyObject          *py_arg,
+                                              GIArgument        *arg);
+gboolean _pygi_marshal_in_interface_boxed    (PyGIInvokeState   *state,
+                                              PyGIFunctionCache *function_cache,
+                                              PyGIArgCache      *arg_cache,
+                                              PyObject          *py_arg,
+                                              GIArgument        *arg);
+gboolean _pygi_marshal_in_interface_object   (PyGIInvokeState   *state,
+                                              PyGIFunctionCache *function_cache,
+                                              PyGIArgCache      *arg_cache,
+                                              PyObject          *py_arg,
+                                              GIArgument        *arg);
+gboolean _pygi_marshal_in_interface_union    (PyGIInvokeState   *state,
+                                              PyGIFunctionCache *function_cache,
+                                              PyGIArgCache      *arg_cache,
+                                              PyObject          *py_arg,
+                                              GIArgument        *arg);
+
+PyObject *_pygi_marshal_out_void      (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       GIArgument        *arg);
+PyObject *_pygi_marshal_out_boolean   (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       GIArgument        *arg);
+PyObject *_pygi_marshal_out_int8      (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       GIArgument        *arg);
+PyObject *_pygi_marshal_out_uint8     (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       GIArgument        *arg);
+PyObject *_pygi_marshal_out_int16     (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       GIArgument        *arg);
+PyObject *_pygi_marshal_out_uint16    (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       GIArgument        *arg);
+PyObject *_pygi_marshal_out_int32     (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       GIArgument        *arg);
+PyObject *_pygi_marshal_out_uint32    (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       GIArgument        *arg);
+PyObject *_pygi_marshal_out_int64     (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       GIArgument        *arg);
+PyObject *_pygi_marshal_out_uint64    (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       GIArgument        *arg);
+PyObject *_pygi_marshal_out_float     (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       GIArgument        *arg);
+PyObject *_pygi_marshal_out_double    (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       GIArgument        *arg);
+PyObject *_pygi_marshal_out_unichar   (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       GIArgument        *arg);
+PyObject *_pygi_marshal_out_gtype     (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       GIArgument        *arg);
+PyObject *_pygi_marshal_out_utf8      (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       GIArgument        *arg);
+PyObject *_pygi_marshal_out_filename  (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       GIArgument        *arg);
+PyObject *_pygi_marshal_out_array     (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       GIArgument        *arg);
+PyObject *_pygi_marshal_out_glist     (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       GIArgument        *arg);
+PyObject *_pygi_marshal_out_gslist    (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       GIArgument        *arg);
+PyObject *_pygi_marshal_out_ghash     (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       GIArgument        *arg);
+PyObject *_pygi_marshal_out_gerror    (PyGIInvokeState   *state,
+                                       PyGIFunctionCache *function_cache,
+                                       PyGIArgCache      *arg_cache,
+                                       GIArgument        *arg);
+PyObject *_pygi_marshal_out_interface_callback(PyGIInvokeState   *state,
+                                              PyGIFunctionCache *function_cache,
+                                              PyGIArgCache      *arg_cache,
+                                              GIArgument        *arg);
+PyObject *_pygi_marshal_out_interface_enum   (PyGIInvokeState   *state,
+                                              PyGIFunctionCache *function_cache,
+                                              PyGIArgCache      *arg_cache,
+                                              GIArgument        *arg);
+PyObject *_pygi_marshal_out_interface_flags  (PyGIInvokeState   *state,
+                                              PyGIFunctionCache *function_cache,
+                                              PyGIArgCache      *arg_cache,
+                                              GIArgument        *arg);
+PyObject *_pygi_marshal_out_interface_struct (PyGIInvokeState   *state,
+                                              PyGIFunctionCache *function_cache,
+                                              PyGIArgCache      *arg_cache,
+                                              GIArgument        *arg);
+PyObject *_pygi_marshal_out_interface_interface(PyGIInvokeState   *state,
+                                              PyGIFunctionCache *function_cache,
+                                              PyGIArgCache      *arg_cache,
+                                              GIArgument        *arg);
+PyObject *_pygi_marshal_out_interface_boxed  (PyGIInvokeState   *state,
+                                              PyGIFunctionCache *function_cache,
+                                              PyGIArgCache      *arg_cache,
+                                              GIArgument        *arg);
+PyObject *_pygi_marshal_out_interface_object (PyGIInvokeState   *state,
+                                              PyGIFunctionCache *function_cache,
+                                              PyGIArgCache      *arg_cache,
+                                              GIArgument        *arg);
+PyObject *_pygi_marshal_out_interface_union  (PyGIInvokeState   *state,
+                                              PyGIFunctionCache *function_cache,
+                                              PyGIArgCache      *arg_cache,
+                                              GIArgument        *arg);
+
+G_END_DECLS
+
+#endif /* __PYGI_ARGUMENT_H__ */



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]