[Python-Dev] Feature request: better support for "wrapper" objects
Thomas Heller
thomas.heller@ion-tof.com
Fri, 11 Jan 2002 21:40:56 +0100
From: "M.-A. Lemburg" <mal@lemburg.com>
> [Metatypes, callbacks, etc.]
>
> Wouldn't it be *much* easier to just use the copyreg/pickle
> API/protocol for dealing with all this ?
>
I *don't* think it's complicated (once you get used to metatypes).
> AFAICTL, the actions needed by Jack are very similar to what
> pickle et al. do, and we already have all that in Python --
> it's just not exposed too well at C level.
>
> Example:
>
> PyArg_ParseTuple(args, "O@", &factory, &tuple) would
> return a factory function and a tuple storing the data of
> the object passed to the function
>
> while
>
> Py_BuildValue("O@", factory, tuple) would simply call factory
> with tuple and use the return value as object.
>
> (Note that void* can be wrapped into PyCObjects for "use" in
> Python.)
>
I'm not sure we talk about the same thing: we (at least me) do not
want to serialize and reconstruct objects (what pickle does),
we want to convert objects from Python to C (convert them to parameters
usable in C API-calls), and back (convert them from handles, pointers,
whatever into Python objects) having only the Python *type* object
available in the latter case.
Or am I missing something?
Thomas