Kaydet (Commit) 3be9a8a5 authored tarafından Fred Drake's avatar Fred Drake

ANSI-fication of the source.

Make the indentation and brace placement internally consistent.
üst 79912471
...@@ -19,118 +19,105 @@ typedef void (*destructor1)(void *); ...@@ -19,118 +19,105 @@ typedef void (*destructor1)(void *);
typedef void (*destructor2)(void *, void*); typedef void (*destructor2)(void *, void*);
typedef struct { typedef struct {
PyObject_HEAD PyObject_HEAD
void *cobject; void *cobject;
void *desc; void *desc;
void (*destructor)(void *); void (*destructor)(void *);
} PyCObject; } PyCObject;
PyObject * PyObject *
PyCObject_FromVoidPtr(cobj, destr) PyCObject_FromVoidPtr(void *cobj, void (*destr)(void *))
void *cobj;
void (*destr)(void *);
{ {
PyCObject *self; PyCObject *self;
self = PyObject_NEW(PyCObject, &PyCObject_Type); self = PyObject_NEW(PyCObject, &PyCObject_Type);
if (self == NULL) if (self == NULL)
return NULL; return NULL;
self->cobject=cobj; self->cobject=cobj;
self->destructor=destr; self->destructor=destr;
self->desc=NULL; self->desc=NULL;
return (PyObject *)self;
return (PyObject *)self;
} }
PyObject * PyObject *
PyCObject_FromVoidPtrAndDesc(cobj, desc, destr) PyCObject_FromVoidPtrAndDesc(void *cobj, void *desc,
void *cobj; void (*destr)(void *, void *))
void *desc;
void (*destr)(void *, void *);
{ {
PyCObject *self; PyCObject *self;
if(!desc) { if (!desc) {
PyErr_SetString(PyExc_TypeError, PyErr_SetString(PyExc_TypeError,
"PyCObject_FromVoidPtrAndDesc called with null description"); "PyCObject_FromVoidPtrAndDesc called with null"
return NULL; " description");
} return NULL;
}
self = PyObject_NEW(PyCObject, &PyCObject_Type); self = PyObject_NEW(PyCObject, &PyCObject_Type);
if (self == NULL) if (self == NULL)
return NULL; return NULL;
self->cobject=cobj; self->cobject=cobj;
self->destructor=(destructor1)destr; self->destructor=(destructor1)destr;
self->desc=desc; self->desc=desc;
return (PyObject *)self;
return (PyObject *)self;
} }
void * void *
PyCObject_AsVoidPtr(self) PyCObject_AsVoidPtr(PyObject *self)
PyObject *self;
{ {
if(self) if (self) {
{ if (self->ob_type == &PyCObject_Type)
if(self->ob_type == &PyCObject_Type) return ((PyCObject *)self)->cobject;
return ((PyCObject *)self)->cobject; PyErr_SetString(PyExc_TypeError,
PyErr_SetString(PyExc_TypeError, "PyCObject_AsVoidPtr with non-C-object");
"PyCObject_AsVoidPtr with non-C-object"); }
} if (!PyErr_Occurred())
if(! PyErr_Occurred()) PyErr_SetString(PyExc_TypeError,
PyErr_SetString(PyExc_TypeError, "PyCObject_AsVoidPtr called with null pointer");
"PyCObject_AsVoidPtr called with null pointer"); return NULL;
return NULL;
} }
void * void *
PyCObject_GetDesc(self) PyCObject_GetDesc(PyObject *self)
PyObject *self;
{ {
if(self) if (self) {
{ if (self->ob_type == &PyCObject_Type)
if(self->ob_type == &PyCObject_Type) return ((PyCObject *)self)->desc;
return ((PyCObject *)self)->desc; PyErr_SetString(PyExc_TypeError,
PyErr_SetString(PyExc_TypeError, "PyCObject_GetDesc with non-C-object");
"PyCObject_GetDesc with non-C-object"); }
} if (!PyErr_Occurred())
if(! PyErr_Occurred()) PyErr_SetString(PyExc_TypeError,
PyErr_SetString(PyExc_TypeError, "PyCObject_GetDesc called with null pointer");
"PyCObject_GetDesc called with null pointer"); return NULL;
return NULL;
} }
void * void *
PyCObject_Import(module_name, name) PyCObject_Import(char *module_name, char *name)
char *module_name;
char *name;
{ {
PyObject *m, *c; PyObject *m, *c;
void *r=NULL; void *r = NULL;
if((m=PyImport_ImportModule(module_name))) if ((m = PyImport_ImportModule(module_name))) {
{ if ((c = PyObject_GetAttrString(m,name))) {
if((c=PyObject_GetAttrString(m,name))) r = PyCObject_AsVoidPtr(c);
{ Py_DECREF(c);
r=PyCObject_AsVoidPtr(c);
Py_DECREF(c);
} }
Py_DECREF(m); Py_DECREF(m);
} }
return r;
return r;
} }
static void static void
PyCObject_dealloc(self) PyCObject_dealloc(PyCObject *self)
PyCObject *self;
{ {
if(self->destructor) if (self->destructor) {
{ if(self->desc)
if(self->desc) ((destructor2)(self->destructor))(self->cobject, self->desc);
((destructor2)(self->destructor))(self->cobject, self->desc); else
else (self->destructor)(self->cobject);
(self->destructor)(self->cobject); }
} PyObject_DEL(self);
PyObject_DEL(self);
} }
...@@ -140,30 +127,29 @@ static char PyCObject_Type__doc__[] = ...@@ -140,30 +127,29 @@ static char PyCObject_Type__doc__[] =
C objects are used for communication between extension modules. They\n\ C objects are used for communication between extension modules. They\n\
provide a way for an extension module to export a C interface to other\n\ provide a way for an extension module to export a C interface to other\n\
extension modules, so that extension modules can use the Python import\n\ extension modules, so that extension modules can use the Python import\n\
mechanism to link to one another.\n" mechanism to link to one another.";
;
PyTypeObject PyCObject_Type = { PyTypeObject PyCObject_Type = {
PyObject_HEAD_INIT(&PyType_Type) PyObject_HEAD_INIT(&PyType_Type)
0, /*ob_size*/ 0, /*ob_size*/
"PyCObject", /*tp_name*/ "PyCObject", /*tp_name*/
sizeof(PyCObject), /*tp_basicsize*/ sizeof(PyCObject), /*tp_basicsize*/
0, /*tp_itemsize*/ 0, /*tp_itemsize*/
/* methods */ /* methods */
(destructor)PyCObject_dealloc, /*tp_dealloc*/ (destructor)PyCObject_dealloc, /*tp_dealloc*/
(printfunc)0, /*tp_print*/ (printfunc)0, /*tp_print*/
(getattrfunc)0, /*tp_getattr*/ (getattrfunc)0, /*tp_getattr*/
(setattrfunc)0, /*tp_setattr*/ (setattrfunc)0, /*tp_setattr*/
(cmpfunc)0, /*tp_compare*/ (cmpfunc)0, /*tp_compare*/
(reprfunc)0, /*tp_repr*/ (reprfunc)0, /*tp_repr*/
0, /*tp_as_number*/ 0, /*tp_as_number*/
0, /*tp_as_sequence*/ 0, /*tp_as_sequence*/
0, /*tp_as_mapping*/ 0, /*tp_as_mapping*/
(hashfunc)0, /*tp_hash*/ (hashfunc)0, /*tp_hash*/
(ternaryfunc)0, /*tp_call*/ (ternaryfunc)0, /*tp_call*/
(reprfunc)0, /*tp_str*/ (reprfunc)0, /*tp_str*/
/* Space for future expansion */ /* Space for future expansion */
0L,0L,0L,0L, 0L,0L,0L,0L,
PyCObject_Type__doc__ /* Documentation string */ PyCObject_Type__doc__ /* Documentation string */
}; };
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment