/* Generated by Cython 0.15.1 on Tue Aug 21 18:52:40 2012 */ #define PY_SSIZE_T_CLEAN #include "Python.h" #ifndef Py_PYTHON_H #error Python headers needed to compile C extensions, please install development version of Python. #else #include /* For offsetof */ #ifndef offsetof #define offsetof(type, member) ( (size_t) & ((type*)0) -> member ) #endif #if !defined(WIN32) && !defined(MS_WINDOWS) #ifndef __stdcall #define __stdcall #endif #ifndef __cdecl #define __cdecl #endif #ifndef __fastcall #define __fastcall #endif #endif #ifndef DL_IMPORT #define DL_IMPORT(t) t #endif #ifndef DL_EXPORT #define DL_EXPORT(t) t #endif #ifndef PY_LONG_LONG #define PY_LONG_LONG LONG_LONG #endif #if PY_VERSION_HEX < 0x02040000 #define METH_COEXIST 0 #define PyDict_CheckExact(op) (Py_TYPE(op) == &PyDict_Type) #define PyDict_Contains(d,o) PySequence_Contains(d,o) #endif #if PY_VERSION_HEX < 0x02050000 typedef int Py_ssize_t; #define PY_SSIZE_T_MAX INT_MAX #define PY_SSIZE_T_MIN INT_MIN #define PY_FORMAT_SIZE_T "" #define PyInt_FromSsize_t(z) PyInt_FromLong(z) #define PyInt_AsSsize_t(o) __Pyx_PyInt_AsInt(o) #define PyNumber_Index(o) PyNumber_Int(o) #define PyIndex_Check(o) PyNumber_Check(o) #define PyErr_WarnEx(category, message, stacklevel) PyErr_Warn(category, message) #endif #if PY_VERSION_HEX < 0x02060000 #define Py_REFCNT(ob) (((PyObject*)(ob))->ob_refcnt) #define Py_TYPE(ob) (((PyObject*)(ob))->ob_type) #define Py_SIZE(ob) (((PyVarObject*)(ob))->ob_size) #define PyVarObject_HEAD_INIT(type, size) \ PyObject_HEAD_INIT(type) size, #define PyType_Modified(t) typedef struct { void *buf; PyObject *obj; Py_ssize_t len; Py_ssize_t itemsize; int readonly; int ndim; char *format; Py_ssize_t *shape; Py_ssize_t *strides; Py_ssize_t *suboffsets; void *internal; } Py_buffer; #define PyBUF_SIMPLE 0 #define PyBUF_WRITABLE 0x0001 #define PyBUF_FORMAT 0x0004 #define PyBUF_ND 0x0008 #define PyBUF_STRIDES (0x0010 | PyBUF_ND) #define PyBUF_C_CONTIGUOUS (0x0020 | PyBUF_STRIDES) #define PyBUF_F_CONTIGUOUS (0x0040 | PyBUF_STRIDES) #define PyBUF_ANY_CONTIGUOUS (0x0080 | PyBUF_STRIDES) #define PyBUF_INDIRECT (0x0100 | PyBUF_STRIDES) #endif #if PY_MAJOR_VERSION < 3 #define __Pyx_BUILTIN_MODULE_NAME "__builtin__" #else #define __Pyx_BUILTIN_MODULE_NAME "builtins" #endif #if PY_MAJOR_VERSION >= 3 #define Py_TPFLAGS_CHECKTYPES 0 #define Py_TPFLAGS_HAVE_INDEX 0 #endif #if (PY_VERSION_HEX < 0x02060000) || (PY_MAJOR_VERSION >= 3) #define Py_TPFLAGS_HAVE_NEWBUFFER 0 #endif #if PY_MAJOR_VERSION >= 3 #define PyBaseString_Type PyUnicode_Type #define PyStringObject PyUnicodeObject #define PyString_Type PyUnicode_Type #define PyString_Check PyUnicode_Check #define PyString_CheckExact PyUnicode_CheckExact #endif #if PY_VERSION_HEX < 0x02060000 #define PyBytesObject PyStringObject #define PyBytes_Type PyString_Type #define PyBytes_Check PyString_Check #define PyBytes_CheckExact PyString_CheckExact #define PyBytes_FromString PyString_FromString #define PyBytes_FromStringAndSize PyString_FromStringAndSize #define PyBytes_FromFormat PyString_FromFormat #define PyBytes_DecodeEscape PyString_DecodeEscape #define PyBytes_AsString PyString_AsString #define PyBytes_AsStringAndSize PyString_AsStringAndSize #define PyBytes_Size PyString_Size #define PyBytes_AS_STRING PyString_AS_STRING #define PyBytes_GET_SIZE PyString_GET_SIZE #define PyBytes_Repr PyString_Repr #define PyBytes_Concat PyString_Concat #define PyBytes_ConcatAndDel PyString_ConcatAndDel #endif #if PY_VERSION_HEX < 0x02060000 #define PySet_Check(obj) PyObject_TypeCheck(obj, &PySet_Type) #define PyFrozenSet_Check(obj) PyObject_TypeCheck(obj, &PyFrozenSet_Type) #endif #ifndef PySet_CheckExact #define PySet_CheckExact(obj) (Py_TYPE(obj) == &PySet_Type) #endif #define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type) #if PY_MAJOR_VERSION >= 3 #define PyIntObject PyLongObject #define PyInt_Type PyLong_Type #define PyInt_Check(op) PyLong_Check(op) #define PyInt_CheckExact(op) PyLong_CheckExact(op) #define PyInt_FromString PyLong_FromString #define PyInt_FromUnicode PyLong_FromUnicode #define PyInt_FromLong PyLong_FromLong #define PyInt_FromSize_t PyLong_FromSize_t #define PyInt_FromSsize_t PyLong_FromSsize_t #define PyInt_AsLong PyLong_AsLong #define PyInt_AS_LONG PyLong_AS_LONG #define PyInt_AsSsize_t PyLong_AsSsize_t #define PyInt_AsUnsignedLongMask PyLong_AsUnsignedLongMask #define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask #endif #if PY_MAJOR_VERSION >= 3 #define PyBoolObject PyLongObject #endif #if PY_VERSION_HEX < 0x03020000 typedef long Py_hash_t; #define __Pyx_PyInt_FromHash_t PyInt_FromLong #define __Pyx_PyInt_AsHash_t PyInt_AsLong #else #define __Pyx_PyInt_FromHash_t PyInt_FromSsize_t #define __Pyx_PyInt_AsHash_t PyInt_AsSsize_t #endif #if PY_MAJOR_VERSION >= 3 #define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y) #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y) #else #define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y) #define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y) #endif #if (PY_MAJOR_VERSION < 3) || (PY_VERSION_HEX >= 0x03010300) #define __Pyx_PySequence_GetSlice(obj, a, b) PySequence_GetSlice(obj, a, b) #define __Pyx_PySequence_SetSlice(obj, a, b, value) PySequence_SetSlice(obj, a, b, value) #define __Pyx_PySequence_DelSlice(obj, a, b) PySequence_DelSlice(obj, a, b) #else #define __Pyx_PySequence_GetSlice(obj, a, b) (unlikely(!(obj)) ? \ (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), (PyObject*)0) : \ (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_GetSlice(obj, a, b)) : \ (PyErr_Format(PyExc_TypeError, "'%.200s' object is unsliceable", (obj)->ob_type->tp_name), (PyObject*)0))) #define __Pyx_PySequence_SetSlice(obj, a, b, value) (unlikely(!(obj)) ? \ (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_SetSlice(obj, a, b, value)) : \ (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice assignment", (obj)->ob_type->tp_name), -1))) #define __Pyx_PySequence_DelSlice(obj, a, b) (unlikely(!(obj)) ? \ (PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \ (likely((obj)->ob_type->tp_as_mapping) ? (PySequence_DelSlice(obj, a, b)) : \ (PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice deletion", (obj)->ob_type->tp_name), -1))) #endif #if PY_MAJOR_VERSION >= 3 #define PyMethod_New(func, self, klass) ((self) ? PyMethod_New(func, self) : PyInstanceMethod_New(func)) #endif #if PY_VERSION_HEX < 0x02050000 #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),((char *)(n))) #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),((char *)(n)),(a)) #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),((char *)(n))) #else #define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),(n)) #define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),(n),(a)) #define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),(n)) #endif #if PY_VERSION_HEX < 0x02050000 #define __Pyx_NAMESTR(n) ((char *)(n)) #define __Pyx_DOCSTR(n) ((char *)(n)) #else #define __Pyx_NAMESTR(n) (n) #define __Pyx_DOCSTR(n) (n) #endif #ifndef __PYX_EXTERN_C #ifdef __cplusplus #define __PYX_EXTERN_C extern "C" #else #define __PYX_EXTERN_C extern #endif #endif #if defined(WIN32) || defined(MS_WINDOWS) #define _USE_MATH_DEFINES #endif #include #define __PYX_HAVE__tinycss__speedups #define __PYX_HAVE_API__tinycss__speedups #ifdef _OPENMP #include #endif /* _OPENMP */ #ifdef PYREX_WITHOUT_ASSERTIONS #define CYTHON_WITHOUT_ASSERTIONS #endif /* inline attribute */ #ifndef CYTHON_INLINE #if defined(__GNUC__) #define CYTHON_INLINE __inline__ #elif defined(_MSC_VER) #define CYTHON_INLINE __inline #elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L #define CYTHON_INLINE inline #else #define CYTHON_INLINE #endif #endif /* unused attribute */ #ifndef CYTHON_UNUSED # if defined(__GNUC__) # if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) # define CYTHON_UNUSED __attribute__ ((__unused__)) # else # define CYTHON_UNUSED # endif # elif defined(__ICC) || defined(__INTEL_COMPILER) # define CYTHON_UNUSED __attribute__ ((__unused__)) # else # define CYTHON_UNUSED # endif #endif typedef struct {PyObject **p; char *s; const long n; const char* encoding; const char is_unicode; const char is_str; const char intern; } __Pyx_StringTabEntry; /*proto*/ /* Type Conversion Predeclarations */ #define __Pyx_PyBytes_FromUString(s) PyBytes_FromString((char*)s) #define __Pyx_PyBytes_AsUString(s) ((unsigned char*) PyBytes_AsString(s)) #define __Pyx_Owned_Py_None(b) (Py_INCREF(Py_None), Py_None) #define __Pyx_PyBool_FromLong(b) ((b) ? (Py_INCREF(Py_True), Py_True) : (Py_INCREF(Py_False), Py_False)) static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*); static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x); static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*); static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t); static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject*); #define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x)) #ifdef __GNUC__ /* Test for GCC > 2.95 */ #if __GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95)) #define likely(x) __builtin_expect(!!(x), 1) #define unlikely(x) __builtin_expect(!!(x), 0) #else /* __GNUC__ > 2 ... */ #define likely(x) (x) #define unlikely(x) (x) #endif /* __GNUC__ > 2 ... */ #else /* __GNUC__ */ #define likely(x) (x) #define unlikely(x) (x) #endif /* __GNUC__ */ static PyObject *__pyx_m; static PyObject *__pyx_b; static PyObject *__pyx_empty_tuple; static PyObject *__pyx_empty_bytes; static int __pyx_lineno; static int __pyx_clineno = 0; static const char * __pyx_cfilenm= __FILE__; static const char *__pyx_filename; static const char *__pyx_f[] = { "speedups.pyx", }; static PyObject *__Pyx_Generator_Next(PyObject *self); static PyObject *__Pyx_Generator_Send(PyObject *self, PyObject *value); static PyObject *__Pyx_Generator_Close(PyObject *self); static PyObject *__Pyx_Generator_Throw(PyObject *gen, PyObject *args, CYTHON_UNUSED PyObject *kwds); typedef PyObject *(*__pyx_generator_body_t)(PyObject *, PyObject *); /*--- Type declarations ---*/ struct __pyx_Generator_object; struct __pyx_obj_7tinycss_8speedups___pyx_scope_struct__genexpr; struct __pyx_obj_7tinycss_8speedups_CToken; /* "tinycss/speedups.pyx":22 * * COMPILED_TOKEN_INDEXES = dict( * (name, i) for i, (name, regexp) in enumerate(COMPILED_TOKEN_REGEXPS)) # <<<<<<<<<<<<<< * * */ struct __pyx_Generator_object { PyObject_HEAD __pyx_generator_body_t body; int is_running; int resume_label; PyObject *exc_type; PyObject *exc_value; PyObject *exc_traceback; }; struct __pyx_obj_7tinycss_8speedups___pyx_scope_struct__genexpr { struct __pyx_Generator_object __pyx_base; PyObject *__pyx_v_i; PyObject *__pyx_v_name; PyObject *__pyx_v_regexp; PyObject *__pyx_t_0; PyObject *__pyx_t_1; Py_ssize_t __pyx_t_2; PyObject *(*__pyx_t_3)(PyObject *); }; /* "tinycss/speedups.pyx":25 * * * cdef class CToken: # <<<<<<<<<<<<<< * """A token built by the Cython speedups. Identical to * :class:`~.token_data.Token`. */ struct __pyx_obj_7tinycss_8speedups_CToken { PyObject_HEAD PyObject *type; PyObject *_as_css; PyObject *value; PyObject *unit; Py_ssize_t line; Py_ssize_t column; }; #ifndef CYTHON_REFNANNY #define CYTHON_REFNANNY 0 #endif #if CYTHON_REFNANNY typedef struct { void (*INCREF)(void*, PyObject*, int); void (*DECREF)(void*, PyObject*, int); void (*GOTREF)(void*, PyObject*, int); void (*GIVEREF)(void*, PyObject*, int); void* (*SetupContext)(const char*, int, const char*); void (*FinishContext)(void**); } __Pyx_RefNannyAPIStruct; static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL; static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname); /*proto*/ #define __Pyx_RefNannyDeclarations void *__pyx_refnanny = NULL; #define __Pyx_RefNannySetupContext(name) __pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__) #define __Pyx_RefNannyFinishContext() __Pyx_RefNanny->FinishContext(&__pyx_refnanny) #define __Pyx_INCREF(r) __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), __LINE__) #define __Pyx_DECREF(r) __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), __LINE__) #define __Pyx_GOTREF(r) __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), __LINE__) #define __Pyx_GIVEREF(r) __Pyx_RefNanny->GIVEREF(__pyx_refnanny, (PyObject *)(r), __LINE__) #define __Pyx_XINCREF(r) do { if((r) != NULL) {__Pyx_INCREF(r); }} while(0) #define __Pyx_XDECREF(r) do { if((r) != NULL) {__Pyx_DECREF(r); }} while(0) #define __Pyx_XGOTREF(r) do { if((r) != NULL) {__Pyx_GOTREF(r); }} while(0) #define __Pyx_XGIVEREF(r) do { if((r) != NULL) {__Pyx_GIVEREF(r);}} while(0) #else #define __Pyx_RefNannyDeclarations #define __Pyx_RefNannySetupContext(name) #define __Pyx_RefNannyFinishContext() #define __Pyx_INCREF(r) Py_INCREF(r) #define __Pyx_DECREF(r) Py_DECREF(r) #define __Pyx_GOTREF(r) #define __Pyx_GIVEREF(r) #define __Pyx_XINCREF(r) Py_XINCREF(r) #define __Pyx_XDECREF(r) Py_XDECREF(r) #define __Pyx_XGOTREF(r) #define __Pyx_XGIVEREF(r) #endif /* CYTHON_REFNANNY */ static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name); /*proto*/ static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index); static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected); static int __Pyx_IternextUnpackEndCheck(PyObject *retval, Py_ssize_t expected); /*proto*/ static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact, Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found); /*proto*/ static void __Pyx_RaiseDoubleKeywordsError( const char* func_name, PyObject* kw_name); /*proto*/ static int __Pyx_ParseOptionalKeywords(PyObject *kwds, PyObject **argnames[], PyObject *kwds2, PyObject *values[], Py_ssize_t num_pos_args, const char* function_name); /*proto*/ static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j) { PyObject *r; if (!j) return NULL; r = PyObject_GetItem(o, j); Py_DECREF(j); return r; } #define __Pyx_GetItemInt_List(o, i, size, to_py_func) (((size) <= sizeof(Py_ssize_t)) ? \ __Pyx_GetItemInt_List_Fast(o, i) : \ __Pyx_GetItemInt_Generic(o, to_py_func(i))) static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i) { if (likely(o != Py_None)) { if (likely((0 <= i) & (i < PyList_GET_SIZE(o)))) { PyObject *r = PyList_GET_ITEM(o, i); Py_INCREF(r); return r; } else if ((-PyList_GET_SIZE(o) <= i) & (i < 0)) { PyObject *r = PyList_GET_ITEM(o, PyList_GET_SIZE(o) + i); Py_INCREF(r); return r; } } return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); } #define __Pyx_GetItemInt_Tuple(o, i, size, to_py_func) (((size) <= sizeof(Py_ssize_t)) ? \ __Pyx_GetItemInt_Tuple_Fast(o, i) : \ __Pyx_GetItemInt_Generic(o, to_py_func(i))) static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i) { if (likely(o != Py_None)) { if (likely((0 <= i) & (i < PyTuple_GET_SIZE(o)))) { PyObject *r = PyTuple_GET_ITEM(o, i); Py_INCREF(r); return r; } else if ((-PyTuple_GET_SIZE(o) <= i) & (i < 0)) { PyObject *r = PyTuple_GET_ITEM(o, PyTuple_GET_SIZE(o) + i); Py_INCREF(r); return r; } } return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); } #define __Pyx_GetItemInt(o, i, size, to_py_func) (((size) <= sizeof(Py_ssize_t)) ? \ __Pyx_GetItemInt_Fast(o, i) : \ __Pyx_GetItemInt_Generic(o, to_py_func(i))) static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i) { PyObject *r; if (PyList_CheckExact(o) && ((0 <= i) & (i < PyList_GET_SIZE(o)))) { r = PyList_GET_ITEM(o, i); Py_INCREF(r); } else if (PyTuple_CheckExact(o) && ((0 <= i) & (i < PyTuple_GET_SIZE(o)))) { r = PyTuple_GET_ITEM(o, i); Py_INCREF(r); } else if (Py_TYPE(o)->tp_as_sequence && Py_TYPE(o)->tp_as_sequence->sq_item && (likely(i >= 0))) { r = PySequence_GetItem(o, i); } else { r = __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i)); } return r; } static CYTHON_INLINE int __Pyx_NegateNonNeg(int b) { return unlikely(b < 0) ? b : !b; } static CYTHON_INLINE PyObject* __Pyx_PyBoolOrNull_FromLong(long b) { return unlikely(b < 0) ? NULL : __Pyx_PyBool_FromLong(b); } static CYTHON_INLINE void __Pyx_RaiseUnboundLocalError(const char *varname); static double __Pyx__PyObject_AsDouble(PyObject* obj); /* proto */ #define __Pyx_PyObject_AsDouble(obj) \ ((likely(PyFloat_CheckExact(obj))) ? \ PyFloat_AS_DOUBLE(obj) : __Pyx__PyObject_AsDouble(obj)) static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, long level); /*proto*/ static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject *); static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject *); static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject *); static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject *); static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject *); static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject *); static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject *); static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject *); static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject *); static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject *); static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject *); static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject *); static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject *); static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject *); static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject *); static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject *); static CYTHON_INLINE void __Pyx_ErrRestore(PyObject *type, PyObject *value, PyObject *tb); /*proto*/ static CYTHON_INLINE void __Pyx_ErrFetch(PyObject **type, PyObject **value, PyObject **tb); /*proto*/ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause); /*proto*/ static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value, PyObject **tb); /*proto*/ static int __Pyx_check_binary_version(void); static void __Pyx_AddTraceback(const char *funcname, int __pyx_clineno, int __pyx_lineno, const char *__pyx_filename); /*proto*/ static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); /*proto*/ /* Module declarations from 'tinycss.speedups' */ static PyTypeObject *__pyx_ptype_7tinycss_8speedups_CToken = 0; static PyTypeObject *__pyx_ptype_7tinycss_8speedups___pyx_Generator = 0; static PyTypeObject *__pyx_ptype_7tinycss_8speedups___pyx_scope_struct__genexpr = 0; #define __Pyx_MODULE_NAME "tinycss.speedups" int __pyx_module_is_main_tinycss__speedups = 0; /* Implementation of 'tinycss.speedups' */ static PyObject *__pyx_builtin_enumerate; static PyObject *__pyx_builtin_ord; static char __pyx_k_1[] = "COMPILED_TOKEN_REGEXPS"; static char __pyx_k_2[] = ""; static char __pyx_k_3[] = ""; static char __pyx_k_4[] = "COMPILED_TOKEN_INDEXES"; static char __pyx_k_5[] = ":;{}()[]"; static char __pyx_k_7[] = "."; static char __pyx_k_9[] = "%"; static char __pyx_k_11[] = "\"'"; static char __pyx_k_12[] = "\n tinycss.speedups\n ----------------\n\n Cython module for speeding up inner loops.\n\n Right now only :func:`tokenize_flat` has a second implementation.\n\n :copyright: (c) 2010 by Simon Sapin.\n :license: BSD, see LICENSE for more details.\n"; static char __pyx_k_13[] = "tinycss.speedups"; static char __pyx_k__URI[] = "URI"; static char __pyx_k__end[] = "end"; static char __pyx_k__ord[] = "ord"; static char __pyx_k__HASH[] = "HASH"; static char __pyx_k__line[] = "line"; static char __pyx_k__unit[] = "unit"; static char __pyx_k__DELIM[] = "DELIM"; static char __pyx_k__IDENT[] = "IDENT"; static char __pyx_k__group[] = "group"; static char __pyx_k__lower[] = "lower"; static char __pyx_k__type_[] = "type_"; static char __pyx_k__value[] = "value"; static char __pyx_k__NUMBER[] = "NUMBER"; static char __pyx_k__STRING[] = "STRING"; static char __pyx_k__column[] = "column"; static char __pyx_k__format[] = "format"; static char __pyx_k__COMMENT[] = "COMMENT"; static char __pyx_k__INTEGER[] = "INTEGER"; static char __pyx_k__FUNCTION[] = "FUNCTION"; static char __pyx_k____main__[] = "__main__"; static char __pyx_k____test__[] = "__test__"; static char __pyx_k__ATKEYWORD[] = "ATKEYWORD"; static char __pyx_k__DIMENSION[] = "DIMENSION"; static char __pyx_k__css_value[] = "css_value"; static char __pyx_k__enumerate[] = "enumerate"; static char __pyx_k__BAD_STRING[] = "BAD_STRING"; static char __pyx_k__PERCENTAGE[] = "PERCENTAGE"; static char __pyx_k__css_source[] = "css_source"; static char __pyx_k__token_data[] = "token_data"; static char __pyx_k__BAD_COMMENT[] = "BAD_COMMENT"; static char __pyx_k__is_container[] = "is_container"; static char __pyx_k__FIND_NEWLINES[] = "FIND_NEWLINES"; static char __pyx_k__tokenize_flat[] = "tokenize_flat"; static char __pyx_k__TOKEN_DISPATCH[] = "TOKEN_DISPATCH"; static char __pyx_k__SIMPLE_UNESCAPE[] = "SIMPLE_UNESCAPE"; static char __pyx_k__ignore_comments[] = "ignore_comments"; static char __pyx_k__NEWLINE_UNESCAPE[] = "NEWLINE_UNESCAPE"; static char __pyx_k__UNICODE_UNESCAPE[] = "UNICODE_UNESCAPE"; static PyObject *__pyx_n_s_1; static PyObject *__pyx_kp_u_11; static PyObject *__pyx_n_s_13; static PyObject *__pyx_kp_u_2; static PyObject *__pyx_kp_u_3; static PyObject *__pyx_n_s_4; static PyObject *__pyx_kp_u_5; static PyObject *__pyx_kp_u_7; static PyObject *__pyx_kp_u_9; static PyObject *__pyx_n_u__ATKEYWORD; static PyObject *__pyx_n_u__BAD_COMMENT; static PyObject *__pyx_n_u__BAD_STRING; static PyObject *__pyx_n_u__COMMENT; static PyObject *__pyx_n_u__DELIM; static PyObject *__pyx_n_u__DIMENSION; static PyObject *__pyx_n_s__FIND_NEWLINES; static PyObject *__pyx_n_u__FUNCTION; static PyObject *__pyx_n_u__HASH; static PyObject *__pyx_n_u__IDENT; static PyObject *__pyx_n_u__INTEGER; static PyObject *__pyx_n_s__NEWLINE_UNESCAPE; static PyObject *__pyx_n_u__NUMBER; static PyObject *__pyx_n_u__PERCENTAGE; static PyObject *__pyx_n_s__SIMPLE_UNESCAPE; static PyObject *__pyx_n_u__STRING; static PyObject *__pyx_n_s__TOKEN_DISPATCH; static PyObject *__pyx_n_s__UNICODE_UNESCAPE; static PyObject *__pyx_n_u__URI; static PyObject *__pyx_n_s____main__; static PyObject *__pyx_n_s____test__; static PyObject *__pyx_n_s__column; static PyObject *__pyx_n_s__css_source; static PyObject *__pyx_n_s__css_value; static PyObject *__pyx_n_s__end; static PyObject *__pyx_n_s__enumerate; static PyObject *__pyx_n_s__format; static PyObject *__pyx_n_s__group; static PyObject *__pyx_n_s__ignore_comments; static PyObject *__pyx_n_s__is_container; static PyObject *__pyx_n_s__line; static PyObject *__pyx_n_s__lower; static PyObject *__pyx_n_s__ord; static PyObject *__pyx_n_s__token_data; static PyObject *__pyx_n_s__tokenize_flat; static PyObject *__pyx_n_s__type_; static PyObject *__pyx_n_s__unit; static PyObject *__pyx_n_s__value; static PyObject *__pyx_int_0; static PyObject *__pyx_int_1; static PyObject *__pyx_int_2; static PyObject *__pyx_k_tuple_6; static PyObject *__pyx_k_tuple_8; static PyObject *__pyx_k_tuple_10; static PyObject *__pyx_gb_7tinycss_8speedups_2generator(struct __pyx_obj_7tinycss_8speedups___pyx_scope_struct__genexpr *__pyx_cur_scope, PyObject *__pyx_sent_value); /* proto */ /* "tinycss/speedups.pyx":22 * * COMPILED_TOKEN_INDEXES = dict( * (name, i) for i, (name, regexp) in enumerate(COMPILED_TOKEN_REGEXPS)) # <<<<<<<<<<<<<< * * */ static PyObject *__pyx_pf_7tinycss_8speedups_1genexpr(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused); /*proto*/ static PyObject *__pyx_pf_7tinycss_8speedups_1genexpr(PyObject *__pyx_self, CYTHON_UNUSED PyObject *unused) { struct __pyx_obj_7tinycss_8speedups___pyx_scope_struct__genexpr *__pyx_cur_scope; PyObject *__pyx_r = NULL; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("genexpr"); __pyx_cur_scope = (struct __pyx_obj_7tinycss_8speedups___pyx_scope_struct__genexpr *)__pyx_ptype_7tinycss_8speedups___pyx_scope_struct__genexpr->tp_new(__pyx_ptype_7tinycss_8speedups___pyx_scope_struct__genexpr, __pyx_empty_tuple, NULL); if (unlikely(!__pyx_cur_scope)) { __Pyx_RefNannyFinishContext(); return NULL; } __Pyx_GOTREF(__pyx_cur_scope); __pyx_self = __pyx_self; __pyx_cur_scope->__pyx_base.resume_label = 0; __pyx_cur_scope->__pyx_base.body = (__pyx_generator_body_t) __pyx_gb_7tinycss_8speedups_2generator; __Pyx_GIVEREF(__pyx_cur_scope); __Pyx_RefNannyFinishContext(); return (PyObject *) __pyx_cur_scope; __pyx_r = Py_None; __Pyx_INCREF(Py_None); __Pyx_DECREF(((PyObject *)__pyx_cur_scope)); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } static PyObject *__pyx_gb_7tinycss_8speedups_2generator(struct __pyx_obj_7tinycss_8speedups___pyx_scope_struct__genexpr *__pyx_cur_scope, PyObject *__pyx_sent_value) /* generator body */ { PyObject *__pyx_r = NULL; PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; PyObject *__pyx_t_3 = NULL; Py_ssize_t __pyx_t_4; PyObject *(*__pyx_t_5)(PyObject *); PyObject *__pyx_t_6 = NULL; PyObject *__pyx_t_7 = NULL; PyObject *__pyx_t_8 = NULL; PyObject *(*__pyx_t_9)(PyObject *); __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("None"); switch (__pyx_cur_scope->__pyx_base.resume_label) { case 0: goto __pyx_L3_first_run; case 1: goto __pyx_L8_resume_from_yield; default: /* CPython raises the right error here */ __Pyx_RefNannyFinishContext(); return NULL; } __pyx_L3_first_run:; if (unlikely(!__pyx_sent_value)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_INCREF(__pyx_int_0); __pyx_t_1 = __pyx_int_0; __pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_2); if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) { __pyx_t_3 = __pyx_t_2; __Pyx_INCREF(__pyx_t_3); __pyx_t_4 = 0; __pyx_t_5 = NULL; } else { __pyx_t_4 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_3); __pyx_t_5 = Py_TYPE(__pyx_t_3)->tp_iternext; } __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; for (;;) { if (PyList_CheckExact(__pyx_t_3)) { if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_3)) break; __pyx_t_2 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; } else if (PyTuple_CheckExact(__pyx_t_3)) { if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_3)) break; __pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_2); __pyx_t_4++; } else { __pyx_t_2 = __pyx_t_5(__pyx_t_3); if (unlikely(!__pyx_t_2)) { if (PyErr_Occurred()) { if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;} } break; } __Pyx_GOTREF(__pyx_t_2); } if ((likely(PyTuple_CheckExact(__pyx_t_2))) || (PyList_CheckExact(__pyx_t_2))) { PyObject* sequence = __pyx_t_2; if (likely(PyTuple_CheckExact(sequence))) { if (unlikely(PyTuple_GET_SIZE(sequence) != 2)) { if (PyTuple_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;} } __pyx_t_6 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_7 = PyTuple_GET_ITEM(sequence, 1); } else { if (unlikely(PyList_GET_SIZE(sequence) != 2)) { if (PyList_GET_SIZE(sequence) > 2) __Pyx_RaiseTooManyValuesError(2); else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;} } __pyx_t_6 = PyList_GET_ITEM(sequence, 0); __pyx_t_7 = PyList_GET_ITEM(sequence, 1); } __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; } else { Py_ssize_t index = -1; __pyx_t_8 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_8); __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_9 = Py_TYPE(__pyx_t_8)->tp_iternext; index = 0; __pyx_t_6 = __pyx_t_9(__pyx_t_8); if (unlikely(!__pyx_t_6)) goto __pyx_L6_unpacking_failed; __Pyx_GOTREF(__pyx_t_6); index = 1; __pyx_t_7 = __pyx_t_9(__pyx_t_8); if (unlikely(!__pyx_t_7)) goto __pyx_L6_unpacking_failed; __Pyx_GOTREF(__pyx_t_7); if (__Pyx_IternextUnpackEndCheck(__pyx_t_9(__pyx_t_8), 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; goto __pyx_L7_unpacking_done; __pyx_L6_unpacking_failed:; __Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0; if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __pyx_L7_unpacking_done:; } __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_name); __Pyx_XDECREF(__pyx_cur_scope->__pyx_v_name); __Pyx_GIVEREF(__pyx_t_6); __pyx_cur_scope->__pyx_v_name = __pyx_t_6; __pyx_t_6 = 0; __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_regexp); __Pyx_XDECREF(__pyx_cur_scope->__pyx_v_regexp); __Pyx_GIVEREF(__pyx_t_7); __pyx_cur_scope->__pyx_v_regexp = __pyx_t_7; __pyx_t_7 = 0; __Pyx_INCREF(__pyx_t_1); __Pyx_XGOTREF(__pyx_cur_scope->__pyx_v_i); __Pyx_XDECREF(__pyx_cur_scope->__pyx_v_i); __Pyx_GIVEREF(__pyx_t_1); __pyx_cur_scope->__pyx_v_i = __pyx_t_1; __pyx_t_2 = PyNumber_Add(__pyx_t_1, __pyx_int_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = __pyx_t_2; __pyx_t_2 = 0; __pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_2)); __Pyx_INCREF(__pyx_cur_scope->__pyx_v_name); PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_cur_scope->__pyx_v_name); __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_name); __Pyx_INCREF(__pyx_cur_scope->__pyx_v_i); PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_cur_scope->__pyx_v_i); __Pyx_GIVEREF(__pyx_cur_scope->__pyx_v_i); __pyx_r = ((PyObject *)__pyx_t_2); __pyx_t_2 = 0; __Pyx_XGIVEREF(__pyx_t_1); __pyx_cur_scope->__pyx_t_0 = __pyx_t_1; __Pyx_XGIVEREF(__pyx_t_3); __pyx_cur_scope->__pyx_t_1 = __pyx_t_3; __pyx_cur_scope->__pyx_t_2 = __pyx_t_4; __pyx_cur_scope->__pyx_t_3 = __pyx_t_5; __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); /* return from generator, yielding value */ __pyx_cur_scope->__pyx_base.resume_label = 1; return __pyx_r; __pyx_L8_resume_from_yield:; __pyx_t_1 = __pyx_cur_scope->__pyx_t_0; __pyx_cur_scope->__pyx_t_0 = 0; __Pyx_XGOTREF(__pyx_t_1); __pyx_t_3 = __pyx_cur_scope->__pyx_t_1; __pyx_cur_scope->__pyx_t_1 = 0; __Pyx_XGOTREF(__pyx_t_3); __pyx_t_4 = __pyx_cur_scope->__pyx_t_2; __pyx_t_5 = __pyx_cur_scope->__pyx_t_3; if (unlikely(!__pyx_sent_value)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;} } __Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; PyErr_SetNone(PyExc_StopIteration); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;} goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_6); __Pyx_XDECREF(__pyx_t_7); __Pyx_XDECREF(__pyx_t_8); __Pyx_AddTraceback("genexpr", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_L0:; __Pyx_XDECREF(__pyx_r); __pyx_cur_scope->__pyx_base.resume_label = -1; __Pyx_RefNannyFinishContext(); return NULL; } /* "tinycss/speedups.pyx":35 * cdef public Py_ssize_t line, column * * def __init__(self, type_, css_value, value, unit, line, column): # <<<<<<<<<<<<<< * self.type = type_ * self._as_css = css_value */ static int __pyx_pf_7tinycss_8speedups_6CToken___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ static int __pyx_pf_7tinycss_8speedups_6CToken___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_type_ = 0; PyObject *__pyx_v_css_value = 0; PyObject *__pyx_v_value = 0; PyObject *__pyx_v_unit = 0; PyObject *__pyx_v_line = 0; PyObject *__pyx_v_column = 0; int __pyx_r; __Pyx_RefNannyDeclarations Py_ssize_t __pyx_t_1; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__type_,&__pyx_n_s__css_value,&__pyx_n_s__value,&__pyx_n_s__unit,&__pyx_n_s__line,&__pyx_n_s__column,0}; __Pyx_RefNannySetupContext("__init__"); { PyObject* values[6] = {0,0,0,0,0,0}; if (unlikely(__pyx_kwds)) { Py_ssize_t kw_args; switch (PyTuple_GET_SIZE(__pyx_args)) { case 6: values[5] = PyTuple_GET_ITEM(__pyx_args, 5); case 5: values[4] = PyTuple_GET_ITEM(__pyx_args, 4); case 4: values[3] = PyTuple_GET_ITEM(__pyx_args, 3); case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2); case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); case 0: break; default: goto __pyx_L5_argtuple_error; } kw_args = PyDict_Size(__pyx_kwds); switch (PyTuple_GET_SIZE(__pyx_args)) { case 0: values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__type_); if (likely(values[0])) kw_args--; else goto __pyx_L5_argtuple_error; case 1: values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__css_value); if (likely(values[1])) kw_args--; else { __Pyx_RaiseArgtupleInvalid("__init__", 1, 6, 6, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L3_error;} } case 2: values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__value); if (likely(values[2])) kw_args--; else { __Pyx_RaiseArgtupleInvalid("__init__", 1, 6, 6, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L3_error;} } case 3: values[3] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__unit); if (likely(values[3])) kw_args--; else { __Pyx_RaiseArgtupleInvalid("__init__", 1, 6, 6, 3); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L3_error;} } case 4: values[4] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__line); if (likely(values[4])) kw_args--; else { __Pyx_RaiseArgtupleInvalid("__init__", 1, 6, 6, 4); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L3_error;} } case 5: values[5] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__column); if (likely(values[5])) kw_args--; else { __Pyx_RaiseArgtupleInvalid("__init__", 1, 6, 6, 5); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L3_error;} } } if (unlikely(kw_args > 0)) { if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L3_error;} } } else if (PyTuple_GET_SIZE(__pyx_args) != 6) { goto __pyx_L5_argtuple_error; } else { values[0] = PyTuple_GET_ITEM(__pyx_args, 0); values[1] = PyTuple_GET_ITEM(__pyx_args, 1); values[2] = PyTuple_GET_ITEM(__pyx_args, 2); values[3] = PyTuple_GET_ITEM(__pyx_args, 3); values[4] = PyTuple_GET_ITEM(__pyx_args, 4); values[5] = PyTuple_GET_ITEM(__pyx_args, 5); } __pyx_v_type_ = values[0]; __pyx_v_css_value = values[1]; __pyx_v_value = values[2]; __pyx_v_unit = values[3]; __pyx_v_line = values[4]; __pyx_v_column = values[5]; } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("__init__", 1, 6, 6, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 35; __pyx_clineno = __LINE__; goto __pyx_L3_error;} __pyx_L3_error:; __Pyx_AddTraceback("tinycss.speedups.CToken.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return -1; __pyx_L4_argument_unpacking_done:; /* "tinycss/speedups.pyx":36 * * def __init__(self, type_, css_value, value, unit, line, column): * self.type = type_ # <<<<<<<<<<<<<< * self._as_css = css_value * self.value = value */ __Pyx_INCREF(__pyx_v_type_); __Pyx_GIVEREF(__pyx_v_type_); __Pyx_GOTREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->type); __Pyx_DECREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->type); ((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->type = __pyx_v_type_; /* "tinycss/speedups.pyx":37 * def __init__(self, type_, css_value, value, unit, line, column): * self.type = type_ * self._as_css = css_value # <<<<<<<<<<<<<< * self.value = value * self.unit = unit */ __Pyx_INCREF(__pyx_v_css_value); __Pyx_GIVEREF(__pyx_v_css_value); __Pyx_GOTREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->_as_css); __Pyx_DECREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->_as_css); ((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->_as_css = __pyx_v_css_value; /* "tinycss/speedups.pyx":38 * self.type = type_ * self._as_css = css_value * self.value = value # <<<<<<<<<<<<<< * self.unit = unit * self.line = line */ __Pyx_INCREF(__pyx_v_value); __Pyx_GIVEREF(__pyx_v_value); __Pyx_GOTREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->value); __Pyx_DECREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->value); ((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->value = __pyx_v_value; /* "tinycss/speedups.pyx":39 * self._as_css = css_value * self.value = value * self.unit = unit # <<<<<<<<<<<<<< * self.line = line * self.column = column */ __Pyx_INCREF(__pyx_v_unit); __Pyx_GIVEREF(__pyx_v_unit); __Pyx_GOTREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->unit); __Pyx_DECREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->unit); ((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->unit = __pyx_v_unit; /* "tinycss/speedups.pyx":40 * self.value = value * self.unit = unit * self.line = line # <<<<<<<<<<<<<< * self.column = column * */ __pyx_t_1 = __Pyx_PyIndex_AsSsize_t(__pyx_v_line); if (unlikely((__pyx_t_1 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 40; __pyx_clineno = __LINE__; goto __pyx_L1_error;} ((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->line = __pyx_t_1; /* "tinycss/speedups.pyx":41 * self.unit = unit * self.line = line * self.column = column # <<<<<<<<<<<<<< * * def as_css(self): */ __pyx_t_1 = __Pyx_PyIndex_AsSsize_t(__pyx_v_column); if (unlikely((__pyx_t_1 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 41; __pyx_clineno = __LINE__; goto __pyx_L1_error;} ((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->column = __pyx_t_1; __pyx_r = 0; goto __pyx_L0; __pyx_L1_error:; __Pyx_AddTraceback("tinycss.speedups.CToken.__init__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } /* "tinycss/speedups.pyx":43 * self.column = column * * def as_css(self): # <<<<<<<<<<<<<< * """ * Return as an Unicode string the CSS representation of the token, */ static PyObject *__pyx_pf_7tinycss_8speedups_6CToken_1as_css(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/ static char __pyx_doc_7tinycss_8speedups_6CToken_1as_css[] = "\n Return as an Unicode string the CSS representation of the token,\n as parsed in the source.\n "; static PyObject *__pyx_pf_7tinycss_8speedups_6CToken_1as_css(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) { PyObject *__pyx_r = NULL; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("as_css"); /* "tinycss/speedups.pyx":48 * as parsed in the source. * """ * return self._as_css # <<<<<<<<<<<<<< * * def __repr__(self): */ __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->_as_css); __pyx_r = ((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->_as_css; goto __pyx_L0; __pyx_r = Py_None; __Pyx_INCREF(Py_None); __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } /* "tinycss/speedups.pyx":50 * return self._as_css * * def __repr__(self): # <<<<<<<<<<<<<< * return ('' * .format(self, self.unit or '')) */ static PyObject *__pyx_pf_7tinycss_8speedups_6CToken_2__repr__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pf_7tinycss_8speedups_6CToken_2__repr__(PyObject *__pyx_v_self) { PyObject *__pyx_r = NULL; __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_t_2; PyObject *__pyx_t_3 = NULL; PyObject *__pyx_t_4 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannySetupContext("__repr__"); /* "tinycss/speedups.pyx":51 * * def __repr__(self): * return ('' # <<<<<<<<<<<<<< * .format(self, self.unit or '')) * */ __Pyx_XDECREF(__pyx_r); /* "tinycss/speedups.pyx":52 * def __repr__(self): * return ('' * .format(self, self.unit or '')) # <<<<<<<<<<<<<< * * */ __pyx_t_1 = PyObject_GetAttr(((PyObject *)__pyx_kp_u_2), __pyx_n_s__format); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 52; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyObject_IsTrue(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->unit); if (unlikely(__pyx_t_2 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 52; __pyx_clineno = __LINE__; goto __pyx_L1_error;} if (!__pyx_t_2) { __Pyx_INCREF(((PyObject *)__pyx_kp_u_3)); __pyx_t_3 = __pyx_kp_u_3; } else { __Pyx_INCREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->unit); __pyx_t_3 = ((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->unit; } __pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 52; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_4)); __Pyx_INCREF(__pyx_v_self); PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_self); __Pyx_GIVEREF(__pyx_v_self); PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_t_3); __Pyx_GIVEREF(__pyx_t_3); __pyx_t_3 = 0; __pyx_t_3 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 52; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_3); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0; __pyx_r = __pyx_t_3; __pyx_t_3 = 0; goto __pyx_L0; __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_3); __Pyx_XDECREF(__pyx_t_4); __Pyx_AddTraceback("tinycss.speedups.CToken.__repr__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } /* "tinycss/speedups.pyx":32 * is_container = False * * cdef public object type, _as_css, value, unit # <<<<<<<<<<<<<< * cdef public Py_ssize_t line, column * */ static PyObject *__pyx_pf_7tinycss_8speedups_6CToken_4type___get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pf_7tinycss_8speedups_6CToken_4type___get__(PyObject *__pyx_v_self) { PyObject *__pyx_r = NULL; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__"); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->type); __pyx_r = ((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->type; goto __pyx_L0; __pyx_r = Py_None; __Pyx_INCREF(Py_None); __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } static int __pyx_pf_7tinycss_8speedups_6CToken_4type_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ static int __pyx_pf_7tinycss_8speedups_6CToken_4type_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__set__"); __Pyx_INCREF(__pyx_v_value); __Pyx_GIVEREF(__pyx_v_value); __Pyx_GOTREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->type); __Pyx_DECREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->type); ((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->type = __pyx_v_value; __pyx_r = 0; __Pyx_RefNannyFinishContext(); return __pyx_r; } static int __pyx_pf_7tinycss_8speedups_6CToken_4type_2__del__(PyObject *__pyx_v_self); /*proto*/ static int __pyx_pf_7tinycss_8speedups_6CToken_4type_2__del__(PyObject *__pyx_v_self) { int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__del__"); __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->type); __Pyx_DECREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->type); ((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->type = Py_None; __pyx_r = 0; __Pyx_RefNannyFinishContext(); return __pyx_r; } static PyObject *__pyx_pf_7tinycss_8speedups_6CToken_7_as_css___get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pf_7tinycss_8speedups_6CToken_7_as_css___get__(PyObject *__pyx_v_self) { PyObject *__pyx_r = NULL; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__"); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->_as_css); __pyx_r = ((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->_as_css; goto __pyx_L0; __pyx_r = Py_None; __Pyx_INCREF(Py_None); __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } static int __pyx_pf_7tinycss_8speedups_6CToken_7_as_css_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ static int __pyx_pf_7tinycss_8speedups_6CToken_7_as_css_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__set__"); __Pyx_INCREF(__pyx_v_value); __Pyx_GIVEREF(__pyx_v_value); __Pyx_GOTREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->_as_css); __Pyx_DECREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->_as_css); ((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->_as_css = __pyx_v_value; __pyx_r = 0; __Pyx_RefNannyFinishContext(); return __pyx_r; } static int __pyx_pf_7tinycss_8speedups_6CToken_7_as_css_2__del__(PyObject *__pyx_v_self); /*proto*/ static int __pyx_pf_7tinycss_8speedups_6CToken_7_as_css_2__del__(PyObject *__pyx_v_self) { int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__del__"); __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->_as_css); __Pyx_DECREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->_as_css); ((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->_as_css = Py_None; __pyx_r = 0; __Pyx_RefNannyFinishContext(); return __pyx_r; } static PyObject *__pyx_pf_7tinycss_8speedups_6CToken_5value___get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pf_7tinycss_8speedups_6CToken_5value___get__(PyObject *__pyx_v_self) { PyObject *__pyx_r = NULL; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__"); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->value); __pyx_r = ((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->value; goto __pyx_L0; __pyx_r = Py_None; __Pyx_INCREF(Py_None); __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } static int __pyx_pf_7tinycss_8speedups_6CToken_5value_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ static int __pyx_pf_7tinycss_8speedups_6CToken_5value_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__set__"); __Pyx_INCREF(__pyx_v_value); __Pyx_GIVEREF(__pyx_v_value); __Pyx_GOTREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->value); __Pyx_DECREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->value); ((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->value = __pyx_v_value; __pyx_r = 0; __Pyx_RefNannyFinishContext(); return __pyx_r; } static int __pyx_pf_7tinycss_8speedups_6CToken_5value_2__del__(PyObject *__pyx_v_self); /*proto*/ static int __pyx_pf_7tinycss_8speedups_6CToken_5value_2__del__(PyObject *__pyx_v_self) { int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__del__"); __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->value); __Pyx_DECREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->value); ((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->value = Py_None; __pyx_r = 0; __Pyx_RefNannyFinishContext(); return __pyx_r; } static PyObject *__pyx_pf_7tinycss_8speedups_6CToken_4unit___get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pf_7tinycss_8speedups_6CToken_4unit___get__(PyObject *__pyx_v_self) { PyObject *__pyx_r = NULL; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__get__"); __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->unit); __pyx_r = ((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->unit; goto __pyx_L0; __pyx_r = Py_None; __Pyx_INCREF(Py_None); __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } static int __pyx_pf_7tinycss_8speedups_6CToken_4unit_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ static int __pyx_pf_7tinycss_8speedups_6CToken_4unit_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__set__"); __Pyx_INCREF(__pyx_v_value); __Pyx_GIVEREF(__pyx_v_value); __Pyx_GOTREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->unit); __Pyx_DECREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->unit); ((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->unit = __pyx_v_value; __pyx_r = 0; __Pyx_RefNannyFinishContext(); return __pyx_r; } static int __pyx_pf_7tinycss_8speedups_6CToken_4unit_2__del__(PyObject *__pyx_v_self); /*proto*/ static int __pyx_pf_7tinycss_8speedups_6CToken_4unit_2__del__(PyObject *__pyx_v_self) { int __pyx_r; __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__del__"); __Pyx_INCREF(Py_None); __Pyx_GIVEREF(Py_None); __Pyx_GOTREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->unit); __Pyx_DECREF(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->unit); ((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->unit = Py_None; __pyx_r = 0; __Pyx_RefNannyFinishContext(); return __pyx_r; } /* "tinycss/speedups.pyx":33 * * cdef public object type, _as_css, value, unit * cdef public Py_ssize_t line, column # <<<<<<<<<<<<<< * * def __init__(self, type_, css_value, value, unit, line, column): */ static PyObject *__pyx_pf_7tinycss_8speedups_6CToken_4line___get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pf_7tinycss_8speedups_6CToken_4line___get__(PyObject *__pyx_v_self) { PyObject *__pyx_r = NULL; __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannySetupContext("__get__"); __Pyx_XDECREF(__pyx_r); __pyx_t_1 = PyInt_FromSsize_t(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->line); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_AddTraceback("tinycss.speedups.CToken.line.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } static int __pyx_pf_7tinycss_8speedups_6CToken_4line_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ static int __pyx_pf_7tinycss_8speedups_6CToken_4line_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { int __pyx_r; __Pyx_RefNannyDeclarations Py_ssize_t __pyx_t_1; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannySetupContext("__set__"); __pyx_t_1 = __Pyx_PyIndex_AsSsize_t(__pyx_v_value); if (unlikely((__pyx_t_1 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L1_error;} ((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->line = __pyx_t_1; __pyx_r = 0; goto __pyx_L0; __pyx_L1_error:; __Pyx_AddTraceback("tinycss.speedups.CToken.line.__set__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } static PyObject *__pyx_pf_7tinycss_8speedups_6CToken_6column___get__(PyObject *__pyx_v_self); /*proto*/ static PyObject *__pyx_pf_7tinycss_8speedups_6CToken_6column___get__(PyObject *__pyx_v_self) { PyObject *__pyx_r = NULL; __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannySetupContext("__get__"); __Pyx_XDECREF(__pyx_r); __pyx_t_1 = PyInt_FromSsize_t(((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->column); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_r = __pyx_t_1; __pyx_t_1 = 0; goto __pyx_L0; __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_AddTraceback("tinycss.speedups.CToken.column.__get__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } static int __pyx_pf_7tinycss_8speedups_6CToken_6column_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/ static int __pyx_pf_7tinycss_8speedups_6CToken_6column_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value) { int __pyx_r; __Pyx_RefNannyDeclarations Py_ssize_t __pyx_t_1; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; __Pyx_RefNannySetupContext("__set__"); __pyx_t_1 = __Pyx_PyIndex_AsSsize_t(__pyx_v_value); if (unlikely((__pyx_t_1 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 33; __pyx_clineno = __LINE__; goto __pyx_L1_error;} ((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_v_self)->column = __pyx_t_1; __pyx_r = 0; goto __pyx_L0; __pyx_L1_error:; __Pyx_AddTraceback("tinycss.speedups.CToken.column.__set__", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = -1; __pyx_L0:; __Pyx_RefNannyFinishContext(); return __pyx_r; } /* "tinycss/speedups.pyx":55 * * * def tokenize_flat(css_source, int ignore_comments=1): # <<<<<<<<<<<<<< * """ * :param css_source: */ static PyObject *__pyx_pf_7tinycss_8speedups_tokenize_flat(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/ static char __pyx_doc_7tinycss_8speedups_tokenize_flat[] = "\n :param css_source:\n CSS as an unicode string\n :param ignore_comments:\n if true (the default) comments will not be included in the\n return value\n :return:\n An iterator of :class:`Token`\n\n "; static PyMethodDef __pyx_mdef_7tinycss_8speedups_tokenize_flat = {__Pyx_NAMESTR("tokenize_flat"), (PyCFunction)__pyx_pf_7tinycss_8speedups_tokenize_flat, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_7tinycss_8speedups_tokenize_flat)}; static PyObject *__pyx_pf_7tinycss_8speedups_tokenize_flat(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) { PyObject *__pyx_v_css_source = 0; int __pyx_v_ignore_comments; PyObject *__pyx_v_tokens_dispatch = NULL; PyObject *__pyx_v_compiled_token_indexes = NULL; PyObject *__pyx_v_compiled_tokens = NULL; PyObject *__pyx_v_unicode_unescape = NULL; PyObject *__pyx_v_newline_unescape = NULL; PyObject *__pyx_v_simple_unescape = NULL; PyObject *__pyx_v_find_newlines = NULL; Py_ssize_t __pyx_v_BAD_COMMENT; Py_ssize_t __pyx_v_BAD_STRING; Py_ssize_t __pyx_v_PERCENTAGE; Py_ssize_t __pyx_v_DIMENSION; Py_ssize_t __pyx_v_ATKEYWORD; Py_ssize_t __pyx_v_FUNCTION; Py_ssize_t __pyx_v_COMMENT; Py_ssize_t __pyx_v_NUMBER; Py_ssize_t __pyx_v_STRING; Py_ssize_t __pyx_v_IDENT; Py_ssize_t __pyx_v_HASH; Py_ssize_t __pyx_v_URI; Py_ssize_t __pyx_v_DELIM; Py_ssize_t __pyx_v_pos; Py_ssize_t __pyx_v_line; Py_ssize_t __pyx_v_column; Py_ssize_t __pyx_v_source_len; Py_ssize_t __pyx_v_n_tokens; Py_ssize_t __pyx_v_length; Py_ssize_t __pyx_v_next_pos; Py_ssize_t __pyx_v_type_; struct __pyx_obj_7tinycss_8speedups_CToken *__pyx_v_token = 0; PyObject *__pyx_v_tokens = NULL; PyObject *__pyx_v_char = NULL; PyObject *__pyx_v_type_name = NULL; PyObject *__pyx_v_css_value = NULL; PyObject *__pyx_v_codepoint = NULL; PyObject *__pyx_v_regexp = NULL; PyObject *__pyx_v_match = NULL; PyObject *__pyx_v_unit = NULL; PyObject *__pyx_v_value = NULL; PyObject *__pyx_v_newlines = NULL; PyObject *__pyx_r = NULL; __Pyx_RefNannyDeclarations PyObject *__pyx_t_1 = NULL; Py_ssize_t __pyx_t_2; int __pyx_t_3; long __pyx_t_4; PyObject *__pyx_t_5 = NULL; PyObject *__pyx_t_6 = NULL; PyObject *__pyx_t_7 = NULL; PyObject *(*__pyx_t_8)(PyObject *); PyObject *__pyx_t_9 = NULL; PyObject *__pyx_t_10 = NULL; PyObject *(*__pyx_t_11)(PyObject *); Py_ssize_t __pyx_t_12; int __pyx_t_13; int __pyx_t_14; double __pyx_t_15; int __pyx_t_16; int __pyx_lineno = 0; const char *__pyx_filename = NULL; int __pyx_clineno = 0; static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__css_source,&__pyx_n_s__ignore_comments,0}; __Pyx_RefNannySetupContext("tokenize_flat"); __pyx_self = __pyx_self; { PyObject* values[2] = {0,0}; if (unlikely(__pyx_kwds)) { Py_ssize_t kw_args; switch (PyTuple_GET_SIZE(__pyx_args)) { case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); case 0: break; default: goto __pyx_L5_argtuple_error; } kw_args = PyDict_Size(__pyx_kwds); switch (PyTuple_GET_SIZE(__pyx_args)) { case 0: values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__css_source); if (likely(values[0])) kw_args--; else goto __pyx_L5_argtuple_error; case 1: if (kw_args > 0) { PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__ignore_comments); if (value) { values[1] = value; kw_args--; } } } if (unlikely(kw_args > 0)) { if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "tokenize_flat") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 55; __pyx_clineno = __LINE__; goto __pyx_L3_error;} } } else { switch (PyTuple_GET_SIZE(__pyx_args)) { case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1); case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0); break; default: goto __pyx_L5_argtuple_error; } } __pyx_v_css_source = values[0]; if (values[1]) { __pyx_v_ignore_comments = __Pyx_PyInt_AsInt(values[1]); if (unlikely((__pyx_v_ignore_comments == (int)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 55; __pyx_clineno = __LINE__; goto __pyx_L3_error;} } else { __pyx_v_ignore_comments = ((int)1); } } goto __pyx_L4_argument_unpacking_done; __pyx_L5_argtuple_error:; __Pyx_RaiseArgtupleInvalid("tokenize_flat", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 55; __pyx_clineno = __LINE__; goto __pyx_L3_error;} __pyx_L3_error:; __Pyx_AddTraceback("tinycss.speedups.tokenize_flat", __pyx_clineno, __pyx_lineno, __pyx_filename); __Pyx_RefNannyFinishContext(); return NULL; __pyx_L4_argument_unpacking_done:; /* "tinycss/speedups.pyx":67 * """ * # Make these local variable to avoid global lookups in the loop * tokens_dispatch = TOKEN_DISPATCH # <<<<<<<<<<<<<< * compiled_token_indexes = COMPILED_TOKEN_INDEXES * compiled_tokens = COMPILED_TOKEN_REGEXPS */ __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__TOKEN_DISPATCH); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_v_tokens_dispatch = __pyx_t_1; __pyx_t_1 = 0; /* "tinycss/speedups.pyx":68 * # Make these local variable to avoid global lookups in the loop * tokens_dispatch = TOKEN_DISPATCH * compiled_token_indexes = COMPILED_TOKEN_INDEXES # <<<<<<<<<<<<<< * compiled_tokens = COMPILED_TOKEN_REGEXPS * unicode_unescape = UNICODE_UNESCAPE */ __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s_4); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 68; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_v_compiled_token_indexes = __pyx_t_1; __pyx_t_1 = 0; /* "tinycss/speedups.pyx":69 * tokens_dispatch = TOKEN_DISPATCH * compiled_token_indexes = COMPILED_TOKEN_INDEXES * compiled_tokens = COMPILED_TOKEN_REGEXPS # <<<<<<<<<<<<<< * unicode_unescape = UNICODE_UNESCAPE * newline_unescape = NEWLINE_UNESCAPE */ __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_v_compiled_tokens = __pyx_t_1; __pyx_t_1 = 0; /* "tinycss/speedups.pyx":70 * compiled_token_indexes = COMPILED_TOKEN_INDEXES * compiled_tokens = COMPILED_TOKEN_REGEXPS * unicode_unescape = UNICODE_UNESCAPE # <<<<<<<<<<<<<< * newline_unescape = NEWLINE_UNESCAPE * simple_unescape = SIMPLE_UNESCAPE */ __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__UNICODE_UNESCAPE); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_v_unicode_unescape = __pyx_t_1; __pyx_t_1 = 0; /* "tinycss/speedups.pyx":71 * compiled_tokens = COMPILED_TOKEN_REGEXPS * unicode_unescape = UNICODE_UNESCAPE * newline_unescape = NEWLINE_UNESCAPE # <<<<<<<<<<<<<< * simple_unescape = SIMPLE_UNESCAPE * find_newlines = FIND_NEWLINES */ __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__NEWLINE_UNESCAPE); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_v_newline_unescape = __pyx_t_1; __pyx_t_1 = 0; /* "tinycss/speedups.pyx":72 * unicode_unescape = UNICODE_UNESCAPE * newline_unescape = NEWLINE_UNESCAPE * simple_unescape = SIMPLE_UNESCAPE # <<<<<<<<<<<<<< * find_newlines = FIND_NEWLINES * */ __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__SIMPLE_UNESCAPE); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_v_simple_unescape = __pyx_t_1; __pyx_t_1 = 0; /* "tinycss/speedups.pyx":73 * newline_unescape = NEWLINE_UNESCAPE * simple_unescape = SIMPLE_UNESCAPE * find_newlines = FIND_NEWLINES # <<<<<<<<<<<<<< * * # Use the integer indexes instead of string markers */ __pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__FIND_NEWLINES); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_v_find_newlines = __pyx_t_1; __pyx_t_1 = 0; /* "tinycss/speedups.pyx":76 * * # Use the integer indexes instead of string markers * cdef Py_ssize_t BAD_COMMENT = compiled_token_indexes['BAD_COMMENT'] # <<<<<<<<<<<<<< * cdef Py_ssize_t BAD_STRING = compiled_token_indexes['BAD_STRING'] * cdef Py_ssize_t PERCENTAGE = compiled_token_indexes['PERCENTAGE'] */ __pyx_t_1 = PyObject_GetItem(__pyx_v_compiled_token_indexes, ((PyObject *)__pyx_n_u__BAD_COMMENT)); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_BAD_COMMENT = __pyx_t_2; /* "tinycss/speedups.pyx":77 * # Use the integer indexes instead of string markers * cdef Py_ssize_t BAD_COMMENT = compiled_token_indexes['BAD_COMMENT'] * cdef Py_ssize_t BAD_STRING = compiled_token_indexes['BAD_STRING'] # <<<<<<<<<<<<<< * cdef Py_ssize_t PERCENTAGE = compiled_token_indexes['PERCENTAGE'] * cdef Py_ssize_t DIMENSION = compiled_token_indexes['DIMENSION'] */ __pyx_t_1 = PyObject_GetItem(__pyx_v_compiled_token_indexes, ((PyObject *)__pyx_n_u__BAD_STRING)); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 77; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 77; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_BAD_STRING = __pyx_t_2; /* "tinycss/speedups.pyx":78 * cdef Py_ssize_t BAD_COMMENT = compiled_token_indexes['BAD_COMMENT'] * cdef Py_ssize_t BAD_STRING = compiled_token_indexes['BAD_STRING'] * cdef Py_ssize_t PERCENTAGE = compiled_token_indexes['PERCENTAGE'] # <<<<<<<<<<<<<< * cdef Py_ssize_t DIMENSION = compiled_token_indexes['DIMENSION'] * cdef Py_ssize_t ATKEYWORD = compiled_token_indexes['ATKEYWORD'] */ __pyx_t_1 = PyObject_GetItem(__pyx_v_compiled_token_indexes, ((PyObject *)__pyx_n_u__PERCENTAGE)); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 78; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_PERCENTAGE = __pyx_t_2; /* "tinycss/speedups.pyx":79 * cdef Py_ssize_t BAD_STRING = compiled_token_indexes['BAD_STRING'] * cdef Py_ssize_t PERCENTAGE = compiled_token_indexes['PERCENTAGE'] * cdef Py_ssize_t DIMENSION = compiled_token_indexes['DIMENSION'] # <<<<<<<<<<<<<< * cdef Py_ssize_t ATKEYWORD = compiled_token_indexes['ATKEYWORD'] * cdef Py_ssize_t FUNCTION = compiled_token_indexes['FUNCTION'] */ __pyx_t_1 = PyObject_GetItem(__pyx_v_compiled_token_indexes, ((PyObject *)__pyx_n_u__DIMENSION)); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_DIMENSION = __pyx_t_2; /* "tinycss/speedups.pyx":80 * cdef Py_ssize_t PERCENTAGE = compiled_token_indexes['PERCENTAGE'] * cdef Py_ssize_t DIMENSION = compiled_token_indexes['DIMENSION'] * cdef Py_ssize_t ATKEYWORD = compiled_token_indexes['ATKEYWORD'] # <<<<<<<<<<<<<< * cdef Py_ssize_t FUNCTION = compiled_token_indexes['FUNCTION'] * cdef Py_ssize_t COMMENT = compiled_token_indexes['COMMENT'] */ __pyx_t_1 = PyObject_GetItem(__pyx_v_compiled_token_indexes, ((PyObject *)__pyx_n_u__ATKEYWORD)); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 80; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_ATKEYWORD = __pyx_t_2; /* "tinycss/speedups.pyx":81 * cdef Py_ssize_t DIMENSION = compiled_token_indexes['DIMENSION'] * cdef Py_ssize_t ATKEYWORD = compiled_token_indexes['ATKEYWORD'] * cdef Py_ssize_t FUNCTION = compiled_token_indexes['FUNCTION'] # <<<<<<<<<<<<<< * cdef Py_ssize_t COMMENT = compiled_token_indexes['COMMENT'] * cdef Py_ssize_t NUMBER = compiled_token_indexes['NUMBER'] */ __pyx_t_1 = PyObject_GetItem(__pyx_v_compiled_token_indexes, ((PyObject *)__pyx_n_u__FUNCTION)); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 81; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_FUNCTION = __pyx_t_2; /* "tinycss/speedups.pyx":82 * cdef Py_ssize_t ATKEYWORD = compiled_token_indexes['ATKEYWORD'] * cdef Py_ssize_t FUNCTION = compiled_token_indexes['FUNCTION'] * cdef Py_ssize_t COMMENT = compiled_token_indexes['COMMENT'] # <<<<<<<<<<<<<< * cdef Py_ssize_t NUMBER = compiled_token_indexes['NUMBER'] * cdef Py_ssize_t STRING = compiled_token_indexes['STRING'] */ __pyx_t_1 = PyObject_GetItem(__pyx_v_compiled_token_indexes, ((PyObject *)__pyx_n_u__COMMENT)); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_COMMENT = __pyx_t_2; /* "tinycss/speedups.pyx":83 * cdef Py_ssize_t FUNCTION = compiled_token_indexes['FUNCTION'] * cdef Py_ssize_t COMMENT = compiled_token_indexes['COMMENT'] * cdef Py_ssize_t NUMBER = compiled_token_indexes['NUMBER'] # <<<<<<<<<<<<<< * cdef Py_ssize_t STRING = compiled_token_indexes['STRING'] * cdef Py_ssize_t IDENT = compiled_token_indexes['IDENT'] */ __pyx_t_1 = PyObject_GetItem(__pyx_v_compiled_token_indexes, ((PyObject *)__pyx_n_u__NUMBER)); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_NUMBER = __pyx_t_2; /* "tinycss/speedups.pyx":84 * cdef Py_ssize_t COMMENT = compiled_token_indexes['COMMENT'] * cdef Py_ssize_t NUMBER = compiled_token_indexes['NUMBER'] * cdef Py_ssize_t STRING = compiled_token_indexes['STRING'] # <<<<<<<<<<<<<< * cdef Py_ssize_t IDENT = compiled_token_indexes['IDENT'] * cdef Py_ssize_t HASH = compiled_token_indexes['HASH'] */ __pyx_t_1 = PyObject_GetItem(__pyx_v_compiled_token_indexes, ((PyObject *)__pyx_n_u__STRING)); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 84; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_STRING = __pyx_t_2; /* "tinycss/speedups.pyx":85 * cdef Py_ssize_t NUMBER = compiled_token_indexes['NUMBER'] * cdef Py_ssize_t STRING = compiled_token_indexes['STRING'] * cdef Py_ssize_t IDENT = compiled_token_indexes['IDENT'] # <<<<<<<<<<<<<< * cdef Py_ssize_t HASH = compiled_token_indexes['HASH'] * cdef Py_ssize_t URI = compiled_token_indexes['URI'] */ __pyx_t_1 = PyObject_GetItem(__pyx_v_compiled_token_indexes, ((PyObject *)__pyx_n_u__IDENT)); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_IDENT = __pyx_t_2; /* "tinycss/speedups.pyx":86 * cdef Py_ssize_t STRING = compiled_token_indexes['STRING'] * cdef Py_ssize_t IDENT = compiled_token_indexes['IDENT'] * cdef Py_ssize_t HASH = compiled_token_indexes['HASH'] # <<<<<<<<<<<<<< * cdef Py_ssize_t URI = compiled_token_indexes['URI'] * cdef Py_ssize_t DELIM = -1 */ __pyx_t_1 = PyObject_GetItem(__pyx_v_compiled_token_indexes, ((PyObject *)__pyx_n_u__HASH)); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 86; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_HASH = __pyx_t_2; /* "tinycss/speedups.pyx":87 * cdef Py_ssize_t IDENT = compiled_token_indexes['IDENT'] * cdef Py_ssize_t HASH = compiled_token_indexes['HASH'] * cdef Py_ssize_t URI = compiled_token_indexes['URI'] # <<<<<<<<<<<<<< * cdef Py_ssize_t DELIM = -1 * */ __pyx_t_1 = PyObject_GetItem(__pyx_v_compiled_token_indexes, ((PyObject *)__pyx_n_u__URI)); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_1); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 87; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_v_URI = __pyx_t_2; /* "tinycss/speedups.pyx":88 * cdef Py_ssize_t HASH = compiled_token_indexes['HASH'] * cdef Py_ssize_t URI = compiled_token_indexes['URI'] * cdef Py_ssize_t DELIM = -1 # <<<<<<<<<<<<<< * * cdef Py_ssize_t pos = 0 */ __pyx_v_DELIM = -1; /* "tinycss/speedups.pyx":90 * cdef Py_ssize_t DELIM = -1 * * cdef Py_ssize_t pos = 0 # <<<<<<<<<<<<<< * cdef Py_ssize_t line = 1 * cdef Py_ssize_t column = 1 */ __pyx_v_pos = 0; /* "tinycss/speedups.pyx":91 * * cdef Py_ssize_t pos = 0 * cdef Py_ssize_t line = 1 # <<<<<<<<<<<<<< * cdef Py_ssize_t column = 1 * cdef Py_ssize_t source_len = len(css_source) */ __pyx_v_line = 1; /* "tinycss/speedups.pyx":92 * cdef Py_ssize_t pos = 0 * cdef Py_ssize_t line = 1 * cdef Py_ssize_t column = 1 # <<<<<<<<<<<<<< * cdef Py_ssize_t source_len = len(css_source) * cdef Py_ssize_t n_tokens = len(compiled_tokens) */ __pyx_v_column = 1; /* "tinycss/speedups.pyx":93 * cdef Py_ssize_t line = 1 * cdef Py_ssize_t column = 1 * cdef Py_ssize_t source_len = len(css_source) # <<<<<<<<<<<<<< * cdef Py_ssize_t n_tokens = len(compiled_tokens) * cdef Py_ssize_t length, next_pos, type_ */ __pyx_t_2 = PyObject_Length(__pyx_v_css_source); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __pyx_v_source_len = __pyx_t_2; /* "tinycss/speedups.pyx":94 * cdef Py_ssize_t column = 1 * cdef Py_ssize_t source_len = len(css_source) * cdef Py_ssize_t n_tokens = len(compiled_tokens) # <<<<<<<<<<<<<< * cdef Py_ssize_t length, next_pos, type_ * cdef CToken token */ __pyx_t_2 = PyObject_Length(__pyx_v_compiled_tokens); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __pyx_v_n_tokens = __pyx_t_2; /* "tinycss/speedups.pyx":98 * cdef CToken token * * tokens = [] # <<<<<<<<<<<<<< * while pos < source_len: * char = css_source[pos] */ __pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_1)); __pyx_v_tokens = __pyx_t_1; __pyx_t_1 = 0; /* "tinycss/speedups.pyx":99 * * tokens = [] * while pos < source_len: # <<<<<<<<<<<<<< * char = css_source[pos] * if char in ':;{}()[]': */ while (1) { __pyx_t_3 = (__pyx_v_pos < __pyx_v_source_len); if (!__pyx_t_3) break; /* "tinycss/speedups.pyx":100 * tokens = [] * while pos < source_len: * char = css_source[pos] # <<<<<<<<<<<<<< * if char in ':;{}()[]': * type_ = -1 # not parsed further anyway */ __pyx_t_1 = __Pyx_GetItemInt(__pyx_v_css_source, __pyx_v_pos, sizeof(Py_ssize_t), PyInt_FromSsize_t); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __Pyx_XDECREF(__pyx_v_char); __pyx_v_char = __pyx_t_1; __pyx_t_1 = 0; /* "tinycss/speedups.pyx":101 * while pos < source_len: * char = css_source[pos] * if char in ':;{}()[]': # <<<<<<<<<<<<<< * type_ = -1 # not parsed further anyway * type_name = char */ __pyx_t_3 = ((PySequence_Contains(((PyObject *)__pyx_kp_u_5), __pyx_v_char))); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;} if (__pyx_t_3) { /* "tinycss/speedups.pyx":102 * char = css_source[pos] * if char in ':;{}()[]': * type_ = -1 # not parsed further anyway # <<<<<<<<<<<<<< * type_name = char * css_value = char */ __pyx_v_type_ = -1; /* "tinycss/speedups.pyx":103 * if char in ':;{}()[]': * type_ = -1 # not parsed further anyway * type_name = char # <<<<<<<<<<<<<< * css_value = char * else: */ __Pyx_INCREF(__pyx_v_char); __Pyx_XDECREF(__pyx_v_type_name); __pyx_v_type_name = __pyx_v_char; /* "tinycss/speedups.pyx":104 * type_ = -1 # not parsed further anyway * type_name = char * css_value = char # <<<<<<<<<<<<<< * else: * codepoint = min(ord(char), 160) */ __Pyx_INCREF(__pyx_v_char); __Pyx_XDECREF(__pyx_v_css_value); __pyx_v_css_value = __pyx_v_char; goto __pyx_L8; } /*else*/ { /* "tinycss/speedups.pyx":106 * css_value = char * else: * codepoint = min(ord(char), 160) # <<<<<<<<<<<<<< * for type_, type_name, regexp in tokens_dispatch[codepoint]: * match = regexp(css_source, pos) */ __pyx_t_4 = 160; __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_1)); __Pyx_INCREF(__pyx_v_char); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_char); __Pyx_GIVEREF(__pyx_v_char); __pyx_t_5 = PyObject_Call(__pyx_builtin_ord, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; __pyx_t_6 = PyInt_FromLong(__pyx_t_4); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_6); __pyx_t_7 = PyObject_RichCompare(__pyx_t_6, __pyx_t_5, Py_LT); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_7); __Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0; __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_t_7); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; if (__pyx_t_3) { __pyx_t_7 = PyInt_FromLong(__pyx_t_4); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_7); __pyx_t_1 = __pyx_t_7; __pyx_t_7 = 0; } else { __Pyx_INCREF(__pyx_t_5); __pyx_t_1 = __pyx_t_5; } __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_INCREF(__pyx_t_1); __Pyx_XDECREF(__pyx_v_codepoint); __pyx_v_codepoint = __pyx_t_1; __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; /* "tinycss/speedups.pyx":107 * else: * codepoint = min(ord(char), 160) * for type_, type_name, regexp in tokens_dispatch[codepoint]: # <<<<<<<<<<<<<< * match = regexp(css_source, pos) * if match: */ __pyx_t_1 = PyObject_GetItem(__pyx_v_tokens_dispatch, __pyx_v_codepoint); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); if (PyList_CheckExact(__pyx_t_1) || PyTuple_CheckExact(__pyx_t_1)) { __pyx_t_5 = __pyx_t_1; __Pyx_INCREF(__pyx_t_5); __pyx_t_2 = 0; __pyx_t_8 = NULL; } else { __pyx_t_2 = -1; __pyx_t_5 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_5); __pyx_t_8 = Py_TYPE(__pyx_t_5)->tp_iternext; } __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; for (;;) { if (PyList_CheckExact(__pyx_t_5)) { if (__pyx_t_2 >= PyList_GET_SIZE(__pyx_t_5)) break; __pyx_t_1 = PyList_GET_ITEM(__pyx_t_5, __pyx_t_2); __Pyx_INCREF(__pyx_t_1); __pyx_t_2++; } else if (PyTuple_CheckExact(__pyx_t_5)) { if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_5)) break; __pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_5, __pyx_t_2); __Pyx_INCREF(__pyx_t_1); __pyx_t_2++; } else { __pyx_t_1 = __pyx_t_8(__pyx_t_5); if (unlikely(!__pyx_t_1)) { if (PyErr_Occurred()) { if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) PyErr_Clear(); else {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} } break; } __Pyx_GOTREF(__pyx_t_1); } if ((likely(PyTuple_CheckExact(__pyx_t_1))) || (PyList_CheckExact(__pyx_t_1))) { PyObject* sequence = __pyx_t_1; if (likely(PyTuple_CheckExact(sequence))) { if (unlikely(PyTuple_GET_SIZE(sequence) != 3)) { if (PyTuple_GET_SIZE(sequence) > 3) __Pyx_RaiseTooManyValuesError(3); else __Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(sequence)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} } __pyx_t_7 = PyTuple_GET_ITEM(sequence, 0); __pyx_t_6 = PyTuple_GET_ITEM(sequence, 1); __pyx_t_9 = PyTuple_GET_ITEM(sequence, 2); } else { if (unlikely(PyList_GET_SIZE(sequence) != 3)) { if (PyList_GET_SIZE(sequence) > 3) __Pyx_RaiseTooManyValuesError(3); else __Pyx_RaiseNeedMoreValuesError(PyList_GET_SIZE(sequence)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} } __pyx_t_7 = PyList_GET_ITEM(sequence, 0); __pyx_t_6 = PyList_GET_ITEM(sequence, 1); __pyx_t_9 = PyList_GET_ITEM(sequence, 2); } __Pyx_INCREF(__pyx_t_7); __Pyx_INCREF(__pyx_t_6); __Pyx_INCREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; } else { Py_ssize_t index = -1; __pyx_t_10 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_10); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_11 = Py_TYPE(__pyx_t_10)->tp_iternext; index = 0; __pyx_t_7 = __pyx_t_11(__pyx_t_10); if (unlikely(!__pyx_t_7)) goto __pyx_L11_unpacking_failed; __Pyx_GOTREF(__pyx_t_7); index = 1; __pyx_t_6 = __pyx_t_11(__pyx_t_10); if (unlikely(!__pyx_t_6)) goto __pyx_L11_unpacking_failed; __Pyx_GOTREF(__pyx_t_6); index = 2; __pyx_t_9 = __pyx_t_11(__pyx_t_10); if (unlikely(!__pyx_t_9)) goto __pyx_L11_unpacking_failed; __Pyx_GOTREF(__pyx_t_9); if (__Pyx_IternextUnpackEndCheck(__pyx_t_11(__pyx_t_10), 3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; goto __pyx_L12_unpacking_done; __pyx_L11_unpacking_failed:; __Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0; if (PyErr_Occurred() && PyErr_ExceptionMatches(PyExc_StopIteration)) PyErr_Clear(); if (!PyErr_Occurred()) __Pyx_RaiseNeedMoreValuesError(index); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __pyx_L12_unpacking_done:; } __pyx_t_12 = __Pyx_PyIndex_AsSsize_t(__pyx_t_7); if (unlikely((__pyx_t_12 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0; __pyx_v_type_ = __pyx_t_12; __Pyx_XDECREF(__pyx_v_type_name); __pyx_v_type_name = __pyx_t_6; __pyx_t_6 = 0; __Pyx_XDECREF(__pyx_v_regexp); __pyx_v_regexp = __pyx_t_9; __pyx_t_9 = 0; /* "tinycss/speedups.pyx":108 * codepoint = min(ord(char), 160) * for type_, type_name, regexp in tokens_dispatch[codepoint]: * match = regexp(css_source, pos) # <<<<<<<<<<<<<< * if match: * # First match is the longest. See comments on TOKENS above. */ __pyx_t_1 = PyInt_FromSsize_t(__pyx_v_pos); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_t_9 = PyTuple_New(2); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_9)); __Pyx_INCREF(__pyx_v_css_source); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_css_source); __Pyx_GIVEREF(__pyx_v_css_source); PyTuple_SET_ITEM(__pyx_t_9, 1, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyObject_Call(__pyx_v_regexp, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; __Pyx_XDECREF(__pyx_v_match); __pyx_v_match = __pyx_t_1; __pyx_t_1 = 0; /* "tinycss/speedups.pyx":109 * for type_, type_name, regexp in tokens_dispatch[codepoint]: * match = regexp(css_source, pos) * if match: # <<<<<<<<<<<<<< * # First match is the longest. See comments on TOKENS above. * css_value = match.group() */ __pyx_t_3 = __Pyx_PyObject_IsTrue(__pyx_v_match); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;} if (__pyx_t_3) { /* "tinycss/speedups.pyx":111 * if match: * # First match is the longest. See comments on TOKENS above. * css_value = match.group() # <<<<<<<<<<<<<< * break * else: */ __pyx_t_1 = PyObject_GetAttr(__pyx_v_match, __pyx_n_s__group); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_t_9 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_XDECREF(__pyx_v_css_value); __pyx_v_css_value = __pyx_t_9; __pyx_t_9 = 0; /* "tinycss/speedups.pyx":112 * # First match is the longest. See comments on TOKENS above. * css_value = match.group() * break # <<<<<<<<<<<<<< * else: * # No match. */ goto __pyx_L10_break; goto __pyx_L13; } __pyx_L13:; } /*else*/ { /* "tinycss/speedups.pyx":119 * # ... but quotes at the start of a token are always matched * # by STRING or BAD_STRING. So DELIM is any single character. * type_ = DELIM # <<<<<<<<<<<<<< * type_name = 'DELIM' * css_value = char */ __pyx_v_type_ = __pyx_v_DELIM; /* "tinycss/speedups.pyx":120 * # by STRING or BAD_STRING. So DELIM is any single character. * type_ = DELIM * type_name = 'DELIM' # <<<<<<<<<<<<<< * css_value = char * length = len(css_value) */ __Pyx_INCREF(((PyObject *)__pyx_n_u__DELIM)); __Pyx_XDECREF(__pyx_v_type_name); __pyx_v_type_name = ((PyObject *)__pyx_n_u__DELIM); /* "tinycss/speedups.pyx":121 * type_ = DELIM * type_name = 'DELIM' * css_value = char # <<<<<<<<<<<<<< * length = len(css_value) * next_pos = pos + length */ __Pyx_INCREF(__pyx_v_char); __Pyx_XDECREF(__pyx_v_css_value); __pyx_v_css_value = __pyx_v_char; } __pyx_L10_break:; __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; } __pyx_L8:; /* "tinycss/speedups.pyx":122 * type_name = 'DELIM' * css_value = char * length = len(css_value) # <<<<<<<<<<<<<< * next_pos = pos + length * */ __pyx_t_2 = PyObject_Length(__pyx_v_css_value); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 122; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __pyx_v_length = __pyx_t_2; /* "tinycss/speedups.pyx":123 * css_value = char * length = len(css_value) * next_pos = pos + length # <<<<<<<<<<<<<< * * # A BAD_COMMENT is a comment at EOF. Ignore it too. */ __pyx_v_next_pos = (__pyx_v_pos + __pyx_v_length); /* "tinycss/speedups.pyx":126 * * # A BAD_COMMENT is a comment at EOF. Ignore it too. * if not (ignore_comments and type_ in (COMMENT, BAD_COMMENT)): # <<<<<<<<<<<<<< * # Parse numbers, extract strings and URIs, unescape * unit = None */ if (__pyx_v_ignore_comments) { __pyx_t_2 = __pyx_v_type_; __pyx_t_3 = ((int)(__pyx_t_2 == __pyx_v_COMMENT)); if (!__pyx_t_3) { __pyx_t_13 = ((int)(__pyx_t_2 == __pyx_v_BAD_COMMENT)); __pyx_t_14 = __pyx_t_13; } else { __pyx_t_14 = __pyx_t_3; } __pyx_t_3 = __pyx_t_14; __pyx_t_14 = __pyx_t_3; } else { __pyx_t_14 = __pyx_v_ignore_comments; } __pyx_t_3 = (!__pyx_t_14); if (__pyx_t_3) { /* "tinycss/speedups.pyx":128 * if not (ignore_comments and type_ in (COMMENT, BAD_COMMENT)): * # Parse numbers, extract strings and URIs, unescape * unit = None # <<<<<<<<<<<<<< * if type_ == DIMENSION: * value = match.group(1) */ __Pyx_INCREF(Py_None); __Pyx_XDECREF(__pyx_v_unit); __pyx_v_unit = Py_None; /* "tinycss/speedups.pyx":129 * # Parse numbers, extract strings and URIs, unescape * unit = None * if type_ == DIMENSION: # <<<<<<<<<<<<<< * value = match.group(1) * value = float(value) if '.' in value else int(value) */ __pyx_t_3 = (__pyx_v_type_ == __pyx_v_DIMENSION); if (__pyx_t_3) { if (unlikely(!__pyx_v_match)) { __Pyx_RaiseUnboundLocalError("match"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_5 = PyObject_GetAttr(__pyx_v_match, __pyx_n_s__group); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} /* "tinycss/speedups.pyx":130 * unit = None * if type_ == DIMENSION: * value = match.group(1) # <<<<<<<<<<<<<< * value = float(value) if '.' in value else int(value) * unit = match.group(2) */ __Pyx_GOTREF(__pyx_t_5); __pyx_t_9 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_k_tuple_6), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_XDECREF(__pyx_v_value); __pyx_v_value = __pyx_t_9; __pyx_t_9 = 0; /* "tinycss/speedups.pyx":131 * if type_ == DIMENSION: * value = match.group(1) * value = float(value) if '.' in value else int(value) # <<<<<<<<<<<<<< * unit = match.group(2) * unit = simple_unescape(unit) */ __pyx_t_3 = ((PySequence_Contains(__pyx_v_value, ((PyObject *)__pyx_kp_u_7)))); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} if (__pyx_t_3) { __pyx_t_15 = __Pyx_PyObject_AsDouble(__pyx_v_value); if (unlikely(__pyx_t_15 == ((double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __pyx_t_5 = PyFloat_FromDouble(__pyx_t_15); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_5); __pyx_t_9 = __pyx_t_5; __pyx_t_5 = 0; } else { __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_5)); __Pyx_INCREF(__pyx_v_value); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_value); __Pyx_GIVEREF(__pyx_v_value); __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)(&PyInt_Type))), ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; __pyx_t_9 = __pyx_t_1; __pyx_t_1 = 0; } __Pyx_DECREF(__pyx_v_value); __pyx_v_value = __pyx_t_9; __pyx_t_9 = 0; /* "tinycss/speedups.pyx":132 * value = match.group(1) * value = float(value) if '.' in value else int(value) * unit = match.group(2) # <<<<<<<<<<<<<< * unit = simple_unescape(unit) * unit = unicode_unescape(unit) */ __pyx_t_9 = PyObject_GetAttr(__pyx_v_match, __pyx_n_s__group); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_9); __pyx_t_1 = PyObject_Call(__pyx_t_9, ((PyObject *)__pyx_k_tuple_8), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __Pyx_DECREF(__pyx_v_unit); __pyx_v_unit = __pyx_t_1; __pyx_t_1 = 0; /* "tinycss/speedups.pyx":133 * value = float(value) if '.' in value else int(value) * unit = match.group(2) * unit = simple_unescape(unit) # <<<<<<<<<<<<<< * unit = unicode_unescape(unit) * unit = unit.lower() # normalize */ __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 133; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_1)); __Pyx_INCREF(__pyx_v_unit); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_unit); __Pyx_GIVEREF(__pyx_v_unit); __pyx_t_9 = PyObject_Call(__pyx_v_simple_unescape, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 133; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_v_unit); __pyx_v_unit = __pyx_t_9; __pyx_t_9 = 0; /* "tinycss/speedups.pyx":134 * unit = match.group(2) * unit = simple_unescape(unit) * unit = unicode_unescape(unit) # <<<<<<<<<<<<<< * unit = unit.lower() # normalize * elif type_ == PERCENTAGE: */ __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 134; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_9)); __Pyx_INCREF(__pyx_v_unit); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_unit); __Pyx_GIVEREF(__pyx_v_unit); __pyx_t_1 = PyObject_Call(__pyx_v_unicode_unescape, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 134; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; __Pyx_DECREF(__pyx_v_unit); __pyx_v_unit = __pyx_t_1; __pyx_t_1 = 0; /* "tinycss/speedups.pyx":135 * unit = simple_unescape(unit) * unit = unicode_unescape(unit) * unit = unit.lower() # normalize # <<<<<<<<<<<<<< * elif type_ == PERCENTAGE: * value = css_value[:-1] */ __pyx_t_1 = PyObject_GetAttr(__pyx_v_unit, __pyx_n_s__lower); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_t_9 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_v_unit); __pyx_v_unit = __pyx_t_9; __pyx_t_9 = 0; goto __pyx_L16; } /* "tinycss/speedups.pyx":136 * unit = unicode_unescape(unit) * unit = unit.lower() # normalize * elif type_ == PERCENTAGE: # <<<<<<<<<<<<<< * value = css_value[:-1] * value = float(value) if '.' in value else int(value) */ __pyx_t_3 = (__pyx_v_type_ == __pyx_v_PERCENTAGE); if (__pyx_t_3) { /* "tinycss/speedups.pyx":137 * unit = unit.lower() # normalize * elif type_ == PERCENTAGE: * value = css_value[:-1] # <<<<<<<<<<<<<< * value = float(value) if '.' in value else int(value) * unit = '%' */ __pyx_t_9 = __Pyx_PySequence_GetSlice(__pyx_v_css_value, 0, -1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 137; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_9); __Pyx_XDECREF(__pyx_v_value); __pyx_v_value = __pyx_t_9; __pyx_t_9 = 0; /* "tinycss/speedups.pyx":138 * elif type_ == PERCENTAGE: * value = css_value[:-1] * value = float(value) if '.' in value else int(value) # <<<<<<<<<<<<<< * unit = '%' * elif type_ == NUMBER: */ __pyx_t_3 = ((PySequence_Contains(__pyx_v_value, ((PyObject *)__pyx_kp_u_7)))); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} if (__pyx_t_3) { __pyx_t_15 = __Pyx_PyObject_AsDouble(__pyx_v_value); if (unlikely(__pyx_t_15 == ((double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __pyx_t_1 = PyFloat_FromDouble(__pyx_t_15); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_t_9 = __pyx_t_1; __pyx_t_1 = 0; } else { __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_1)); __Pyx_INCREF(__pyx_v_value); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_value); __Pyx_GIVEREF(__pyx_v_value); __pyx_t_5 = PyObject_Call(((PyObject *)((PyObject*)(&PyInt_Type))), ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 138; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; __pyx_t_9 = __pyx_t_5; __pyx_t_5 = 0; } __Pyx_DECREF(__pyx_v_value); __pyx_v_value = __pyx_t_9; __pyx_t_9 = 0; /* "tinycss/speedups.pyx":139 * value = css_value[:-1] * value = float(value) if '.' in value else int(value) * unit = '%' # <<<<<<<<<<<<<< * elif type_ == NUMBER: * value = css_value */ __Pyx_INCREF(((PyObject *)__pyx_kp_u_9)); __Pyx_DECREF(__pyx_v_unit); __pyx_v_unit = ((PyObject *)__pyx_kp_u_9); goto __pyx_L16; } /* "tinycss/speedups.pyx":140 * value = float(value) if '.' in value else int(value) * unit = '%' * elif type_ == NUMBER: # <<<<<<<<<<<<<< * value = css_value * if '.' in value: */ __pyx_t_3 = (__pyx_v_type_ == __pyx_v_NUMBER); if (__pyx_t_3) { /* "tinycss/speedups.pyx":141 * unit = '%' * elif type_ == NUMBER: * value = css_value # <<<<<<<<<<<<<< * if '.' in value: * value = float(value) */ __Pyx_INCREF(__pyx_v_css_value); __Pyx_XDECREF(__pyx_v_value); __pyx_v_value = __pyx_v_css_value; /* "tinycss/speedups.pyx":142 * elif type_ == NUMBER: * value = css_value * if '.' in value: # <<<<<<<<<<<<<< * value = float(value) * else: */ __pyx_t_3 = ((PySequence_Contains(__pyx_v_value, ((PyObject *)__pyx_kp_u_7)))); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 142; __pyx_clineno = __LINE__; goto __pyx_L1_error;} if (__pyx_t_3) { /* "tinycss/speedups.pyx":143 * value = css_value * if '.' in value: * value = float(value) # <<<<<<<<<<<<<< * else: * value = int(value) */ __pyx_t_15 = __Pyx_PyObject_AsDouble(__pyx_v_value); if (unlikely(__pyx_t_15 == ((double)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 143; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __pyx_t_9 = PyFloat_FromDouble(__pyx_t_15); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 143; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_v_value); __pyx_v_value = __pyx_t_9; __pyx_t_9 = 0; goto __pyx_L17; } /*else*/ { /* "tinycss/speedups.pyx":145 * value = float(value) * else: * value = int(value) # <<<<<<<<<<<<<< * type_name = 'INTEGER' * elif type_ in (IDENT, ATKEYWORD, HASH, FUNCTION): */ __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 145; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_9)); __Pyx_INCREF(__pyx_v_value); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_value); __Pyx_GIVEREF(__pyx_v_value); __pyx_t_5 = PyObject_Call(((PyObject *)((PyObject*)(&PyInt_Type))), ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 145; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; __Pyx_DECREF(__pyx_v_value); __pyx_v_value = __pyx_t_5; __pyx_t_5 = 0; /* "tinycss/speedups.pyx":146 * else: * value = int(value) * type_name = 'INTEGER' # <<<<<<<<<<<<<< * elif type_ in (IDENT, ATKEYWORD, HASH, FUNCTION): * value = simple_unescape(css_value) */ __Pyx_INCREF(((PyObject *)__pyx_n_u__INTEGER)); __Pyx_DECREF(__pyx_v_type_name); __pyx_v_type_name = ((PyObject *)__pyx_n_u__INTEGER); } __pyx_L17:; goto __pyx_L16; } /* "tinycss/speedups.pyx":147 * value = int(value) * type_name = 'INTEGER' * elif type_ in (IDENT, ATKEYWORD, HASH, FUNCTION): # <<<<<<<<<<<<<< * value = simple_unescape(css_value) * value = unicode_unescape(value) */ __pyx_t_2 = __pyx_v_type_; __pyx_t_3 = ((int)(__pyx_t_2 == __pyx_v_IDENT)); if (!__pyx_t_3) { __pyx_t_14 = ((int)(__pyx_t_2 == __pyx_v_ATKEYWORD)); __pyx_t_13 = __pyx_t_14; } else { __pyx_t_13 = __pyx_t_3; } if (!__pyx_t_13) { __pyx_t_3 = ((int)(__pyx_t_2 == __pyx_v_HASH)); __pyx_t_14 = __pyx_t_3; } else { __pyx_t_14 = __pyx_t_13; } if (!__pyx_t_14) { __pyx_t_13 = ((int)(__pyx_t_2 == __pyx_v_FUNCTION)); __pyx_t_3 = __pyx_t_13; } else { __pyx_t_3 = __pyx_t_14; } __pyx_t_14 = __pyx_t_3; if (__pyx_t_14) { /* "tinycss/speedups.pyx":148 * type_name = 'INTEGER' * elif type_ in (IDENT, ATKEYWORD, HASH, FUNCTION): * value = simple_unescape(css_value) # <<<<<<<<<<<<<< * value = unicode_unescape(value) * elif type_ == URI: */ __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_5)); __Pyx_INCREF(__pyx_v_css_value); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_css_value); __Pyx_GIVEREF(__pyx_v_css_value); __pyx_t_9 = PyObject_Call(__pyx_v_simple_unescape, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 148; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; __Pyx_XDECREF(__pyx_v_value); __pyx_v_value = __pyx_t_9; __pyx_t_9 = 0; /* "tinycss/speedups.pyx":149 * elif type_ in (IDENT, ATKEYWORD, HASH, FUNCTION): * value = simple_unescape(css_value) * value = unicode_unescape(value) # <<<<<<<<<<<<<< * elif type_ == URI: * value = match.group(1) */ __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 149; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_9)); __Pyx_INCREF(__pyx_v_value); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_value); __Pyx_GIVEREF(__pyx_v_value); __pyx_t_5 = PyObject_Call(__pyx_v_unicode_unescape, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 149; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; __Pyx_DECREF(__pyx_v_value); __pyx_v_value = __pyx_t_5; __pyx_t_5 = 0; goto __pyx_L16; } /* "tinycss/speedups.pyx":150 * value = simple_unescape(css_value) * value = unicode_unescape(value) * elif type_ == URI: # <<<<<<<<<<<<<< * value = match.group(1) * if value and value[0] in '"\'': */ __pyx_t_14 = (__pyx_v_type_ == __pyx_v_URI); if (__pyx_t_14) { if (unlikely(!__pyx_v_match)) { __Pyx_RaiseUnboundLocalError("match"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 151; __pyx_clineno = __LINE__; goto __pyx_L1_error;} }__pyx_t_5 = PyObject_GetAttr(__pyx_v_match, __pyx_n_s__group); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 151; __pyx_clineno = __LINE__; goto __pyx_L1_error;} /* "tinycss/speedups.pyx":151 * value = unicode_unescape(value) * elif type_ == URI: * value = match.group(1) # <<<<<<<<<<<<<< * if value and value[0] in '"\'': * value = value[1:-1] # Remove quotes */ __Pyx_GOTREF(__pyx_t_5); __pyx_t_9 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_k_tuple_10), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 151; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __Pyx_XDECREF(__pyx_v_value); __pyx_v_value = __pyx_t_9; __pyx_t_9 = 0; /* "tinycss/speedups.pyx":152 * elif type_ == URI: * value = match.group(1) * if value and value[0] in '"\'': # <<<<<<<<<<<<<< * value = value[1:-1] # Remove quotes * value = newline_unescape(value) */ __pyx_t_14 = __Pyx_PyObject_IsTrue(__pyx_v_value); if (unlikely(__pyx_t_14 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;} if (__pyx_t_14) { __pyx_t_9 = __Pyx_GetItemInt(__pyx_v_value, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_9) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_9); __pyx_t_3 = ((PySequence_Contains(((PyObject *)__pyx_kp_u_11), __pyx_t_9))); if (unlikely(__pyx_t_3 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_t_13 = __pyx_t_3; } else { __pyx_t_13 = __pyx_t_14; } if (__pyx_t_13) { /* "tinycss/speedups.pyx":153 * value = match.group(1) * if value and value[0] in '"\'': * value = value[1:-1] # Remove quotes # <<<<<<<<<<<<<< * value = newline_unescape(value) * value = simple_unescape(value) */ __pyx_t_9 = __Pyx_PySequence_GetSlice(__pyx_v_value, 1, -1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 153; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_v_value); __pyx_v_value = __pyx_t_9; __pyx_t_9 = 0; /* "tinycss/speedups.pyx":154 * if value and value[0] in '"\'': * value = value[1:-1] # Remove quotes * value = newline_unescape(value) # <<<<<<<<<<<<<< * value = simple_unescape(value) * value = unicode_unescape(value) */ __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_9)); __Pyx_INCREF(__pyx_v_value); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_value); __Pyx_GIVEREF(__pyx_v_value); __pyx_t_5 = PyObject_Call(__pyx_v_newline_unescape, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; __Pyx_DECREF(__pyx_v_value); __pyx_v_value = __pyx_t_5; __pyx_t_5 = 0; goto __pyx_L18; } __pyx_L18:; /* "tinycss/speedups.pyx":155 * value = value[1:-1] # Remove quotes * value = newline_unescape(value) * value = simple_unescape(value) # <<<<<<<<<<<<<< * value = unicode_unescape(value) * elif type_ == STRING: */ __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 155; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_5)); __Pyx_INCREF(__pyx_v_value); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_value); __Pyx_GIVEREF(__pyx_v_value); __pyx_t_9 = PyObject_Call(__pyx_v_simple_unescape, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 155; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_v_value); __pyx_v_value = __pyx_t_9; __pyx_t_9 = 0; /* "tinycss/speedups.pyx":156 * value = newline_unescape(value) * value = simple_unescape(value) * value = unicode_unescape(value) # <<<<<<<<<<<<<< * elif type_ == STRING: * value = css_value[1:-1] # Remove quotes */ __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 156; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_9)); __Pyx_INCREF(__pyx_v_value); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_value); __Pyx_GIVEREF(__pyx_v_value); __pyx_t_5 = PyObject_Call(__pyx_v_unicode_unescape, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 156; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; __Pyx_DECREF(__pyx_v_value); __pyx_v_value = __pyx_t_5; __pyx_t_5 = 0; goto __pyx_L16; } /* "tinycss/speedups.pyx":157 * value = simple_unescape(value) * value = unicode_unescape(value) * elif type_ == STRING: # <<<<<<<<<<<<<< * value = css_value[1:-1] # Remove quotes * value = newline_unescape(value) */ __pyx_t_13 = (__pyx_v_type_ == __pyx_v_STRING); if (__pyx_t_13) { /* "tinycss/speedups.pyx":158 * value = unicode_unescape(value) * elif type_ == STRING: * value = css_value[1:-1] # Remove quotes # <<<<<<<<<<<<<< * value = newline_unescape(value) * value = simple_unescape(value) */ __pyx_t_5 = __Pyx_PySequence_GetSlice(__pyx_v_css_value, 1, -1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 158; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_5); __Pyx_XDECREF(__pyx_v_value); __pyx_v_value = __pyx_t_5; __pyx_t_5 = 0; /* "tinycss/speedups.pyx":159 * elif type_ == STRING: * value = css_value[1:-1] # Remove quotes * value = newline_unescape(value) # <<<<<<<<<<<<<< * value = simple_unescape(value) * value = unicode_unescape(value) */ __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_5)); __Pyx_INCREF(__pyx_v_value); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_value); __Pyx_GIVEREF(__pyx_v_value); __pyx_t_9 = PyObject_Call(__pyx_v_newline_unescape, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_v_value); __pyx_v_value = __pyx_t_9; __pyx_t_9 = 0; /* "tinycss/speedups.pyx":160 * value = css_value[1:-1] # Remove quotes * value = newline_unescape(value) * value = simple_unescape(value) # <<<<<<<<<<<<<< * value = unicode_unescape(value) * # BAD_STRING can only be one of: */ __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 160; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_9)); __Pyx_INCREF(__pyx_v_value); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_value); __Pyx_GIVEREF(__pyx_v_value); __pyx_t_5 = PyObject_Call(__pyx_v_simple_unescape, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 160; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; __Pyx_DECREF(__pyx_v_value); __pyx_v_value = __pyx_t_5; __pyx_t_5 = 0; /* "tinycss/speedups.pyx":161 * value = newline_unescape(value) * value = simple_unescape(value) * value = unicode_unescape(value) # <<<<<<<<<<<<<< * # BAD_STRING can only be one of: * # * Unclosed string at the end of the stylesheet: */ __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_5)); __Pyx_INCREF(__pyx_v_value); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_value); __Pyx_GIVEREF(__pyx_v_value); __pyx_t_9 = PyObject_Call(__pyx_v_unicode_unescape, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_v_value); __pyx_v_value = __pyx_t_9; __pyx_t_9 = 0; goto __pyx_L16; } /* "tinycss/speedups.pyx":170 * # Leave it as a BAD_STRING, dont bother parsing it. * # See http://www.w3.org/TR/CSS21/syndata.html#parsing-errors * elif type_ == BAD_STRING and next_pos == source_len: # <<<<<<<<<<<<<< * type_name = 'STRING' * value = css_value[1:] # Remove quote */ __pyx_t_13 = (__pyx_v_type_ == __pyx_v_BAD_STRING); if (__pyx_t_13) { __pyx_t_14 = (__pyx_v_next_pos == __pyx_v_source_len); __pyx_t_3 = __pyx_t_14; } else { __pyx_t_3 = __pyx_t_13; } if (__pyx_t_3) { /* "tinycss/speedups.pyx":171 * # See http://www.w3.org/TR/CSS21/syndata.html#parsing-errors * elif type_ == BAD_STRING and next_pos == source_len: * type_name = 'STRING' # <<<<<<<<<<<<<< * value = css_value[1:] # Remove quote * value = newline_unescape(value) */ __Pyx_INCREF(((PyObject *)__pyx_n_u__STRING)); __Pyx_DECREF(__pyx_v_type_name); __pyx_v_type_name = ((PyObject *)__pyx_n_u__STRING); /* "tinycss/speedups.pyx":172 * elif type_ == BAD_STRING and next_pos == source_len: * type_name = 'STRING' * value = css_value[1:] # Remove quote # <<<<<<<<<<<<<< * value = newline_unescape(value) * value = simple_unescape(value) */ __pyx_t_9 = __Pyx_PySequence_GetSlice(__pyx_v_css_value, 1, PY_SSIZE_T_MAX); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_9); __Pyx_XDECREF(__pyx_v_value); __pyx_v_value = __pyx_t_9; __pyx_t_9 = 0; /* "tinycss/speedups.pyx":173 * type_name = 'STRING' * value = css_value[1:] # Remove quote * value = newline_unescape(value) # <<<<<<<<<<<<<< * value = simple_unescape(value) * value = unicode_unescape(value) */ __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 173; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_9)); __Pyx_INCREF(__pyx_v_value); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_value); __Pyx_GIVEREF(__pyx_v_value); __pyx_t_5 = PyObject_Call(__pyx_v_newline_unescape, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 173; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; __Pyx_DECREF(__pyx_v_value); __pyx_v_value = __pyx_t_5; __pyx_t_5 = 0; /* "tinycss/speedups.pyx":174 * value = css_value[1:] # Remove quote * value = newline_unescape(value) * value = simple_unescape(value) # <<<<<<<<<<<<<< * value = unicode_unescape(value) * else: */ __pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 174; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_5)); __Pyx_INCREF(__pyx_v_value); PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_value); __Pyx_GIVEREF(__pyx_v_value); __pyx_t_9 = PyObject_Call(__pyx_v_simple_unescape, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 174; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0; __Pyx_DECREF(__pyx_v_value); __pyx_v_value = __pyx_t_9; __pyx_t_9 = 0; /* "tinycss/speedups.pyx":175 * value = newline_unescape(value) * value = simple_unescape(value) * value = unicode_unescape(value) # <<<<<<<<<<<<<< * else: * value = css_value */ __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 175; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_9)); __Pyx_INCREF(__pyx_v_value); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_value); __Pyx_GIVEREF(__pyx_v_value); __pyx_t_5 = PyObject_Call(__pyx_v_unicode_unescape, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 175; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; __Pyx_DECREF(__pyx_v_value); __pyx_v_value = __pyx_t_5; __pyx_t_5 = 0; goto __pyx_L16; } /*else*/ { /* "tinycss/speedups.pyx":177 * value = unicode_unescape(value) * else: * value = css_value # <<<<<<<<<<<<<< * token = CToken(type_name, css_value, value, unit, line, column) * tokens.append(token) */ __Pyx_INCREF(__pyx_v_css_value); __Pyx_XDECREF(__pyx_v_value); __pyx_v_value = __pyx_v_css_value; } __pyx_L16:; /* "tinycss/speedups.pyx":178 * else: * value = css_value * token = CToken(type_name, css_value, value, unit, line, column) # <<<<<<<<<<<<<< * tokens.append(token) * */ __pyx_t_5 = PyInt_FromSsize_t(__pyx_v_line); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_5); __pyx_t_9 = PyInt_FromSsize_t(__pyx_v_column); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_9); __pyx_t_1 = PyTuple_New(6); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_1)); __Pyx_INCREF(__pyx_v_type_name); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_type_name); __Pyx_GIVEREF(__pyx_v_type_name); __Pyx_INCREF(__pyx_v_css_value); PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_css_value); __Pyx_GIVEREF(__pyx_v_css_value); __Pyx_INCREF(__pyx_v_value); PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_value); __Pyx_GIVEREF(__pyx_v_value); __Pyx_INCREF(__pyx_v_unit); PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_unit); __Pyx_GIVEREF(__pyx_v_unit); PyTuple_SET_ITEM(__pyx_t_1, 4, __pyx_t_5); __Pyx_GIVEREF(__pyx_t_5); PyTuple_SET_ITEM(__pyx_t_1, 5, __pyx_t_9); __Pyx_GIVEREF(__pyx_t_9); __pyx_t_5 = 0; __pyx_t_9 = 0; __pyx_t_9 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_7tinycss_8speedups_CToken)), ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; __Pyx_XDECREF(((PyObject *)__pyx_v_token)); __pyx_v_token = ((struct __pyx_obj_7tinycss_8speedups_CToken *)__pyx_t_9); __pyx_t_9 = 0; /* "tinycss/speedups.pyx":179 * value = css_value * token = CToken(type_name, css_value, value, unit, line, column) * tokens.append(token) # <<<<<<<<<<<<<< * * pos = next_pos */ if (unlikely(((PyObject *)__pyx_v_tokens) == Py_None)) { PyErr_Format(PyExc_AttributeError, "'NoneType' object has no attribute '%s'", "append"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 179; __pyx_clineno = __LINE__; goto __pyx_L1_error;} } __pyx_t_16 = PyList_Append(__pyx_v_tokens, ((PyObject *)__pyx_v_token)); if (unlikely(__pyx_t_16 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 179; __pyx_clineno = __LINE__; goto __pyx_L1_error;} goto __pyx_L15; } __pyx_L15:; /* "tinycss/speedups.pyx":181 * tokens.append(token) * * pos = next_pos # <<<<<<<<<<<<<< * newlines = list(find_newlines(css_value)) * if newlines: */ __pyx_v_pos = __pyx_v_next_pos; /* "tinycss/speedups.pyx":182 * * pos = next_pos * newlines = list(find_newlines(css_value)) # <<<<<<<<<<<<<< * if newlines: * line += len(newlines) */ __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 182; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_9)); __Pyx_INCREF(__pyx_v_css_value); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_v_css_value); __Pyx_GIVEREF(__pyx_v_css_value); __pyx_t_1 = PyObject_Call(__pyx_v_find_newlines, ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 182; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; __pyx_t_9 = PyTuple_New(1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 182; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_9)); PyTuple_SET_ITEM(__pyx_t_9, 0, __pyx_t_1); __Pyx_GIVEREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), ((PyObject *)__pyx_t_9), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 182; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0; __Pyx_XDECREF(((PyObject *)__pyx_v_newlines)); __pyx_v_newlines = ((PyObject*)__pyx_t_1); __pyx_t_1 = 0; /* "tinycss/speedups.pyx":183 * pos = next_pos * newlines = list(find_newlines(css_value)) * if newlines: # <<<<<<<<<<<<<< * line += len(newlines) * # Add 1 to have lines start at column 1, not 0 */ __pyx_t_3 = (((PyObject *)__pyx_v_newlines) != Py_None) && (PyList_GET_SIZE(((PyObject *)__pyx_v_newlines)) != 0); if (__pyx_t_3) { /* "tinycss/speedups.pyx":184 * newlines = list(find_newlines(css_value)) * if newlines: * line += len(newlines) # <<<<<<<<<<<<<< * # Add 1 to have lines start at column 1, not 0 * column = length - newlines[-1].end() + 1 */ if (unlikely(((PyObject *)__pyx_v_newlines) == Py_None)) { PyErr_SetString(PyExc_TypeError, "object of type 'NoneType' has no len()"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 184; __pyx_clineno = __LINE__; goto __pyx_L1_error;} } __pyx_t_2 = PyList_GET_SIZE(((PyObject *)__pyx_v_newlines)); __pyx_v_line = (__pyx_v_line + __pyx_t_2); /* "tinycss/speedups.pyx":186 * line += len(newlines) * # Add 1 to have lines start at column 1, not 0 * column = length - newlines[-1].end() + 1 # <<<<<<<<<<<<<< * else: * column += length */ __pyx_t_1 = PyInt_FromSsize_t(__pyx_v_length); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 186; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); __pyx_t_9 = __Pyx_GetItemInt_List(((PyObject *)__pyx_v_newlines), -1, sizeof(long), PyInt_FromLong); if (!__pyx_t_9) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 186; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_9); __pyx_t_5 = PyObject_GetAttr(__pyx_t_9, __pyx_n_s__end); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 186; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_t_9 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 186; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_5 = PyNumber_Subtract(__pyx_t_1, __pyx_t_9); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 186; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_5); __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_t_9 = PyNumber_Add(__pyx_t_5, __pyx_int_1); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 186; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_9); __Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0; __pyx_t_2 = __Pyx_PyIndex_AsSsize_t(__pyx_t_9); if (unlikely((__pyx_t_2 == (Py_ssize_t)-1) && PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 186; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0; __pyx_v_column = __pyx_t_2; goto __pyx_L19; } /*else*/ { /* "tinycss/speedups.pyx":188 * column = length - newlines[-1].end() + 1 * else: * column += length # <<<<<<<<<<<<<< * return tokens */ __pyx_v_column = (__pyx_v_column + __pyx_v_length); } __pyx_L19:; } /* "tinycss/speedups.pyx":189 * else: * column += length * return tokens # <<<<<<<<<<<<<< */ __Pyx_XDECREF(__pyx_r); __Pyx_INCREF(((PyObject *)__pyx_v_tokens)); __pyx_r = ((PyObject *)__pyx_v_tokens); goto __pyx_L0; __pyx_r = Py_None; __Pyx_INCREF(Py_None); goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_5); __Pyx_XDECREF(__pyx_t_6); __Pyx_XDECREF(__pyx_t_7); __Pyx_XDECREF(__pyx_t_9); __Pyx_XDECREF(__pyx_t_10); __Pyx_AddTraceback("tinycss.speedups.tokenize_flat", __pyx_clineno, __pyx_lineno, __pyx_filename); __pyx_r = NULL; __pyx_L0:; __Pyx_XDECREF(__pyx_v_tokens_dispatch); __Pyx_XDECREF(__pyx_v_compiled_token_indexes); __Pyx_XDECREF(__pyx_v_compiled_tokens); __Pyx_XDECREF(__pyx_v_unicode_unescape); __Pyx_XDECREF(__pyx_v_newline_unescape); __Pyx_XDECREF(__pyx_v_simple_unescape); __Pyx_XDECREF(__pyx_v_find_newlines); __Pyx_XDECREF((PyObject *)__pyx_v_token); __Pyx_XDECREF(__pyx_v_tokens); __Pyx_XDECREF(__pyx_v_char); __Pyx_XDECREF(__pyx_v_type_name); __Pyx_XDECREF(__pyx_v_css_value); __Pyx_XDECREF(__pyx_v_codepoint); __Pyx_XDECREF(__pyx_v_regexp); __Pyx_XDECREF(__pyx_v_match); __Pyx_XDECREF(__pyx_v_unit); __Pyx_XDECREF(__pyx_v_value); __Pyx_XDECREF(__pyx_v_newlines); __Pyx_XGIVEREF(__pyx_r); __Pyx_RefNannyFinishContext(); return __pyx_r; } static PyObject *__pyx_tp_new_7tinycss_8speedups_CToken(PyTypeObject *t, PyObject *a, PyObject *k) { struct __pyx_obj_7tinycss_8speedups_CToken *p; PyObject *o = (*t->tp_alloc)(t, 0); if (!o) return 0; p = ((struct __pyx_obj_7tinycss_8speedups_CToken *)o); p->type = Py_None; Py_INCREF(Py_None); p->_as_css = Py_None; Py_INCREF(Py_None); p->value = Py_None; Py_INCREF(Py_None); p->unit = Py_None; Py_INCREF(Py_None); return o; } static void __pyx_tp_dealloc_7tinycss_8speedups_CToken(PyObject *o) { struct __pyx_obj_7tinycss_8speedups_CToken *p = (struct __pyx_obj_7tinycss_8speedups_CToken *)o; Py_XDECREF(p->type); Py_XDECREF(p->_as_css); Py_XDECREF(p->value); Py_XDECREF(p->unit); (*Py_TYPE(o)->tp_free)(o); } static int __pyx_tp_traverse_7tinycss_8speedups_CToken(PyObject *o, visitproc v, void *a) { int e; struct __pyx_obj_7tinycss_8speedups_CToken *p = (struct __pyx_obj_7tinycss_8speedups_CToken *)o; if (p->type) { e = (*v)(p->type, a); if (e) return e; } if (p->_as_css) { e = (*v)(p->_as_css, a); if (e) return e; } if (p->value) { e = (*v)(p->value, a); if (e) return e; } if (p->unit) { e = (*v)(p->unit, a); if (e) return e; } return 0; } static int __pyx_tp_clear_7tinycss_8speedups_CToken(PyObject *o) { struct __pyx_obj_7tinycss_8speedups_CToken *p = (struct __pyx_obj_7tinycss_8speedups_CToken *)o; PyObject* tmp; tmp = ((PyObject*)p->type); p->type = Py_None; Py_INCREF(Py_None); Py_XDECREF(tmp); tmp = ((PyObject*)p->_as_css); p->_as_css = Py_None; Py_INCREF(Py_None); Py_XDECREF(tmp); tmp = ((PyObject*)p->value); p->value = Py_None; Py_INCREF(Py_None); Py_XDECREF(tmp); tmp = ((PyObject*)p->unit); p->unit = Py_None; Py_INCREF(Py_None); Py_XDECREF(tmp); return 0; } static PyObject *__pyx_getprop_7tinycss_8speedups_6CToken_type(PyObject *o, void *x) { return __pyx_pf_7tinycss_8speedups_6CToken_4type___get__(o); } static int __pyx_setprop_7tinycss_8speedups_6CToken_type(PyObject *o, PyObject *v, void *x) { if (v) { return __pyx_pf_7tinycss_8speedups_6CToken_4type_1__set__(o, v); } else { return __pyx_pf_7tinycss_8speedups_6CToken_4type_2__del__(o); } } static PyObject *__pyx_getprop_7tinycss_8speedups_6CToken__as_css(PyObject *o, void *x) { return __pyx_pf_7tinycss_8speedups_6CToken_7_as_css___get__(o); } static int __pyx_setprop_7tinycss_8speedups_6CToken__as_css(PyObject *o, PyObject *v, void *x) { if (v) { return __pyx_pf_7tinycss_8speedups_6CToken_7_as_css_1__set__(o, v); } else { return __pyx_pf_7tinycss_8speedups_6CToken_7_as_css_2__del__(o); } } static PyObject *__pyx_getprop_7tinycss_8speedups_6CToken_value(PyObject *o, void *x) { return __pyx_pf_7tinycss_8speedups_6CToken_5value___get__(o); } static int __pyx_setprop_7tinycss_8speedups_6CToken_value(PyObject *o, PyObject *v, void *x) { if (v) { return __pyx_pf_7tinycss_8speedups_6CToken_5value_1__set__(o, v); } else { return __pyx_pf_7tinycss_8speedups_6CToken_5value_2__del__(o); } } static PyObject *__pyx_getprop_7tinycss_8speedups_6CToken_unit(PyObject *o, void *x) { return __pyx_pf_7tinycss_8speedups_6CToken_4unit___get__(o); } static int __pyx_setprop_7tinycss_8speedups_6CToken_unit(PyObject *o, PyObject *v, void *x) { if (v) { return __pyx_pf_7tinycss_8speedups_6CToken_4unit_1__set__(o, v); } else { return __pyx_pf_7tinycss_8speedups_6CToken_4unit_2__del__(o); } } static PyObject *__pyx_getprop_7tinycss_8speedups_6CToken_line(PyObject *o, void *x) { return __pyx_pf_7tinycss_8speedups_6CToken_4line___get__(o); } static int __pyx_setprop_7tinycss_8speedups_6CToken_line(PyObject *o, PyObject *v, void *x) { if (v) { return __pyx_pf_7tinycss_8speedups_6CToken_4line_1__set__(o, v); } else { PyErr_SetString(PyExc_NotImplementedError, "__del__"); return -1; } } static PyObject *__pyx_getprop_7tinycss_8speedups_6CToken_column(PyObject *o, void *x) { return __pyx_pf_7tinycss_8speedups_6CToken_6column___get__(o); } static int __pyx_setprop_7tinycss_8speedups_6CToken_column(PyObject *o, PyObject *v, void *x) { if (v) { return __pyx_pf_7tinycss_8speedups_6CToken_6column_1__set__(o, v); } else { PyErr_SetString(PyExc_NotImplementedError, "__del__"); return -1; } } static PyMethodDef __pyx_methods_7tinycss_8speedups_CToken[] = { {__Pyx_NAMESTR("as_css"), (PyCFunction)__pyx_pf_7tinycss_8speedups_6CToken_1as_css, METH_NOARGS, __Pyx_DOCSTR(__pyx_doc_7tinycss_8speedups_6CToken_1as_css)}, {0, 0, 0, 0} }; static struct PyGetSetDef __pyx_getsets_7tinycss_8speedups_CToken[] = { {(char *)"type", __pyx_getprop_7tinycss_8speedups_6CToken_type, __pyx_setprop_7tinycss_8speedups_6CToken_type, 0, 0}, {(char *)"_as_css", __pyx_getprop_7tinycss_8speedups_6CToken__as_css, __pyx_setprop_7tinycss_8speedups_6CToken__as_css, 0, 0}, {(char *)"value", __pyx_getprop_7tinycss_8speedups_6CToken_value, __pyx_setprop_7tinycss_8speedups_6CToken_value, 0, 0}, {(char *)"unit", __pyx_getprop_7tinycss_8speedups_6CToken_unit, __pyx_setprop_7tinycss_8speedups_6CToken_unit, 0, 0}, {(char *)"line", __pyx_getprop_7tinycss_8speedups_6CToken_line, __pyx_setprop_7tinycss_8speedups_6CToken_line, 0, 0}, {(char *)"column", __pyx_getprop_7tinycss_8speedups_6CToken_column, __pyx_setprop_7tinycss_8speedups_6CToken_column, 0, 0}, {0, 0, 0, 0, 0} }; static PyNumberMethods __pyx_tp_as_number_CToken = { 0, /*nb_add*/ 0, /*nb_subtract*/ 0, /*nb_multiply*/ #if PY_MAJOR_VERSION < 3 0, /*nb_divide*/ #endif 0, /*nb_remainder*/ 0, /*nb_divmod*/ 0, /*nb_power*/ 0, /*nb_negative*/ 0, /*nb_positive*/ 0, /*nb_absolute*/ 0, /*nb_nonzero*/ 0, /*nb_invert*/ 0, /*nb_lshift*/ 0, /*nb_rshift*/ 0, /*nb_and*/ 0, /*nb_xor*/ 0, /*nb_or*/ #if PY_MAJOR_VERSION < 3 0, /*nb_coerce*/ #endif 0, /*nb_int*/ #if PY_MAJOR_VERSION < 3 0, /*nb_long*/ #else 0, /*reserved*/ #endif 0, /*nb_float*/ #if PY_MAJOR_VERSION < 3 0, /*nb_oct*/ #endif #if PY_MAJOR_VERSION < 3 0, /*nb_hex*/ #endif 0, /*nb_inplace_add*/ 0, /*nb_inplace_subtract*/ 0, /*nb_inplace_multiply*/ #if PY_MAJOR_VERSION < 3 0, /*nb_inplace_divide*/ #endif 0, /*nb_inplace_remainder*/ 0, /*nb_inplace_power*/ 0, /*nb_inplace_lshift*/ 0, /*nb_inplace_rshift*/ 0, /*nb_inplace_and*/ 0, /*nb_inplace_xor*/ 0, /*nb_inplace_or*/ 0, /*nb_floor_divide*/ 0, /*nb_true_divide*/ 0, /*nb_inplace_floor_divide*/ 0, /*nb_inplace_true_divide*/ #if PY_VERSION_HEX >= 0x02050000 0, /*nb_index*/ #endif }; static PySequenceMethods __pyx_tp_as_sequence_CToken = { 0, /*sq_length*/ 0, /*sq_concat*/ 0, /*sq_repeat*/ 0, /*sq_item*/ 0, /*sq_slice*/ 0, /*sq_ass_item*/ 0, /*sq_ass_slice*/ 0, /*sq_contains*/ 0, /*sq_inplace_concat*/ 0, /*sq_inplace_repeat*/ }; static PyMappingMethods __pyx_tp_as_mapping_CToken = { 0, /*mp_length*/ 0, /*mp_subscript*/ 0, /*mp_ass_subscript*/ }; static PyBufferProcs __pyx_tp_as_buffer_CToken = { #if PY_MAJOR_VERSION < 3 0, /*bf_getreadbuffer*/ #endif #if PY_MAJOR_VERSION < 3 0, /*bf_getwritebuffer*/ #endif #if PY_MAJOR_VERSION < 3 0, /*bf_getsegcount*/ #endif #if PY_MAJOR_VERSION < 3 0, /*bf_getcharbuffer*/ #endif #if PY_VERSION_HEX >= 0x02060000 0, /*bf_getbuffer*/ #endif #if PY_VERSION_HEX >= 0x02060000 0, /*bf_releasebuffer*/ #endif }; static PyTypeObject __pyx_type_7tinycss_8speedups_CToken = { PyVarObject_HEAD_INIT(0, 0) __Pyx_NAMESTR("tinycss.speedups.CToken"), /*tp_name*/ sizeof(struct __pyx_obj_7tinycss_8speedups_CToken), /*tp_basicsize*/ 0, /*tp_itemsize*/ __pyx_tp_dealloc_7tinycss_8speedups_CToken, /*tp_dealloc*/ 0, /*tp_print*/ 0, /*tp_getattr*/ 0, /*tp_setattr*/ #if PY_MAJOR_VERSION < 3 0, /*tp_compare*/ #else 0, /*reserved*/ #endif __pyx_pf_7tinycss_8speedups_6CToken_2__repr__, /*tp_repr*/ &__pyx_tp_as_number_CToken, /*tp_as_number*/ &__pyx_tp_as_sequence_CToken, /*tp_as_sequence*/ &__pyx_tp_as_mapping_CToken, /*tp_as_mapping*/ 0, /*tp_hash*/ 0, /*tp_call*/ 0, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ &__pyx_tp_as_buffer_CToken, /*tp_as_buffer*/ Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ __Pyx_DOCSTR("A token built by the Cython speedups. Identical to\n :class:`~.token_data.Token`.\n\n "), /*tp_doc*/ __pyx_tp_traverse_7tinycss_8speedups_CToken, /*tp_traverse*/ __pyx_tp_clear_7tinycss_8speedups_CToken, /*tp_clear*/ 0, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ __pyx_methods_7tinycss_8speedups_CToken, /*tp_methods*/ 0, /*tp_members*/ __pyx_getsets_7tinycss_8speedups_CToken, /*tp_getset*/ 0, /*tp_base*/ 0, /*tp_dict*/ 0, /*tp_descr_get*/ 0, /*tp_descr_set*/ 0, /*tp_dictoffset*/ __pyx_pf_7tinycss_8speedups_6CToken___init__, /*tp_init*/ 0, /*tp_alloc*/ __pyx_tp_new_7tinycss_8speedups_CToken, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ 0, /*tp_mro*/ 0, /*tp_cache*/ 0, /*tp_subclasses*/ 0, /*tp_weaklist*/ 0, /*tp_del*/ #if PY_VERSION_HEX >= 0x02060000 0, /*tp_version_tag*/ #endif }; static PyObject *__pyx_tp_new_7tinycss_8speedups___pyx_Generator(PyTypeObject *t, PyObject *a, PyObject *k) { struct __pyx_Generator_object *p; PyObject *o = (*t->tp_alloc)(t, 0); if (!o) return 0; p = ((struct __pyx_Generator_object *)o); p->exc_type = 0; p->exc_value = 0; p->exc_traceback = 0; return o; } static void __pyx_tp_dealloc_7tinycss_8speedups___pyx_Generator(PyObject *o) { struct __pyx_Generator_object *p = (struct __pyx_Generator_object *)o; Py_XDECREF(p->exc_type); Py_XDECREF(p->exc_value); Py_XDECREF(p->exc_traceback); (*Py_TYPE(o)->tp_free)(o); } static int __pyx_tp_traverse_7tinycss_8speedups___pyx_Generator(PyObject *o, visitproc v, void *a) { int e; struct __pyx_Generator_object *p = (struct __pyx_Generator_object *)o; if (p->exc_type) { e = (*v)(p->exc_type, a); if (e) return e; } if (p->exc_value) { e = (*v)(p->exc_value, a); if (e) return e; } if (p->exc_traceback) { e = (*v)(p->exc_traceback, a); if (e) return e; } return 0; } static int __pyx_tp_clear_7tinycss_8speedups___pyx_Generator(PyObject *o) { struct __pyx_Generator_object *p = (struct __pyx_Generator_object *)o; PyObject* tmp; tmp = ((PyObject*)p->exc_type); p->exc_type = Py_None; Py_INCREF(Py_None); Py_XDECREF(tmp); tmp = ((PyObject*)p->exc_value); p->exc_value = Py_None; Py_INCREF(Py_None); Py_XDECREF(tmp); tmp = ((PyObject*)p->exc_traceback); p->exc_traceback = Py_None; Py_INCREF(Py_None); Py_XDECREF(tmp); return 0; } static PyMethodDef __pyx_methods_7tinycss_8speedups___pyx_Generator[] = { {__Pyx_NAMESTR("send"), (PyCFunction)__Pyx_Generator_Send, METH_O, __Pyx_DOCSTR(0)}, {__Pyx_NAMESTR("close"), (PyCFunction)__Pyx_Generator_Close, METH_NOARGS, __Pyx_DOCSTR(0)}, {__Pyx_NAMESTR("throw"), (PyCFunction)__Pyx_Generator_Throw, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)}, {0, 0, 0, 0} }; static PyNumberMethods __pyx_tp_as_number___pyx_Generator = { 0, /*nb_add*/ 0, /*nb_subtract*/ 0, /*nb_multiply*/ #if PY_MAJOR_VERSION < 3 0, /*nb_divide*/ #endif 0, /*nb_remainder*/ 0, /*nb_divmod*/ 0, /*nb_power*/ 0, /*nb_negative*/ 0, /*nb_positive*/ 0, /*nb_absolute*/ 0, /*nb_nonzero*/ 0, /*nb_invert*/ 0, /*nb_lshift*/ 0, /*nb_rshift*/ 0, /*nb_and*/ 0, /*nb_xor*/ 0, /*nb_or*/ #if PY_MAJOR_VERSION < 3 0, /*nb_coerce*/ #endif 0, /*nb_int*/ #if PY_MAJOR_VERSION < 3 0, /*nb_long*/ #else 0, /*reserved*/ #endif 0, /*nb_float*/ #if PY_MAJOR_VERSION < 3 0, /*nb_oct*/ #endif #if PY_MAJOR_VERSION < 3 0, /*nb_hex*/ #endif 0, /*nb_inplace_add*/ 0, /*nb_inplace_subtract*/ 0, /*nb_inplace_multiply*/ #if PY_MAJOR_VERSION < 3 0, /*nb_inplace_divide*/ #endif 0, /*nb_inplace_remainder*/ 0, /*nb_inplace_power*/ 0, /*nb_inplace_lshift*/ 0, /*nb_inplace_rshift*/ 0, /*nb_inplace_and*/ 0, /*nb_inplace_xor*/ 0, /*nb_inplace_or*/ 0, /*nb_floor_divide*/ 0, /*nb_true_divide*/ 0, /*nb_inplace_floor_divide*/ 0, /*nb_inplace_true_divide*/ #if PY_VERSION_HEX >= 0x02050000 0, /*nb_index*/ #endif }; static PySequenceMethods __pyx_tp_as_sequence___pyx_Generator = { 0, /*sq_length*/ 0, /*sq_concat*/ 0, /*sq_repeat*/ 0, /*sq_item*/ 0, /*sq_slice*/ 0, /*sq_ass_item*/ 0, /*sq_ass_slice*/ 0, /*sq_contains*/ 0, /*sq_inplace_concat*/ 0, /*sq_inplace_repeat*/ }; static PyMappingMethods __pyx_tp_as_mapping___pyx_Generator = { 0, /*mp_length*/ 0, /*mp_subscript*/ 0, /*mp_ass_subscript*/ }; static PyBufferProcs __pyx_tp_as_buffer___pyx_Generator = { #if PY_MAJOR_VERSION < 3 0, /*bf_getreadbuffer*/ #endif #if PY_MAJOR_VERSION < 3 0, /*bf_getwritebuffer*/ #endif #if PY_MAJOR_VERSION < 3 0, /*bf_getsegcount*/ #endif #if PY_MAJOR_VERSION < 3 0, /*bf_getcharbuffer*/ #endif #if PY_VERSION_HEX >= 0x02060000 0, /*bf_getbuffer*/ #endif #if PY_VERSION_HEX >= 0x02060000 0, /*bf_releasebuffer*/ #endif }; static PyTypeObject __pyx_Generator_type = { PyVarObject_HEAD_INIT(0, 0) __Pyx_NAMESTR("tinycss.speedups.__pyx_Generator"), /*tp_name*/ sizeof(struct __pyx_Generator_object), /*tp_basicsize*/ 0, /*tp_itemsize*/ __pyx_tp_dealloc_7tinycss_8speedups___pyx_Generator, /*tp_dealloc*/ 0, /*tp_print*/ 0, /*tp_getattr*/ 0, /*tp_setattr*/ #if PY_MAJOR_VERSION < 3 0, /*tp_compare*/ #else 0, /*reserved*/ #endif 0, /*tp_repr*/ &__pyx_tp_as_number___pyx_Generator, /*tp_as_number*/ &__pyx_tp_as_sequence___pyx_Generator, /*tp_as_sequence*/ &__pyx_tp_as_mapping___pyx_Generator, /*tp_as_mapping*/ 0, /*tp_hash*/ 0, /*tp_call*/ 0, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ &__pyx_tp_as_buffer___pyx_Generator, /*tp_as_buffer*/ Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ 0, /*tp_doc*/ __pyx_tp_traverse_7tinycss_8speedups___pyx_Generator, /*tp_traverse*/ __pyx_tp_clear_7tinycss_8speedups___pyx_Generator, /*tp_clear*/ 0, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ PyObject_SelfIter, /*tp_iter*/ __Pyx_Generator_Next, /*tp_iternext*/ __pyx_methods_7tinycss_8speedups___pyx_Generator, /*tp_methods*/ 0, /*tp_members*/ 0, /*tp_getset*/ 0, /*tp_base*/ 0, /*tp_dict*/ 0, /*tp_descr_get*/ 0, /*tp_descr_set*/ 0, /*tp_dictoffset*/ 0, /*tp_init*/ 0, /*tp_alloc*/ __pyx_tp_new_7tinycss_8speedups___pyx_Generator, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ 0, /*tp_mro*/ 0, /*tp_cache*/ 0, /*tp_subclasses*/ 0, /*tp_weaklist*/ 0, /*tp_del*/ #if PY_VERSION_HEX >= 0x02060000 0, /*tp_version_tag*/ #endif }; static PyObject *__pyx_tp_new_7tinycss_8speedups___pyx_scope_struct__genexpr(PyTypeObject *t, PyObject *a, PyObject *k) { struct __pyx_obj_7tinycss_8speedups___pyx_scope_struct__genexpr *p; PyObject *o = __pyx_tp_new_7tinycss_8speedups___pyx_Generator(t, a, k); if (!o) return 0; p = ((struct __pyx_obj_7tinycss_8speedups___pyx_scope_struct__genexpr *)o); p->__pyx_v_i = 0; p->__pyx_v_name = 0; p->__pyx_v_regexp = 0; p->__pyx_t_0 = 0; p->__pyx_t_1 = 0; return o; } static void __pyx_tp_dealloc_7tinycss_8speedups___pyx_scope_struct__genexpr(PyObject *o) { struct __pyx_obj_7tinycss_8speedups___pyx_scope_struct__genexpr *p = (struct __pyx_obj_7tinycss_8speedups___pyx_scope_struct__genexpr *)o; Py_XDECREF(p->__pyx_v_i); Py_XDECREF(p->__pyx_v_name); Py_XDECREF(p->__pyx_v_regexp); Py_XDECREF(p->__pyx_t_0); Py_XDECREF(p->__pyx_t_1); __pyx_tp_dealloc_7tinycss_8speedups___pyx_Generator(o); } static int __pyx_tp_traverse_7tinycss_8speedups___pyx_scope_struct__genexpr(PyObject *o, visitproc v, void *a) { int e; struct __pyx_obj_7tinycss_8speedups___pyx_scope_struct__genexpr *p = (struct __pyx_obj_7tinycss_8speedups___pyx_scope_struct__genexpr *)o; e = __pyx_tp_traverse_7tinycss_8speedups___pyx_Generator(o, v, a); if (e) return e; if (p->__pyx_v_i) { e = (*v)(p->__pyx_v_i, a); if (e) return e; } if (p->__pyx_v_name) { e = (*v)(p->__pyx_v_name, a); if (e) return e; } if (p->__pyx_v_regexp) { e = (*v)(p->__pyx_v_regexp, a); if (e) return e; } if (p->__pyx_t_0) { e = (*v)(p->__pyx_t_0, a); if (e) return e; } if (p->__pyx_t_1) { e = (*v)(p->__pyx_t_1, a); if (e) return e; } return 0; } static int __pyx_tp_clear_7tinycss_8speedups___pyx_scope_struct__genexpr(PyObject *o) { struct __pyx_obj_7tinycss_8speedups___pyx_scope_struct__genexpr *p = (struct __pyx_obj_7tinycss_8speedups___pyx_scope_struct__genexpr *)o; PyObject* tmp; __pyx_tp_clear_7tinycss_8speedups___pyx_Generator(o); tmp = ((PyObject*)p->__pyx_v_i); p->__pyx_v_i = Py_None; Py_INCREF(Py_None); Py_XDECREF(tmp); tmp = ((PyObject*)p->__pyx_v_name); p->__pyx_v_name = Py_None; Py_INCREF(Py_None); Py_XDECREF(tmp); tmp = ((PyObject*)p->__pyx_v_regexp); p->__pyx_v_regexp = Py_None; Py_INCREF(Py_None); Py_XDECREF(tmp); tmp = ((PyObject*)p->__pyx_t_0); p->__pyx_t_0 = Py_None; Py_INCREF(Py_None); Py_XDECREF(tmp); tmp = ((PyObject*)p->__pyx_t_1); p->__pyx_t_1 = Py_None; Py_INCREF(Py_None); Py_XDECREF(tmp); return 0; } static PyMethodDef __pyx_methods_7tinycss_8speedups___pyx_scope_struct__genexpr[] = { {0, 0, 0, 0} }; static PyNumberMethods __pyx_tp_as_number___pyx_scope_struct__genexpr = { 0, /*nb_add*/ 0, /*nb_subtract*/ 0, /*nb_multiply*/ #if PY_MAJOR_VERSION < 3 0, /*nb_divide*/ #endif 0, /*nb_remainder*/ 0, /*nb_divmod*/ 0, /*nb_power*/ 0, /*nb_negative*/ 0, /*nb_positive*/ 0, /*nb_absolute*/ 0, /*nb_nonzero*/ 0, /*nb_invert*/ 0, /*nb_lshift*/ 0, /*nb_rshift*/ 0, /*nb_and*/ 0, /*nb_xor*/ 0, /*nb_or*/ #if PY_MAJOR_VERSION < 3 0, /*nb_coerce*/ #endif 0, /*nb_int*/ #if PY_MAJOR_VERSION < 3 0, /*nb_long*/ #else 0, /*reserved*/ #endif 0, /*nb_float*/ #if PY_MAJOR_VERSION < 3 0, /*nb_oct*/ #endif #if PY_MAJOR_VERSION < 3 0, /*nb_hex*/ #endif 0, /*nb_inplace_add*/ 0, /*nb_inplace_subtract*/ 0, /*nb_inplace_multiply*/ #if PY_MAJOR_VERSION < 3 0, /*nb_inplace_divide*/ #endif 0, /*nb_inplace_remainder*/ 0, /*nb_inplace_power*/ 0, /*nb_inplace_lshift*/ 0, /*nb_inplace_rshift*/ 0, /*nb_inplace_and*/ 0, /*nb_inplace_xor*/ 0, /*nb_inplace_or*/ 0, /*nb_floor_divide*/ 0, /*nb_true_divide*/ 0, /*nb_inplace_floor_divide*/ 0, /*nb_inplace_true_divide*/ #if PY_VERSION_HEX >= 0x02050000 0, /*nb_index*/ #endif }; static PySequenceMethods __pyx_tp_as_sequence___pyx_scope_struct__genexpr = { 0, /*sq_length*/ 0, /*sq_concat*/ 0, /*sq_repeat*/ 0, /*sq_item*/ 0, /*sq_slice*/ 0, /*sq_ass_item*/ 0, /*sq_ass_slice*/ 0, /*sq_contains*/ 0, /*sq_inplace_concat*/ 0, /*sq_inplace_repeat*/ }; static PyMappingMethods __pyx_tp_as_mapping___pyx_scope_struct__genexpr = { 0, /*mp_length*/ 0, /*mp_subscript*/ 0, /*mp_ass_subscript*/ }; static PyBufferProcs __pyx_tp_as_buffer___pyx_scope_struct__genexpr = { #if PY_MAJOR_VERSION < 3 0, /*bf_getreadbuffer*/ #endif #if PY_MAJOR_VERSION < 3 0, /*bf_getwritebuffer*/ #endif #if PY_MAJOR_VERSION < 3 0, /*bf_getsegcount*/ #endif #if PY_MAJOR_VERSION < 3 0, /*bf_getcharbuffer*/ #endif #if PY_VERSION_HEX >= 0x02060000 0, /*bf_getbuffer*/ #endif #if PY_VERSION_HEX >= 0x02060000 0, /*bf_releasebuffer*/ #endif }; static PyTypeObject __pyx_type_7tinycss_8speedups___pyx_scope_struct__genexpr = { PyVarObject_HEAD_INIT(0, 0) __Pyx_NAMESTR("tinycss.speedups.__pyx_scope_struct__genexpr"), /*tp_name*/ sizeof(struct __pyx_obj_7tinycss_8speedups___pyx_scope_struct__genexpr), /*tp_basicsize*/ 0, /*tp_itemsize*/ __pyx_tp_dealloc_7tinycss_8speedups___pyx_scope_struct__genexpr, /*tp_dealloc*/ 0, /*tp_print*/ 0, /*tp_getattr*/ 0, /*tp_setattr*/ #if PY_MAJOR_VERSION < 3 0, /*tp_compare*/ #else 0, /*reserved*/ #endif 0, /*tp_repr*/ &__pyx_tp_as_number___pyx_scope_struct__genexpr, /*tp_as_number*/ &__pyx_tp_as_sequence___pyx_scope_struct__genexpr, /*tp_as_sequence*/ &__pyx_tp_as_mapping___pyx_scope_struct__genexpr, /*tp_as_mapping*/ 0, /*tp_hash*/ 0, /*tp_call*/ 0, /*tp_str*/ 0, /*tp_getattro*/ 0, /*tp_setattro*/ &__pyx_tp_as_buffer___pyx_scope_struct__genexpr, /*tp_as_buffer*/ Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_HAVE_GC, /*tp_flags*/ 0, /*tp_doc*/ __pyx_tp_traverse_7tinycss_8speedups___pyx_scope_struct__genexpr, /*tp_traverse*/ __pyx_tp_clear_7tinycss_8speedups___pyx_scope_struct__genexpr, /*tp_clear*/ 0, /*tp_richcompare*/ 0, /*tp_weaklistoffset*/ 0, /*tp_iter*/ 0, /*tp_iternext*/ __pyx_methods_7tinycss_8speedups___pyx_scope_struct__genexpr, /*tp_methods*/ 0, /*tp_members*/ 0, /*tp_getset*/ 0, /*tp_base*/ 0, /*tp_dict*/ 0, /*tp_descr_get*/ 0, /*tp_descr_set*/ 0, /*tp_dictoffset*/ 0, /*tp_init*/ 0, /*tp_alloc*/ __pyx_tp_new_7tinycss_8speedups___pyx_scope_struct__genexpr, /*tp_new*/ 0, /*tp_free*/ 0, /*tp_is_gc*/ 0, /*tp_bases*/ 0, /*tp_mro*/ 0, /*tp_cache*/ 0, /*tp_subclasses*/ 0, /*tp_weaklist*/ 0, /*tp_del*/ #if PY_VERSION_HEX >= 0x02060000 0, /*tp_version_tag*/ #endif }; static PyMethodDef __pyx_methods[] = { {0, 0, 0, 0} }; #if PY_MAJOR_VERSION >= 3 static struct PyModuleDef __pyx_moduledef = { PyModuleDef_HEAD_INIT, __Pyx_NAMESTR("speedups"), __Pyx_DOCSTR(__pyx_k_12), /* m_doc */ -1, /* m_size */ __pyx_methods /* m_methods */, NULL, /* m_reload */ NULL, /* m_traverse */ NULL, /* m_clear */ NULL /* m_free */ }; #endif static __Pyx_StringTabEntry __pyx_string_tab[] = { {&__pyx_n_s_1, __pyx_k_1, sizeof(__pyx_k_1), 0, 0, 1, 1}, {&__pyx_kp_u_11, __pyx_k_11, sizeof(__pyx_k_11), 0, 1, 0, 0}, {&__pyx_n_s_13, __pyx_k_13, sizeof(__pyx_k_13), 0, 0, 1, 1}, {&__pyx_kp_u_2, __pyx_k_2, sizeof(__pyx_k_2), 0, 1, 0, 0}, {&__pyx_kp_u_3, __pyx_k_3, sizeof(__pyx_k_3), 0, 1, 0, 0}, {&__pyx_n_s_4, __pyx_k_4, sizeof(__pyx_k_4), 0, 0, 1, 1}, {&__pyx_kp_u_5, __pyx_k_5, sizeof(__pyx_k_5), 0, 1, 0, 0}, {&__pyx_kp_u_7, __pyx_k_7, sizeof(__pyx_k_7), 0, 1, 0, 0}, {&__pyx_kp_u_9, __pyx_k_9, sizeof(__pyx_k_9), 0, 1, 0, 0}, {&__pyx_n_u__ATKEYWORD, __pyx_k__ATKEYWORD, sizeof(__pyx_k__ATKEYWORD), 0, 1, 0, 1}, {&__pyx_n_u__BAD_COMMENT, __pyx_k__BAD_COMMENT, sizeof(__pyx_k__BAD_COMMENT), 0, 1, 0, 1}, {&__pyx_n_u__BAD_STRING, __pyx_k__BAD_STRING, sizeof(__pyx_k__BAD_STRING), 0, 1, 0, 1}, {&__pyx_n_u__COMMENT, __pyx_k__COMMENT, sizeof(__pyx_k__COMMENT), 0, 1, 0, 1}, {&__pyx_n_u__DELIM, __pyx_k__DELIM, sizeof(__pyx_k__DELIM), 0, 1, 0, 1}, {&__pyx_n_u__DIMENSION, __pyx_k__DIMENSION, sizeof(__pyx_k__DIMENSION), 0, 1, 0, 1}, {&__pyx_n_s__FIND_NEWLINES, __pyx_k__FIND_NEWLINES, sizeof(__pyx_k__FIND_NEWLINES), 0, 0, 1, 1}, {&__pyx_n_u__FUNCTION, __pyx_k__FUNCTION, sizeof(__pyx_k__FUNCTION), 0, 1, 0, 1}, {&__pyx_n_u__HASH, __pyx_k__HASH, sizeof(__pyx_k__HASH), 0, 1, 0, 1}, {&__pyx_n_u__IDENT, __pyx_k__IDENT, sizeof(__pyx_k__IDENT), 0, 1, 0, 1}, {&__pyx_n_u__INTEGER, __pyx_k__INTEGER, sizeof(__pyx_k__INTEGER), 0, 1, 0, 1}, {&__pyx_n_s__NEWLINE_UNESCAPE, __pyx_k__NEWLINE_UNESCAPE, sizeof(__pyx_k__NEWLINE_UNESCAPE), 0, 0, 1, 1}, {&__pyx_n_u__NUMBER, __pyx_k__NUMBER, sizeof(__pyx_k__NUMBER), 0, 1, 0, 1}, {&__pyx_n_u__PERCENTAGE, __pyx_k__PERCENTAGE, sizeof(__pyx_k__PERCENTAGE), 0, 1, 0, 1}, {&__pyx_n_s__SIMPLE_UNESCAPE, __pyx_k__SIMPLE_UNESCAPE, sizeof(__pyx_k__SIMPLE_UNESCAPE), 0, 0, 1, 1}, {&__pyx_n_u__STRING, __pyx_k__STRING, sizeof(__pyx_k__STRING), 0, 1, 0, 1}, {&__pyx_n_s__TOKEN_DISPATCH, __pyx_k__TOKEN_DISPATCH, sizeof(__pyx_k__TOKEN_DISPATCH), 0, 0, 1, 1}, {&__pyx_n_s__UNICODE_UNESCAPE, __pyx_k__UNICODE_UNESCAPE, sizeof(__pyx_k__UNICODE_UNESCAPE), 0, 0, 1, 1}, {&__pyx_n_u__URI, __pyx_k__URI, sizeof(__pyx_k__URI), 0, 1, 0, 1}, {&__pyx_n_s____main__, __pyx_k____main__, sizeof(__pyx_k____main__), 0, 0, 1, 1}, {&__pyx_n_s____test__, __pyx_k____test__, sizeof(__pyx_k____test__), 0, 0, 1, 1}, {&__pyx_n_s__column, __pyx_k__column, sizeof(__pyx_k__column), 0, 0, 1, 1}, {&__pyx_n_s__css_source, __pyx_k__css_source, sizeof(__pyx_k__css_source), 0, 0, 1, 1}, {&__pyx_n_s__css_value, __pyx_k__css_value, sizeof(__pyx_k__css_value), 0, 0, 1, 1}, {&__pyx_n_s__end, __pyx_k__end, sizeof(__pyx_k__end), 0, 0, 1, 1}, {&__pyx_n_s__enumerate, __pyx_k__enumerate, sizeof(__pyx_k__enumerate), 0, 0, 1, 1}, {&__pyx_n_s__format, __pyx_k__format, sizeof(__pyx_k__format), 0, 0, 1, 1}, {&__pyx_n_s__group, __pyx_k__group, sizeof(__pyx_k__group), 0, 0, 1, 1}, {&__pyx_n_s__ignore_comments, __pyx_k__ignore_comments, sizeof(__pyx_k__ignore_comments), 0, 0, 1, 1}, {&__pyx_n_s__is_container, __pyx_k__is_container, sizeof(__pyx_k__is_container), 0, 0, 1, 1}, {&__pyx_n_s__line, __pyx_k__line, sizeof(__pyx_k__line), 0, 0, 1, 1}, {&__pyx_n_s__lower, __pyx_k__lower, sizeof(__pyx_k__lower), 0, 0, 1, 1}, {&__pyx_n_s__ord, __pyx_k__ord, sizeof(__pyx_k__ord), 0, 0, 1, 1}, {&__pyx_n_s__token_data, __pyx_k__token_data, sizeof(__pyx_k__token_data), 0, 0, 1, 1}, {&__pyx_n_s__tokenize_flat, __pyx_k__tokenize_flat, sizeof(__pyx_k__tokenize_flat), 0, 0, 1, 1}, {&__pyx_n_s__type_, __pyx_k__type_, sizeof(__pyx_k__type_), 0, 0, 1, 1}, {&__pyx_n_s__unit, __pyx_k__unit, sizeof(__pyx_k__unit), 0, 0, 1, 1}, {&__pyx_n_s__value, __pyx_k__value, sizeof(__pyx_k__value), 0, 0, 1, 1}, {0, 0, 0, 0, 0, 0, 0} }; static int __Pyx_InitCachedBuiltins(void) { __pyx_builtin_enumerate = __Pyx_GetName(__pyx_b, __pyx_n_s__enumerate); if (!__pyx_builtin_enumerate) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __pyx_builtin_ord = __Pyx_GetName(__pyx_b, __pyx_n_s__ord); if (!__pyx_builtin_ord) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;} return 0; __pyx_L1_error:; return -1; } static int __Pyx_InitCachedConstants(void) { __Pyx_RefNannyDeclarations __Pyx_RefNannySetupContext("__Pyx_InitCachedConstants"); /* "tinycss/speedups.pyx":130 * unit = None * if type_ == DIMENSION: * value = match.group(1) # <<<<<<<<<<<<<< * value = float(value) if '.' in value else int(value) * unit = match.group(2) */ __pyx_k_tuple_6 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 130; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_6)); __Pyx_INCREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_k_tuple_6, 0, __pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_6)); /* "tinycss/speedups.pyx":132 * value = match.group(1) * value = float(value) if '.' in value else int(value) * unit = match.group(2) # <<<<<<<<<<<<<< * unit = simple_unescape(unit) * unit = unicode_unescape(unit) */ __pyx_k_tuple_8 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_8)); __Pyx_INCREF(__pyx_int_2); PyTuple_SET_ITEM(__pyx_k_tuple_8, 0, __pyx_int_2); __Pyx_GIVEREF(__pyx_int_2); __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_8)); /* "tinycss/speedups.pyx":151 * value = unicode_unescape(value) * elif type_ == URI: * value = match.group(1) # <<<<<<<<<<<<<< * if value and value[0] in '"\'': * value = value[1:-1] # Remove quotes */ __pyx_k_tuple_10 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_10)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 151; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_k_tuple_10)); __Pyx_INCREF(__pyx_int_1); PyTuple_SET_ITEM(__pyx_k_tuple_10, 0, __pyx_int_1); __Pyx_GIVEREF(__pyx_int_1); __Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_10)); __Pyx_RefNannyFinishContext(); return 0; __pyx_L1_error:; __Pyx_RefNannyFinishContext(); return -1; } static int __Pyx_InitGlobals(void) { if (__Pyx_InitStrings(__pyx_string_tab) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; __pyx_int_0 = PyInt_FromLong(0); if (unlikely(!__pyx_int_0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; __pyx_int_1 = PyInt_FromLong(1); if (unlikely(!__pyx_int_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; __pyx_int_2 = PyInt_FromLong(2); if (unlikely(!__pyx_int_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; return 0; __pyx_L1_error:; return -1; } #if PY_MAJOR_VERSION < 3 PyMODINIT_FUNC initspeedups(void); /*proto*/ PyMODINIT_FUNC initspeedups(void) #else PyMODINIT_FUNC PyInit_speedups(void); /*proto*/ PyMODINIT_FUNC PyInit_speedups(void) #endif { PyObject *__pyx_t_1 = NULL; PyObject *__pyx_t_2 = NULL; __Pyx_RefNannyDeclarations #if CYTHON_REFNANNY __Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny"); if (!__Pyx_RefNanny) { PyErr_Clear(); __Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny"); if (!__Pyx_RefNanny) Py_FatalError("failed to import 'refnanny' module"); } #endif __Pyx_RefNannySetupContext("PyMODINIT_FUNC PyInit_speedups(void)"); if ( __Pyx_check_binary_version() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __pyx_empty_tuple = PyTuple_New(0); if (unlikely(!__pyx_empty_tuple)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __pyx_empty_bytes = PyBytes_FromStringAndSize("", 0); if (unlikely(!__pyx_empty_bytes)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} #ifdef __pyx_binding_PyCFunctionType_USED if (__pyx_binding_PyCFunctionType_init() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} #endif /*--- Library function declarations ---*/ /*--- Threads initialization code ---*/ #if defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS #ifdef WITH_THREAD /* Python build with threading support? */ PyEval_InitThreads(); #endif #endif /*--- Module creation code ---*/ #if PY_MAJOR_VERSION < 3 __pyx_m = Py_InitModule4(__Pyx_NAMESTR("speedups"), __pyx_methods, __Pyx_DOCSTR(__pyx_k_12), 0, PYTHON_API_VERSION); #else __pyx_m = PyModule_Create(&__pyx_moduledef); #endif if (!__pyx_m) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; #if PY_MAJOR_VERSION < 3 Py_INCREF(__pyx_m); #endif __pyx_b = PyImport_AddModule(__Pyx_NAMESTR(__Pyx_BUILTIN_MODULE_NAME)); if (!__pyx_b) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; if (__Pyx_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; /*--- Initialize various global constants etc. ---*/ if (unlikely(__Pyx_InitGlobals() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} if (__pyx_module_is_main_tinycss__speedups) { if (__Pyx_SetAttrString(__pyx_m, "__name__", __pyx_n_s____main__) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}; } /*--- Builtin init code ---*/ if (unlikely(__Pyx_InitCachedBuiltins() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} /*--- Constants init code ---*/ if (unlikely(__Pyx_InitCachedConstants() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} /*--- Global init code ---*/ /*--- Variable export code ---*/ /*--- Function export code ---*/ /*--- Type init code ---*/ if (PyType_Ready(&__pyx_type_7tinycss_8speedups_CToken) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 25; __pyx_clineno = __LINE__; goto __pyx_L1_error;} if (__Pyx_SetAttrString(__pyx_m, "CToken", (PyObject *)&__pyx_type_7tinycss_8speedups_CToken) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 25; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __pyx_ptype_7tinycss_8speedups_CToken = &__pyx_type_7tinycss_8speedups_CToken; if (PyType_Ready(&__pyx_Generator_type) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __pyx_ptype_7tinycss_8speedups___pyx_Generator = &__pyx_Generator_type; __pyx_type_7tinycss_8speedups___pyx_scope_struct__genexpr.tp_base = __pyx_ptype_7tinycss_8speedups___pyx_Generator; if (PyType_Ready(&__pyx_type_7tinycss_8speedups___pyx_scope_struct__genexpr) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __pyx_ptype_7tinycss_8speedups___pyx_scope_struct__genexpr = &__pyx_type_7tinycss_8speedups___pyx_scope_struct__genexpr; /*--- Type import code ---*/ /*--- Variable import code ---*/ /*--- Function import code ---*/ /*--- Execution code ---*/ /* "tinycss/speedups.pyx":17 * * from .token_data import ( * COMPILED_TOKEN_REGEXPS, UNICODE_UNESCAPE, NEWLINE_UNESCAPE, # <<<<<<<<<<<<<< * SIMPLE_UNESCAPE, FIND_NEWLINES, TOKEN_DISPATCH) * */ __pyx_t_1 = PyList_New(6); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 17; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_1)); __Pyx_INCREF(((PyObject *)__pyx_n_s_1)); PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_n_s_1)); __Pyx_GIVEREF(((PyObject *)__pyx_n_s_1)); __Pyx_INCREF(((PyObject *)__pyx_n_s__UNICODE_UNESCAPE)); PyList_SET_ITEM(__pyx_t_1, 1, ((PyObject *)__pyx_n_s__UNICODE_UNESCAPE)); __Pyx_GIVEREF(((PyObject *)__pyx_n_s__UNICODE_UNESCAPE)); __Pyx_INCREF(((PyObject *)__pyx_n_s__NEWLINE_UNESCAPE)); PyList_SET_ITEM(__pyx_t_1, 2, ((PyObject *)__pyx_n_s__NEWLINE_UNESCAPE)); __Pyx_GIVEREF(((PyObject *)__pyx_n_s__NEWLINE_UNESCAPE)); __Pyx_INCREF(((PyObject *)__pyx_n_s__SIMPLE_UNESCAPE)); PyList_SET_ITEM(__pyx_t_1, 3, ((PyObject *)__pyx_n_s__SIMPLE_UNESCAPE)); __Pyx_GIVEREF(((PyObject *)__pyx_n_s__SIMPLE_UNESCAPE)); __Pyx_INCREF(((PyObject *)__pyx_n_s__FIND_NEWLINES)); PyList_SET_ITEM(__pyx_t_1, 4, ((PyObject *)__pyx_n_s__FIND_NEWLINES)); __Pyx_GIVEREF(((PyObject *)__pyx_n_s__FIND_NEWLINES)); __Pyx_INCREF(((PyObject *)__pyx_n_s__TOKEN_DISPATCH)); PyList_SET_ITEM(__pyx_t_1, 5, ((PyObject *)__pyx_n_s__TOKEN_DISPATCH)); __Pyx_GIVEREF(((PyObject *)__pyx_n_s__TOKEN_DISPATCH)); __pyx_t_2 = __Pyx_Import(((PyObject *)__pyx_n_s__token_data), ((PyObject *)__pyx_t_1), 1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s_1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); if (PyObject_SetAttr(__pyx_m, __pyx_n_s_1, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 17; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__UNICODE_UNESCAPE); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); if (PyObject_SetAttr(__pyx_m, __pyx_n_s__UNICODE_UNESCAPE, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 17; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__NEWLINE_UNESCAPE); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); if (PyObject_SetAttr(__pyx_m, __pyx_n_s__NEWLINE_UNESCAPE, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 17; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__SIMPLE_UNESCAPE); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); if (PyObject_SetAttr(__pyx_m, __pyx_n_s__SIMPLE_UNESCAPE, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 18; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__FIND_NEWLINES); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); if (PyObject_SetAttr(__pyx_m, __pyx_n_s__FIND_NEWLINES, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 18; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__TOKEN_DISPATCH); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 16; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_1); if (PyObject_SetAttr(__pyx_m, __pyx_n_s__TOKEN_DISPATCH, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 18; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0; __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "tinycss/speedups.pyx":22 * * COMPILED_TOKEN_INDEXES = dict( * (name, i) for i, (name, regexp) in enumerate(COMPILED_TOKEN_REGEXPS)) # <<<<<<<<<<<<<< * * */ __pyx_t_2 = __pyx_pf_7tinycss_8speedups_1genexpr(NULL, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 22; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_2); __pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 21; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_1)); PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_2); __Pyx_GIVEREF(__pyx_t_2); __pyx_t_2 = 0; __pyx_t_2 = PyObject_Call(((PyObject *)((PyObject*)(&PyDict_Type))), ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 21; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_2); __Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0; if (PyObject_SetAttr(__pyx_m, __pyx_n_s_4, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 21; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "tinycss/speedups.pyx":30 * * """ * is_container = False # <<<<<<<<<<<<<< * * cdef public object type, _as_css, value, unit */ __pyx_t_2 = __Pyx_PyBool_FromLong(0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_2); if (PyDict_SetItem((PyObject *)__pyx_ptype_7tinycss_8speedups_CToken->tp_dict, __pyx_n_s__is_container, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 30; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; PyType_Modified(__pyx_ptype_7tinycss_8speedups_CToken); /* "tinycss/speedups.pyx":55 * * * def tokenize_flat(css_source, int ignore_comments=1): # <<<<<<<<<<<<<< * """ * :param css_source: */ __pyx_t_2 = PyCFunction_NewEx(&__pyx_mdef_7tinycss_8speedups_tokenize_flat, NULL, __pyx_n_s_13); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 55; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(__pyx_t_2); if (PyObject_SetAttr(__pyx_m, __pyx_n_s__tokenize_flat, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 55; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0; /* "tinycss/speedups.pyx":1 * # coding: utf8 # <<<<<<<<<<<<<< * """ * tinycss.speedups */ __pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_GOTREF(((PyObject *)__pyx_t_2)); if (PyObject_SetAttr(__pyx_m, __pyx_n_s____test__, ((PyObject *)__pyx_t_2)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;} __Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0; goto __pyx_L0; __pyx_L1_error:; __Pyx_XDECREF(__pyx_t_1); __Pyx_XDECREF(__pyx_t_2); if (__pyx_m) { __Pyx_AddTraceback("init tinycss.speedups", __pyx_clineno, __pyx_lineno, __pyx_filename); Py_DECREF(__pyx_m); __pyx_m = 0; } else if (!PyErr_Occurred()) { PyErr_SetString(PyExc_ImportError, "init tinycss.speedups"); } __pyx_L0:; __Pyx_RefNannyFinishContext(); #if PY_MAJOR_VERSION < 3 return; #else return __pyx_m; #endif } /* Runtime support code */ #if CYTHON_REFNANNY static __Pyx_RefNannyAPIStruct *__Pyx_RefNannyImportAPI(const char *modname) { PyObject *m = NULL, *p = NULL; void *r = NULL; m = PyImport_ImportModule((char *)modname); if (!m) goto end; p = PyObject_GetAttrString(m, (char *)"RefNannyAPI"); if (!p) goto end; r = PyLong_AsVoidPtr(p); end: Py_XDECREF(p); Py_XDECREF(m); return (__Pyx_RefNannyAPIStruct *)r; } #endif /* CYTHON_REFNANNY */ static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name) { PyObject *result; result = PyObject_GetAttr(dict, name); if (!result) { if (dict != __pyx_b) { PyErr_Clear(); result = PyObject_GetAttr(__pyx_b, name); } if (!result) { PyErr_SetObject(PyExc_NameError, name); } } return result; } static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index) { PyErr_Format(PyExc_ValueError, "need more than %"PY_FORMAT_SIZE_T"d value%s to unpack", index, (index == 1) ? "" : "s"); } static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected) { PyErr_Format(PyExc_ValueError, "too many values to unpack (expected %"PY_FORMAT_SIZE_T"d)", expected); } static int __Pyx_IternextUnpackEndCheck(PyObject *retval, Py_ssize_t expected) { if (unlikely(retval)) { Py_DECREF(retval); __Pyx_RaiseTooManyValuesError(expected); return -1; } else if (PyErr_Occurred()) { if (likely(PyErr_ExceptionMatches(PyExc_StopIteration))) { PyErr_Clear(); return 0; } else { return -1; } } return 0; } static void __Pyx_RaiseArgtupleInvalid( const char* func_name, int exact, Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found) { Py_ssize_t num_expected; const char *more_or_less; if (num_found < num_min) { num_expected = num_min; more_or_less = "at least"; } else { num_expected = num_max; more_or_less = "at most"; } if (exact) { more_or_less = "exactly"; } PyErr_Format(PyExc_TypeError, "%s() takes %s %"PY_FORMAT_SIZE_T"d positional argument%s (%"PY_FORMAT_SIZE_T"d given)", func_name, more_or_less, num_expected, (num_expected == 1) ? "" : "s", num_found); } static void __Pyx_RaiseDoubleKeywordsError( const char* func_name, PyObject* kw_name) { PyErr_Format(PyExc_TypeError, #if PY_MAJOR_VERSION >= 3 "%s() got multiple values for keyword argument '%U'", func_name, kw_name); #else "%s() got multiple values for keyword argument '%s'", func_name, PyString_AS_STRING(kw_name)); #endif } static int __Pyx_ParseOptionalKeywords( PyObject *kwds, PyObject **argnames[], PyObject *kwds2, PyObject *values[], Py_ssize_t num_pos_args, const char* function_name) { PyObject *key = 0, *value = 0; Py_ssize_t pos = 0; PyObject*** name; PyObject*** first_kw_arg = argnames + num_pos_args; while (PyDict_Next(kwds, &pos, &key, &value)) { name = first_kw_arg; while (*name && (**name != key)) name++; if (*name) { values[name-argnames] = value; } else { #if PY_MAJOR_VERSION < 3 if (unlikely(!PyString_CheckExact(key)) && unlikely(!PyString_Check(key))) { #else if (unlikely(!PyUnicode_CheckExact(key)) && unlikely(!PyUnicode_Check(key))) { #endif goto invalid_keyword_type; } else { for (name = first_kw_arg; *name; name++) { #if PY_MAJOR_VERSION >= 3 if (PyUnicode_GET_SIZE(**name) == PyUnicode_GET_SIZE(key) && PyUnicode_Compare(**name, key) == 0) break; #else if (PyString_GET_SIZE(**name) == PyString_GET_SIZE(key) && _PyString_Eq(**name, key)) break; #endif } if (*name) { values[name-argnames] = value; } else { /* unexpected keyword found */ for (name=argnames; name != first_kw_arg; name++) { if (**name == key) goto arg_passed_twice; #if PY_MAJOR_VERSION >= 3 if (PyUnicode_GET_SIZE(**name) == PyUnicode_GET_SIZE(key) && PyUnicode_Compare(**name, key) == 0) goto arg_passed_twice; #else if (PyString_GET_SIZE(**name) == PyString_GET_SIZE(key) && _PyString_Eq(**name, key)) goto arg_passed_twice; #endif } if (kwds2) { if (unlikely(PyDict_SetItem(kwds2, key, value))) goto bad; } else { goto invalid_keyword; } } } } } return 0; arg_passed_twice: __Pyx_RaiseDoubleKeywordsError(function_name, **name); goto bad; invalid_keyword_type: PyErr_Format(PyExc_TypeError, "%s() keywords must be strings", function_name); goto bad; invalid_keyword: PyErr_Format(PyExc_TypeError, #if PY_MAJOR_VERSION < 3 "%s() got an unexpected keyword argument '%s'", function_name, PyString_AsString(key)); #else "%s() got an unexpected keyword argument '%U'", function_name, key); #endif bad: return -1; } static CYTHON_INLINE void __Pyx_RaiseUnboundLocalError(const char *varname) { PyErr_Format(PyExc_UnboundLocalError, "local variable '%s' referenced before assignment", varname); } static double __Pyx__PyObject_AsDouble(PyObject* obj) { PyObject* float_value; if (Py_TYPE(obj)->tp_as_number && Py_TYPE(obj)->tp_as_number->nb_float) { return PyFloat_AsDouble(obj); } else if (PyUnicode_CheckExact(obj) || PyBytes_CheckExact(obj)) { #if PY_MAJOR_VERSION >= 3 float_value = PyFloat_FromString(obj); #else float_value = PyFloat_FromString(obj, 0); #endif } else { PyObject* args = PyTuple_New(1); if (unlikely(!args)) goto bad; PyTuple_SET_ITEM(args, 0, obj); float_value = PyObject_Call((PyObject*)&PyFloat_Type, args, 0); PyTuple_SET_ITEM(args, 0, 0); Py_DECREF(args); } if (likely(float_value)) { double value = PyFloat_AS_DOUBLE(float_value); Py_DECREF(float_value); return value; } bad: return (double)-1; } static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list, long level) { PyObject *py_import = 0; PyObject *empty_list = 0; PyObject *module = 0; PyObject *global_dict = 0; PyObject *empty_dict = 0; PyObject *list; py_import = __Pyx_GetAttrString(__pyx_b, "__import__"); if (!py_import) goto bad; if (from_list) list = from_list; else { empty_list = PyList_New(0); if (!empty_list) goto bad; list = empty_list; } global_dict = PyModule_GetDict(__pyx_m); if (!global_dict) goto bad; empty_dict = PyDict_New(); if (!empty_dict) goto bad; #if PY_VERSION_HEX >= 0x02050000 { PyObject *py_level = PyInt_FromLong(level); if (!py_level) goto bad; module = PyObject_CallFunctionObjArgs(py_import, name, global_dict, empty_dict, list, py_level, NULL); Py_DECREF(py_level); } #else if (level>0) { PyErr_SetString(PyExc_RuntimeError, "Relative import is not supported for Python <=2.4."); goto bad; } module = PyObject_CallFunctionObjArgs(py_import, name, global_dict, empty_dict, list, NULL); #endif bad: Py_XDECREF(empty_list); Py_XDECREF(py_import); Py_XDECREF(empty_dict); return module; } static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject* x) { const unsigned char neg_one = (unsigned char)-1, const_zero = 0; const int is_unsigned = neg_one > const_zero; if (sizeof(unsigned char) < sizeof(long)) { long val = __Pyx_PyInt_AsLong(x); if (unlikely(val != (long)(unsigned char)val)) { if (!unlikely(val == -1 && PyErr_Occurred())) { PyErr_SetString(PyExc_OverflowError, (is_unsigned && unlikely(val < 0)) ? "can't convert negative value to unsigned char" : "value too large to convert to unsigned char"); } return (unsigned char)-1; } return (unsigned char)val; } return (unsigned char)__Pyx_PyInt_AsUnsignedLong(x); } static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject* x) { const unsigned short neg_one = (unsigned short)-1, const_zero = 0; const int is_unsigned = neg_one > const_zero; if (sizeof(unsigned short) < sizeof(long)) { long val = __Pyx_PyInt_AsLong(x); if (unlikely(val != (long)(unsigned short)val)) { if (!unlikely(val == -1 && PyErr_Occurred())) { PyErr_SetString(PyExc_OverflowError, (is_unsigned && unlikely(val < 0)) ? "can't convert negative value to unsigned short" : "value too large to convert to unsigned short"); } return (unsigned short)-1; } return (unsigned short)val; } return (unsigned short)__Pyx_PyInt_AsUnsignedLong(x); } static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject* x) { const unsigned int neg_one = (unsigned int)-1, const_zero = 0; const int is_unsigned = neg_one > const_zero; if (sizeof(unsigned int) < sizeof(long)) { long val = __Pyx_PyInt_AsLong(x); if (unlikely(val != (long)(unsigned int)val)) { if (!unlikely(val == -1 && PyErr_Occurred())) { PyErr_SetString(PyExc_OverflowError, (is_unsigned && unlikely(val < 0)) ? "can't convert negative value to unsigned int" : "value too large to convert to unsigned int"); } return (unsigned int)-1; } return (unsigned int)val; } return (unsigned int)__Pyx_PyInt_AsUnsignedLong(x); } static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject* x) { const char neg_one = (char)-1, const_zero = 0; const int is_unsigned = neg_one > const_zero; if (sizeof(char) < sizeof(long)) { long val = __Pyx_PyInt_AsLong(x); if (unlikely(val != (long)(char)val)) { if (!unlikely(val == -1 && PyErr_Occurred())) { PyErr_SetString(PyExc_OverflowError, (is_unsigned && unlikely(val < 0)) ? "can't convert negative value to char" : "value too large to convert to char"); } return (char)-1; } return (char)val; } return (char)__Pyx_PyInt_AsLong(x); } static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject* x) { const short neg_one = (short)-1, const_zero = 0; const int is_unsigned = neg_one > const_zero; if (sizeof(short) < sizeof(long)) { long val = __Pyx_PyInt_AsLong(x); if (unlikely(val != (long)(short)val)) { if (!unlikely(val == -1 && PyErr_Occurred())) { PyErr_SetString(PyExc_OverflowError, (is_unsigned && unlikely(val < 0)) ? "can't convert negative value to short" : "value too large to convert to short"); } return (short)-1; } return (short)val; } return (short)__Pyx_PyInt_AsLong(x); } static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject* x) { const int neg_one = (int)-1, const_zero = 0; const int is_unsigned = neg_one > const_zero; if (sizeof(int) < sizeof(long)) { long val = __Pyx_PyInt_AsLong(x); if (unlikely(val != (long)(int)val)) { if (!unlikely(val == -1 && PyErr_Occurred())) { PyErr_SetString(PyExc_OverflowError, (is_unsigned && unlikely(val < 0)) ? "can't convert negative value to int" : "value too large to convert to int"); } return (int)-1; } return (int)val; } return (int)__Pyx_PyInt_AsLong(x); } static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject* x) { const signed char neg_one = (signed char)-1, const_zero = 0; const int is_unsigned = neg_one > const_zero; if (sizeof(signed char) < sizeof(long)) { long val = __Pyx_PyInt_AsLong(x); if (unlikely(val != (long)(signed char)val)) { if (!unlikely(val == -1 && PyErr_Occurred())) { PyErr_SetString(PyExc_OverflowError, (is_unsigned && unlikely(val < 0)) ? "can't convert negative value to signed char" : "value too large to convert to signed char"); } return (signed char)-1; } return (signed char)val; } return (signed char)__Pyx_PyInt_AsSignedLong(x); } static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject* x) { const signed short neg_one = (signed short)-1, const_zero = 0; const int is_unsigned = neg_one > const_zero; if (sizeof(signed short) < sizeof(long)) { long val = __Pyx_PyInt_AsLong(x); if (unlikely(val != (long)(signed short)val)) { if (!unlikely(val == -1 && PyErr_Occurred())) { PyErr_SetString(PyExc_OverflowError, (is_unsigned && unlikely(val < 0)) ? "can't convert negative value to signed short" : "value too large to convert to signed short"); } return (signed short)-1; } return (signed short)val; } return (signed short)__Pyx_PyInt_AsSignedLong(x); } static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject* x) { const signed int neg_one = (signed int)-1, const_zero = 0; const int is_unsigned = neg_one > const_zero; if (sizeof(signed int) < sizeof(long)) { long val = __Pyx_PyInt_AsLong(x); if (unlikely(val != (long)(signed int)val)) { if (!unlikely(val == -1 && PyErr_Occurred())) { PyErr_SetString(PyExc_OverflowError, (is_unsigned && unlikely(val < 0)) ? "can't convert negative value to signed int" : "value too large to convert to signed int"); } return (signed int)-1; } return (signed int)val; } return (signed int)__Pyx_PyInt_AsSignedLong(x); } static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject* x) { const int neg_one = (int)-1, const_zero = 0; const int is_unsigned = neg_one > const_zero; if (sizeof(int) < sizeof(long)) { long val = __Pyx_PyInt_AsLong(x); if (unlikely(val != (long)(int)val)) { if (!unlikely(val == -1 && PyErr_Occurred())) { PyErr_SetString(PyExc_OverflowError, (is_unsigned && unlikely(val < 0)) ? "can't convert negative value to int" : "value too large to convert to int"); } return (int)-1; } return (int)val; } return (int)__Pyx_PyInt_AsLong(x); } static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject* x) { const unsigned long neg_one = (unsigned long)-1, const_zero = 0; const int is_unsigned = neg_one > const_zero; #if PY_VERSION_HEX < 0x03000000 if (likely(PyInt_Check(x))) { long val = PyInt_AS_LONG(x); if (is_unsigned && unlikely(val < 0)) { PyErr_SetString(PyExc_OverflowError, "can't convert negative value to unsigned long"); return (unsigned long)-1; } return (unsigned long)val; } else #endif if (likely(PyLong_Check(x))) { if (is_unsigned) { if (unlikely(Py_SIZE(x) < 0)) { PyErr_SetString(PyExc_OverflowError, "can't convert negative value to unsigned long"); return (unsigned long)-1; } return (unsigned long)PyLong_AsUnsignedLong(x); } else { return (unsigned long)PyLong_AsLong(x); } } else { unsigned long val; PyObject *tmp = __Pyx_PyNumber_Int(x); if (!tmp) return (unsigned long)-1; val = __Pyx_PyInt_AsUnsignedLong(tmp); Py_DECREF(tmp); return val; } } static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject* x) { const unsigned PY_LONG_LONG neg_one = (unsigned PY_LONG_LONG)-1, const_zero = 0; const int is_unsigned = neg_one > const_zero; #if PY_VERSION_HEX < 0x03000000 if (likely(PyInt_Check(x))) { long val = PyInt_AS_LONG(x); if (is_unsigned && unlikely(val < 0)) { PyErr_SetString(PyExc_OverflowError, "can't convert negative value to unsigned PY_LONG_LONG"); return (unsigned PY_LONG_LONG)-1; } return (unsigned PY_LONG_LONG)val; } else #endif if (likely(PyLong_Check(x))) { if (is_unsigned) { if (unlikely(Py_SIZE(x) < 0)) { PyErr_SetString(PyExc_OverflowError, "can't convert negative value to unsigned PY_LONG_LONG"); return (unsigned PY_LONG_LONG)-1; } return (unsigned PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); } else { return (unsigned PY_LONG_LONG)PyLong_AsLongLong(x); } } else { unsigned PY_LONG_LONG val; PyObject *tmp = __Pyx_PyNumber_Int(x); if (!tmp) return (unsigned PY_LONG_LONG)-1; val = __Pyx_PyInt_AsUnsignedLongLong(tmp); Py_DECREF(tmp); return val; } } static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject* x) { const long neg_one = (long)-1, const_zero = 0; const int is_unsigned = neg_one > const_zero; #if PY_VERSION_HEX < 0x03000000 if (likely(PyInt_Check(x))) { long val = PyInt_AS_LONG(x); if (is_unsigned && unlikely(val < 0)) { PyErr_SetString(PyExc_OverflowError, "can't convert negative value to long"); return (long)-1; } return (long)val; } else #endif if (likely(PyLong_Check(x))) { if (is_unsigned) { if (unlikely(Py_SIZE(x) < 0)) { PyErr_SetString(PyExc_OverflowError, "can't convert negative value to long"); return (long)-1; } return (long)PyLong_AsUnsignedLong(x); } else { return (long)PyLong_AsLong(x); } } else { long val; PyObject *tmp = __Pyx_PyNumber_Int(x); if (!tmp) return (long)-1; val = __Pyx_PyInt_AsLong(tmp); Py_DECREF(tmp); return val; } } static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject* x) { const PY_LONG_LONG neg_one = (PY_LONG_LONG)-1, const_zero = 0; const int is_unsigned = neg_one > const_zero; #if PY_VERSION_HEX < 0x03000000 if (likely(PyInt_Check(x))) { long val = PyInt_AS_LONG(x); if (is_unsigned && unlikely(val < 0)) { PyErr_SetString(PyExc_OverflowError, "can't convert negative value to PY_LONG_LONG"); return (PY_LONG_LONG)-1; } return (PY_LONG_LONG)val; } else #endif if (likely(PyLong_Check(x))) { if (is_unsigned) { if (unlikely(Py_SIZE(x) < 0)) { PyErr_SetString(PyExc_OverflowError, "can't convert negative value to PY_LONG_LONG"); return (PY_LONG_LONG)-1; } return (PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); } else { return (PY_LONG_LONG)PyLong_AsLongLong(x); } } else { PY_LONG_LONG val; PyObject *tmp = __Pyx_PyNumber_Int(x); if (!tmp) return (PY_LONG_LONG)-1; val = __Pyx_PyInt_AsLongLong(tmp); Py_DECREF(tmp); return val; } } static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject* x) { const signed long neg_one = (signed long)-1, const_zero = 0; const int is_unsigned = neg_one > const_zero; #if PY_VERSION_HEX < 0x03000000 if (likely(PyInt_Check(x))) { long val = PyInt_AS_LONG(x); if (is_unsigned && unlikely(val < 0)) { PyErr_SetString(PyExc_OverflowError, "can't convert negative value to signed long"); return (signed long)-1; } return (signed long)val; } else #endif if (likely(PyLong_Check(x))) { if (is_unsigned) { if (unlikely(Py_SIZE(x) < 0)) { PyErr_SetString(PyExc_OverflowError, "can't convert negative value to signed long"); return (signed long)-1; } return (signed long)PyLong_AsUnsignedLong(x); } else { return (signed long)PyLong_AsLong(x); } } else { signed long val; PyObject *tmp = __Pyx_PyNumber_Int(x); if (!tmp) return (signed long)-1; val = __Pyx_PyInt_AsSignedLong(tmp); Py_DECREF(tmp); return val; } } static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject* x) { const signed PY_LONG_LONG neg_one = (signed PY_LONG_LONG)-1, const_zero = 0; const int is_unsigned = neg_one > const_zero; #if PY_VERSION_HEX < 0x03000000 if (likely(PyInt_Check(x))) { long val = PyInt_AS_LONG(x); if (is_unsigned && unlikely(val < 0)) { PyErr_SetString(PyExc_OverflowError, "can't convert negative value to signed PY_LONG_LONG"); return (signed PY_LONG_LONG)-1; } return (signed PY_LONG_LONG)val; } else #endif if (likely(PyLong_Check(x))) { if (is_unsigned) { if (unlikely(Py_SIZE(x) < 0)) { PyErr_SetString(PyExc_OverflowError, "can't convert negative value to signed PY_LONG_LONG"); return (signed PY_LONG_LONG)-1; } return (signed PY_LONG_LONG)PyLong_AsUnsignedLongLong(x); } else { return (signed PY_LONG_LONG)PyLong_AsLongLong(x); } } else { signed PY_LONG_LONG val; PyObject *tmp = __Pyx_PyNumber_Int(x); if (!tmp) return (signed PY_LONG_LONG)-1; val = __Pyx_PyInt_AsSignedLongLong(tmp); Py_DECREF(tmp); return val; } } static CYTHON_INLINE void __Pyx_ErrRestore(PyObject *type, PyObject *value, PyObject *tb) { PyObject *tmp_type, *tmp_value, *tmp_tb; PyThreadState *tstate = PyThreadState_GET(); tmp_type = tstate->curexc_type; tmp_value = tstate->curexc_value; tmp_tb = tstate->curexc_traceback; tstate->curexc_type = type; tstate->curexc_value = value; tstate->curexc_traceback = tb; Py_XDECREF(tmp_type); Py_XDECREF(tmp_value); Py_XDECREF(tmp_tb); } static CYTHON_INLINE void __Pyx_ErrFetch(PyObject **type, PyObject **value, PyObject **tb) { PyThreadState *tstate = PyThreadState_GET(); *type = tstate->curexc_type; *value = tstate->curexc_value; *tb = tstate->curexc_traceback; tstate->curexc_type = 0; tstate->curexc_value = 0; tstate->curexc_traceback = 0; } #if PY_MAJOR_VERSION < 3 static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) { /* cause is unused */ Py_XINCREF(type); Py_XINCREF(value); Py_XINCREF(tb); /* First, check the traceback argument, replacing None with NULL. */ if (tb == Py_None) { Py_DECREF(tb); tb = 0; } else if (tb != NULL && !PyTraceBack_Check(tb)) { PyErr_SetString(PyExc_TypeError, "raise: arg 3 must be a traceback or None"); goto raise_error; } /* Next, replace a missing value with None */ if (value == NULL) { value = Py_None; Py_INCREF(value); } #if PY_VERSION_HEX < 0x02050000 if (!PyClass_Check(type)) #else if (!PyType_Check(type)) #endif { /* Raising an instance. The value should be a dummy. */ if (value != Py_None) { PyErr_SetString(PyExc_TypeError, "instance exception may not have a separate value"); goto raise_error; } /* Normalize to raise , */ Py_DECREF(value); value = type; #if PY_VERSION_HEX < 0x02050000 if (PyInstance_Check(type)) { type = (PyObject*) ((PyInstanceObject*)type)->in_class; Py_INCREF(type); } else { type = 0; PyErr_SetString(PyExc_TypeError, "raise: exception must be an old-style class or instance"); goto raise_error; } #else type = (PyObject*) Py_TYPE(type); Py_INCREF(type); if (!PyType_IsSubtype((PyTypeObject *)type, (PyTypeObject *)PyExc_BaseException)) { PyErr_SetString(PyExc_TypeError, "raise: exception class must be a subclass of BaseException"); goto raise_error; } #endif } __Pyx_ErrRestore(type, value, tb); return; raise_error: Py_XDECREF(value); Py_XDECREF(type); Py_XDECREF(tb); return; } #else /* Python 3+ */ static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb, PyObject *cause) { if (tb == Py_None) { tb = 0; } else if (tb && !PyTraceBack_Check(tb)) { PyErr_SetString(PyExc_TypeError, "raise: arg 3 must be a traceback or None"); goto bad; } if (value == Py_None) value = 0; if (PyExceptionInstance_Check(type)) { if (value) { PyErr_SetString(PyExc_TypeError, "instance exception may not have a separate value"); goto bad; } value = type; type = (PyObject*) Py_TYPE(value); } else if (!PyExceptionClass_Check(type)) { PyErr_SetString(PyExc_TypeError, "raise: exception class must be a subclass of BaseException"); goto bad; } if (cause) { PyObject *fixed_cause; if (PyExceptionClass_Check(cause)) { fixed_cause = PyObject_CallObject(cause, NULL); if (fixed_cause == NULL) goto bad; } else if (PyExceptionInstance_Check(cause)) { fixed_cause = cause; Py_INCREF(fixed_cause); } else { PyErr_SetString(PyExc_TypeError, "exception causes must derive from " "BaseException"); goto bad; } if (!value) { value = PyObject_CallObject(type, NULL); } PyException_SetCause(value, fixed_cause); } PyErr_SetObject(type, value); if (tb) { PyThreadState *tstate = PyThreadState_GET(); PyObject* tmp_tb = tstate->curexc_traceback; if (tb != tmp_tb) { Py_INCREF(tb); tstate->curexc_traceback = tb; Py_XDECREF(tmp_tb); } } bad: return; } #endif static CYTHON_INLINE void __Pyx_ExceptionSwap(PyObject **type, PyObject **value, PyObject **tb) { PyObject *tmp_type, *tmp_value, *tmp_tb; PyThreadState *tstate = PyThreadState_GET(); tmp_type = tstate->exc_type; tmp_value = tstate->exc_value; tmp_tb = tstate->exc_traceback; tstate->exc_type = *type; tstate->exc_value = *value; tstate->exc_traceback = *tb; *type = tmp_type; *value = tmp_value; *tb = tmp_tb; } static CYTHON_INLINE void __Pyx_Generator_ExceptionClear(struct __pyx_Generator_object *self) { Py_XDECREF(self->exc_type); Py_XDECREF(self->exc_value); Py_XDECREF(self->exc_traceback); self->exc_type = NULL; self->exc_value = NULL; self->exc_traceback = NULL; } static CYTHON_INLINE PyObject *__Pyx_Generator_SendEx(struct __pyx_Generator_object *self, PyObject *value) { PyObject *retval; if (self->is_running) { PyErr_SetString(PyExc_ValueError, "generator already executing"); return NULL; } if (self->resume_label == 0) { if (value && value != Py_None) { PyErr_SetString(PyExc_TypeError, "can't send non-None value to a " "just-started generator"); return NULL; } } if (self->resume_label == -1) { PyErr_SetNone(PyExc_StopIteration); return NULL; } if (value) __Pyx_ExceptionSwap(&self->exc_type, &self->exc_value, &self->exc_traceback); else __Pyx_Generator_ExceptionClear(self); self->is_running = 1; retval = self->body((PyObject *) self, value); self->is_running = 0; if (retval) __Pyx_ExceptionSwap(&self->exc_type, &self->exc_value, &self->exc_traceback); else __Pyx_Generator_ExceptionClear(self); return retval; } static PyObject *__Pyx_Generator_Next(PyObject *self) { return __Pyx_Generator_SendEx((struct __pyx_Generator_object *) self, Py_None); } static PyObject *__Pyx_Generator_Send(PyObject *self, PyObject *value) { return __Pyx_Generator_SendEx((struct __pyx_Generator_object *) self, value); } static PyObject *__Pyx_Generator_Close(PyObject *self) { struct __pyx_Generator_object *generator = (struct __pyx_Generator_object *) self; PyObject *retval; #if PY_VERSION_HEX < 0x02050000 PyErr_SetNone(PyExc_StopIteration); #else PyErr_SetNone(PyExc_GeneratorExit); #endif retval = __Pyx_Generator_SendEx(generator, NULL); if (retval) { Py_DECREF(retval); PyErr_SetString(PyExc_RuntimeError, "generator ignored GeneratorExit"); return NULL; } #if PY_VERSION_HEX < 0x02050000 if (PyErr_ExceptionMatches(PyExc_StopIteration)) #else if (PyErr_ExceptionMatches(PyExc_StopIteration) || PyErr_ExceptionMatches(PyExc_GeneratorExit)) #endif { PyErr_Clear(); /* ignore these errors */ Py_INCREF(Py_None); return Py_None; } return NULL; } static PyObject *__Pyx_Generator_Throw(PyObject *self, PyObject *args, CYTHON_UNUSED PyObject *kwds) { struct __pyx_Generator_object *generator = (struct __pyx_Generator_object *) self; PyObject *typ; PyObject *tb = NULL; PyObject *val = NULL; if (!PyArg_UnpackTuple(args, (char *)"throw", 1, 3, &typ, &val, &tb)) return NULL; __Pyx_Raise(typ, val, tb, NULL); return __Pyx_Generator_SendEx(generator, NULL); } static int __Pyx_check_binary_version(void) { char ctversion[4], rtversion[4]; PyOS_snprintf(ctversion, 4, "%d.%d", PY_MAJOR_VERSION, PY_MINOR_VERSION); PyOS_snprintf(rtversion, 4, "%s", Py_GetVersion()); if (ctversion[0] != rtversion[0] || ctversion[2] != rtversion[2]) { char message[200]; PyOS_snprintf(message, sizeof(message), "compiletime version %s of module '%.100s' " "does not match runtime version %s", ctversion, __Pyx_MODULE_NAME, rtversion); #if PY_VERSION_HEX < 0x02050000 return PyErr_Warn(NULL, message); #else return PyErr_WarnEx(NULL, message, 1); #endif } return 0; } #include "compile.h" #include "frameobject.h" #include "traceback.h" static void __Pyx_AddTraceback(const char *funcname, int __pyx_clineno, int __pyx_lineno, const char *__pyx_filename) { PyObject *py_srcfile = 0; PyObject *py_funcname = 0; PyObject *py_globals = 0; PyCodeObject *py_code = 0; PyFrameObject *py_frame = 0; #if PY_MAJOR_VERSION < 3 py_srcfile = PyString_FromString(__pyx_filename); #else py_srcfile = PyUnicode_FromString(__pyx_filename); #endif if (!py_srcfile) goto bad; if (__pyx_clineno) { #if PY_MAJOR_VERSION < 3 py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); #else py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno); #endif } else { #if PY_MAJOR_VERSION < 3 py_funcname = PyString_FromString(funcname); #else py_funcname = PyUnicode_FromString(funcname); #endif } if (!py_funcname) goto bad; py_globals = PyModule_GetDict(__pyx_m); if (!py_globals) goto bad; py_code = PyCode_New( 0, /*int argcount,*/ #if PY_MAJOR_VERSION >= 3 0, /*int kwonlyargcount,*/ #endif 0, /*int nlocals,*/ 0, /*int stacksize,*/ 0, /*int flags,*/ __pyx_empty_bytes, /*PyObject *code,*/ __pyx_empty_tuple, /*PyObject *consts,*/ __pyx_empty_tuple, /*PyObject *names,*/ __pyx_empty_tuple, /*PyObject *varnames,*/ __pyx_empty_tuple, /*PyObject *freevars,*/ __pyx_empty_tuple, /*PyObject *cellvars,*/ py_srcfile, /*PyObject *filename,*/ py_funcname, /*PyObject *name,*/ __pyx_lineno, /*int firstlineno,*/ __pyx_empty_bytes /*PyObject *lnotab*/ ); if (!py_code) goto bad; py_frame = PyFrame_New( PyThreadState_GET(), /*PyThreadState *tstate,*/ py_code, /*PyCodeObject *code,*/ py_globals, /*PyObject *globals,*/ 0 /*PyObject *locals*/ ); if (!py_frame) goto bad; py_frame->f_lineno = __pyx_lineno; PyTraceBack_Here(py_frame); bad: Py_XDECREF(py_srcfile); Py_XDECREF(py_funcname); Py_XDECREF(py_code); Py_XDECREF(py_frame); } static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) { while (t->p) { #if PY_MAJOR_VERSION < 3 if (t->is_unicode) { *t->p = PyUnicode_DecodeUTF8(t->s, t->n - 1, NULL); } else if (t->intern) { *t->p = PyString_InternFromString(t->s); } else { *t->p = PyString_FromStringAndSize(t->s, t->n - 1); } #else /* Python 3+ has unicode identifiers */ if (t->is_unicode | t->is_str) { if (t->intern) { *t->p = PyUnicode_InternFromString(t->s); } else if (t->encoding) { *t->p = PyUnicode_Decode(t->s, t->n - 1, t->encoding, NULL); } else { *t->p = PyUnicode_FromStringAndSize(t->s, t->n - 1); } } else { *t->p = PyBytes_FromStringAndSize(t->s, t->n - 1); } #endif if (!*t->p) return -1; ++t; } return 0; } /* Type Conversion Functions */ static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) { int is_true = x == Py_True; if (is_true | (x == Py_False) | (x == Py_None)) return is_true; else return PyObject_IsTrue(x); } static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x) { PyNumberMethods *m; const char *name = NULL; PyObject *res = NULL; #if PY_VERSION_HEX < 0x03000000 if (PyInt_Check(x) || PyLong_Check(x)) #else if (PyLong_Check(x)) #endif return Py_INCREF(x), x; m = Py_TYPE(x)->tp_as_number; #if PY_VERSION_HEX < 0x03000000 if (m && m->nb_int) { name = "int"; res = PyNumber_Int(x); } else if (m && m->nb_long) { name = "long"; res = PyNumber_Long(x); } #else if (m && m->nb_int) { name = "int"; res = PyNumber_Long(x); } #endif if (res) { #if PY_VERSION_HEX < 0x03000000 if (!PyInt_Check(res) && !PyLong_Check(res)) { #else if (!PyLong_Check(res)) { #endif PyErr_Format(PyExc_TypeError, "__%s__ returned non-%s (type %.200s)", name, name, Py_TYPE(res)->tp_name); Py_DECREF(res); return NULL; } } else if (!PyErr_Occurred()) { PyErr_SetString(PyExc_TypeError, "an integer is required"); } return res; } static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) { Py_ssize_t ival; PyObject* x = PyNumber_Index(b); if (!x) return -1; ival = PyInt_AsSsize_t(x); Py_DECREF(x); return ival; } static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) { #if PY_VERSION_HEX < 0x02050000 if (ival <= LONG_MAX) return PyInt_FromLong((long)ival); else { unsigned char *bytes = (unsigned char *) &ival; int one = 1; int little = (int)*(unsigned char*)&one; return _PyLong_FromByteArray(bytes, sizeof(size_t), little, 0); } #else return PyInt_FromSize_t(ival); #endif } static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject* x) { unsigned PY_LONG_LONG val = __Pyx_PyInt_AsUnsignedLongLong(x); if (unlikely(val == (unsigned PY_LONG_LONG)-1 && PyErr_Occurred())) { return (size_t)-1; } else if (unlikely(val != (unsigned PY_LONG_LONG)(size_t)val)) { PyErr_SetString(PyExc_OverflowError, "value too large to convert to size_t"); return (size_t)-1; } return (size_t)val; } #endif /* Py_PYTHON_H */