[Lxml-checkins] r52793 - in lxml/trunk: . src/lxml

scoder at codespeak.net scoder at codespeak.net
Fri Mar 21 08:52:04 CET 2008


Author: scoder
Date: Fri Mar 21 08:52:02 2008
New Revision: 52793

Modified:
   lxml/trunk/   (props changed)
   lxml/trunk/src/lxml/etree_defs.h
   lxml/trunk/src/lxml/python.pxd
Log:
 r3817 at delle:  sbehnel | 2008-03-20 08:32:48 +0100
 macro cleanup in .h/.pxd files


Modified: lxml/trunk/src/lxml/etree_defs.h
==============================================================================
--- lxml/trunk/src/lxml/etree_defs.h	(original)
+++ lxml/trunk/src/lxml/etree_defs.h	Fri Mar 21 08:52:02 2008
@@ -93,11 +93,6 @@
 long _ftol2( double dblSource ) { return _ftol( dblSource ); }
 #endif
 
-/* Redefinition of some Python builtins as C functions */
-#define callable(o)     PyCallable_Check(o)
-#define _cstr(s)        PyString_AS_STRING(s)
-#define _fqtypename(o)  (((PyTypeObject*)o)->ob_type->tp_name)
-
 #ifdef __GNUC__
 /* Test for GCC > 2.95 */
 #if __GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95)) 
@@ -109,15 +104,11 @@
 #define unlikely_condition(x) (x)
 #endif /* __GNUC__ */
 
-static PyObject* __PY_NEW_GLOBAL_EMPTY_TUPLE = NULL;
-
 #define PY_NEW(T) \
      (((PyTypeObject*)(T))->tp_new( \
-         (PyTypeObject*)(T), \
-         (unlikely_condition(__PY_NEW_GLOBAL_EMPTY_TUPLE == NULL) ? \
-             (__PY_NEW_GLOBAL_EMPTY_TUPLE = PyTuple_New(0)) : \
-             (__PY_NEW_GLOBAL_EMPTY_TUPLE)), \
-         NULL))
+             (PyTypeObject*)(T), __pyx_empty_tuple, NULL))
+
+#define _fqtypename(o)  (((PyTypeObject*)o)->ob_type->tp_name)
 
 #define _isString(obj)   (PyString_CheckExact(obj)  || \
                           PyUnicode_CheckExact(obj) || \

Modified: lxml/trunk/src/lxml/python.pxd
==============================================================================
--- lxml/trunk/src/lxml/python.pxd	(original)
+++ lxml/trunk/src/lxml/python.pxd	Fri Mar 21 08:52:02 2008
@@ -103,6 +103,10 @@
     cdef void PyEval_RestoreThread(PyThreadState* state)
     cdef PyObject* PyThreadState_GetDict()
 
+    # some handy functions
+    cdef int callable "PyCallable_Check" (object obj)
+    cdef char* _cstr "PyString_AS_STRING" (object s)
+
 cdef extern from "pythread.h":
     ctypedef void* PyThread_type_lock
     cdef PyThread_type_lock PyThread_allocate_lock()
@@ -118,6 +122,4 @@
 cdef extern from "etree_defs.h": # redefines some functions as macros
     cdef int _isString(object obj)
     cdef char* _fqtypename(object t)
-    cdef int callable(object obj)
-    cdef char* _cstr(object s)
     cdef object PY_NEW(object t)


More information about the lxml-checkins mailing list