Win32 Extensions From C module
Dale Hirt
dale.hirt at verizon.net
Sun Feb 16 14:16:56 EST 2003
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi all,
I am currently working on the subversion (http://subversion.tigris.org) python bindings. It utilizes swig to help build some of the code, however, that is not a main concern.
I have a function that can take in a PyObject *, and I have figured out how it can determine if the type is a string, a FILE *, or an int. What I currently cannot do is check, when only compiling on Win32, if it's type is a HANDLE. The Win32 extensions define a PyHANDLE object, yet short of keeping a copy of his source code tree around, I don't know how I can say PyHANDLE_Check(), or get out the underlying HANDLE.
Here is a brief outline of how I would like the function to look. I've cut out all the extraneous code.:
apr_file_t *svn_swig_py_make_file (PyObject *py_file)
{
...
if (py_file == NULL || py_file == Py_None)
return NULL;
if (PyString_Check (py_file))
{
...
}
else
{
if (PyFile_Check (py_file))
{
file = PyFile_AsFile (py_file);
...
}
#ifdef WIN32
else if(PyHANDLE_Check (py_file))
{
handle = PyHANDLE_AsHANDLE(py_file);
}
#endif
else if (PyInt_Check (py_file))
{
fd = PyInt_AsLong (py_file);
...
}
else
{
return NULL;
}
...
return apr_file;
}
Has anyone else done something like this? Is there something that I'm missing? Is there a mailing list specifically for Win32 extensions, or is this the right list? I appreciate any and all help, and pointers.
Dale
- -----------------
Jabber ID: chaosopher at jabber.org
ICQ: Chaosopher #27726121
Yahoo: chaosopher_1
MSN: chaosopher at hotmail.com
AIM: chaosopher
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (MingW32)
iD8DBQE+T+OodUhnmI25D1MRAsjYAJ0X1lpY8fRoyP7BIPLdaMj1adG0KACfYbL8
sQe4LNfo8dyMw6uO2qnonkE=
=7t+H
-----END PGP SIGNATURE-----
More information about the Python-list
mailing list