1
/* Generated by Cython 0.14.1 on Fri Feb 4 01:17:38 2011 */
3
#define PY_SSIZE_T_CLEAN
6
#error Python headers needed to compile C extensions, please install development version of Python.
9
#include <stddef.h> /* For offsetof */
11
#define offsetof(type, member) ( (size_t) & ((type*)0) -> member )
14
#if !defined(WIN32) && !defined(MS_WINDOWS)
27
#define DL_IMPORT(t) t
30
#define DL_EXPORT(t) t
34
#define PY_LONG_LONG LONG_LONG
37
#if PY_VERSION_HEX < 0x02040000
38
#define METH_COEXIST 0
39
#define PyDict_CheckExact(op) (Py_TYPE(op) == &PyDict_Type)
40
#define PyDict_Contains(d,o) PySequence_Contains(d,o)
43
#if PY_VERSION_HEX < 0x02050000
44
typedef int Py_ssize_t;
45
#define PY_SSIZE_T_MAX INT_MAX
46
#define PY_SSIZE_T_MIN INT_MIN
47
#define PY_FORMAT_SIZE_T ""
48
#define PyInt_FromSsize_t(z) PyInt_FromLong(z)
49
#define PyInt_AsSsize_t(o) PyInt_AsLong(o)
50
#define PyNumber_Index(o) PyNumber_Int(o)
51
#define PyIndex_Check(o) PyNumber_Check(o)
52
#define PyErr_WarnEx(category, message, stacklevel) PyErr_Warn(category, message)
55
#if PY_VERSION_HEX < 0x02060000
56
#define Py_REFCNT(ob) (((PyObject*)(ob))->ob_refcnt)
57
#define Py_TYPE(ob) (((PyObject*)(ob))->ob_type)
58
#define Py_SIZE(ob) (((PyVarObject*)(ob))->ob_size)
59
#define PyVarObject_HEAD_INIT(type, size) \
60
PyObject_HEAD_INIT(type) size,
61
#define PyType_Modified(t)
73
Py_ssize_t *suboffsets;
77
#define PyBUF_SIMPLE 0
78
#define PyBUF_WRITABLE 0x0001
79
#define PyBUF_FORMAT 0x0004
80
#define PyBUF_ND 0x0008
81
#define PyBUF_STRIDES (0x0010 | PyBUF_ND)
82
#define PyBUF_C_CONTIGUOUS (0x0020 | PyBUF_STRIDES)
83
#define PyBUF_F_CONTIGUOUS (0x0040 | PyBUF_STRIDES)
84
#define PyBUF_ANY_CONTIGUOUS (0x0080 | PyBUF_STRIDES)
85
#define PyBUF_INDIRECT (0x0100 | PyBUF_STRIDES)
89
#if PY_MAJOR_VERSION < 3
90
#define __Pyx_BUILTIN_MODULE_NAME "__builtin__"
92
#define __Pyx_BUILTIN_MODULE_NAME "builtins"
95
#if PY_MAJOR_VERSION >= 3
96
#define Py_TPFLAGS_CHECKTYPES 0
97
#define Py_TPFLAGS_HAVE_INDEX 0
100
#if (PY_VERSION_HEX < 0x02060000) || (PY_MAJOR_VERSION >= 3)
101
#define Py_TPFLAGS_HAVE_NEWBUFFER 0
104
#if PY_MAJOR_VERSION >= 3
105
#define PyBaseString_Type PyUnicode_Type
106
#define PyStringObject PyUnicodeObject
107
#define PyString_Type PyUnicode_Type
108
#define PyString_Check PyUnicode_Check
109
#define PyString_CheckExact PyUnicode_CheckExact
112
#if PY_VERSION_HEX < 0x02060000
113
#define PyBytesObject PyStringObject
114
#define PyBytes_Type PyString_Type
115
#define PyBytes_Check PyString_Check
116
#define PyBytes_CheckExact PyString_CheckExact
117
#define PyBytes_FromString PyString_FromString
118
#define PyBytes_FromStringAndSize PyString_FromStringAndSize
119
#define PyBytes_FromFormat PyString_FromFormat
120
#define PyBytes_DecodeEscape PyString_DecodeEscape
121
#define PyBytes_AsString PyString_AsString
122
#define PyBytes_AsStringAndSize PyString_AsStringAndSize
123
#define PyBytes_Size PyString_Size
124
#define PyBytes_AS_STRING PyString_AS_STRING
125
#define PyBytes_GET_SIZE PyString_GET_SIZE
126
#define PyBytes_Repr PyString_Repr
127
#define PyBytes_Concat PyString_Concat
128
#define PyBytes_ConcatAndDel PyString_ConcatAndDel
131
#if PY_VERSION_HEX < 0x02060000
132
#define PySet_Check(obj) PyObject_TypeCheck(obj, &PySet_Type)
133
#define PyFrozenSet_Check(obj) PyObject_TypeCheck(obj, &PyFrozenSet_Type)
135
#ifndef PySet_CheckExact
136
#define PySet_CheckExact(obj) (Py_TYPE(obj) == &PySet_Type)
139
#define __Pyx_TypeCheck(obj, type) PyObject_TypeCheck(obj, (PyTypeObject *)type)
141
#if PY_MAJOR_VERSION >= 3
142
#define PyIntObject PyLongObject
143
#define PyInt_Type PyLong_Type
144
#define PyInt_Check(op) PyLong_Check(op)
145
#define PyInt_CheckExact(op) PyLong_CheckExact(op)
146
#define PyInt_FromString PyLong_FromString
147
#define PyInt_FromUnicode PyLong_FromUnicode
148
#define PyInt_FromLong PyLong_FromLong
149
#define PyInt_FromSize_t PyLong_FromSize_t
150
#define PyInt_FromSsize_t PyLong_FromSsize_t
151
#define PyInt_AsLong PyLong_AsLong
152
#define PyInt_AS_LONG PyLong_AS_LONG
153
#define PyInt_AsSsize_t PyLong_AsSsize_t
154
#define PyInt_AsUnsignedLongMask PyLong_AsUnsignedLongMask
155
#define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask
158
#if PY_MAJOR_VERSION >= 3
159
#define PyBoolObject PyLongObject
163
#if PY_MAJOR_VERSION >= 3
164
#define __Pyx_PyNumber_Divide(x,y) PyNumber_TrueDivide(x,y)
165
#define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceTrueDivide(x,y)
167
#define __Pyx_PyNumber_Divide(x,y) PyNumber_Divide(x,y)
168
#define __Pyx_PyNumber_InPlaceDivide(x,y) PyNumber_InPlaceDivide(x,y)
171
#if (PY_MAJOR_VERSION < 3) || (PY_VERSION_HEX >= 0x03010300)
172
#define __Pyx_PySequence_GetSlice(obj, a, b) PySequence_GetSlice(obj, a, b)
173
#define __Pyx_PySequence_SetSlice(obj, a, b, value) PySequence_SetSlice(obj, a, b, value)
174
#define __Pyx_PySequence_DelSlice(obj, a, b) PySequence_DelSlice(obj, a, b)
176
#define __Pyx_PySequence_GetSlice(obj, a, b) (unlikely(!(obj)) ? \
177
(PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), (PyObject*)0) : \
178
(likely((obj)->ob_type->tp_as_mapping) ? (PySequence_GetSlice(obj, a, b)) : \
179
(PyErr_Format(PyExc_TypeError, "'%.200s' object is unsliceable", (obj)->ob_type->tp_name), (PyObject*)0)))
180
#define __Pyx_PySequence_SetSlice(obj, a, b, value) (unlikely(!(obj)) ? \
181
(PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \
182
(likely((obj)->ob_type->tp_as_mapping) ? (PySequence_SetSlice(obj, a, b, value)) : \
183
(PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice assignment", (obj)->ob_type->tp_name), -1)))
184
#define __Pyx_PySequence_DelSlice(obj, a, b) (unlikely(!(obj)) ? \
185
(PyErr_SetString(PyExc_SystemError, "null argument to internal routine"), -1) : \
186
(likely((obj)->ob_type->tp_as_mapping) ? (PySequence_DelSlice(obj, a, b)) : \
187
(PyErr_Format(PyExc_TypeError, "'%.200s' object doesn't support slice deletion", (obj)->ob_type->tp_name), -1)))
190
#if PY_MAJOR_VERSION >= 3
191
#define PyMethod_New(func, self, klass) ((self) ? PyMethod_New(func, self) : PyInstanceMethod_New(func))
194
#if PY_VERSION_HEX < 0x02050000
195
#define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),((char *)(n)))
196
#define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),((char *)(n)),(a))
197
#define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),((char *)(n)))
199
#define __Pyx_GetAttrString(o,n) PyObject_GetAttrString((o),(n))
200
#define __Pyx_SetAttrString(o,n,a) PyObject_SetAttrString((o),(n),(a))
201
#define __Pyx_DelAttrString(o,n) PyObject_DelAttrString((o),(n))
204
#if PY_VERSION_HEX < 0x02050000
205
#define __Pyx_NAMESTR(n) ((char *)(n))
206
#define __Pyx_DOCSTR(n) ((char *)(n))
208
#define __Pyx_NAMESTR(n) (n)
209
#define __Pyx_DOCSTR(n) (n)
213
#define __PYX_EXTERN_C extern "C"
215
#define __PYX_EXTERN_C extern
218
#if defined(WIN32) || defined(MS_WINDOWS)
219
#define _USE_MATH_DEFINES
222
#define __PYX_HAVE_API__Cython__Compiler__Visitor
224
#ifdef PYREX_WITHOUT_ASSERTIONS
225
#define CYTHON_WITHOUT_ASSERTIONS
229
/* inline attribute */
230
#ifndef CYTHON_INLINE
231
#if defined(__GNUC__)
232
#define CYTHON_INLINE __inline__
233
#elif defined(_MSC_VER)
234
#define CYTHON_INLINE __inline
235
#elif defined (__STDC_VERSION__) && __STDC_VERSION__ >= 199901L
236
#define CYTHON_INLINE inline
238
#define CYTHON_INLINE
242
/* unused attribute */
243
#ifndef CYTHON_UNUSED
244
# if defined(__GNUC__)
245
# if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
246
# define CYTHON_UNUSED __attribute__ ((__unused__))
248
# define CYTHON_UNUSED
250
# elif defined(__ICC) || defined(__INTEL_COMPILER)
251
# define CYTHON_UNUSED __attribute__ ((__unused__))
253
# define CYTHON_UNUSED
257
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*/
260
/* Type Conversion Predeclarations */
262
#define __Pyx_PyBytes_FromUString(s) PyBytes_FromString((char*)s)
263
#define __Pyx_PyBytes_AsUString(s) ((unsigned char*) PyBytes_AsString(s))
265
#define __Pyx_PyBool_FromLong(b) ((b) ? (Py_INCREF(Py_True), Py_True) : (Py_INCREF(Py_False), Py_False))
266
static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject*);
267
static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x);
269
static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject*);
270
static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t);
271
static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject*);
273
#define __pyx_PyFloat_AsDouble(x) (PyFloat_CheckExact(x) ? PyFloat_AS_DOUBLE(x) : PyFloat_AsDouble(x))
277
/* Test for GCC > 2.95 */
278
#if __GNUC__ > 2 || (__GNUC__ == 2 && (__GNUC_MINOR__ > 95))
279
#define likely(x) __builtin_expect(!!(x), 1)
280
#define unlikely(x) __builtin_expect(!!(x), 0)
281
#else /* __GNUC__ > 2 ... */
282
#define likely(x) (x)
283
#define unlikely(x) (x)
284
#endif /* __GNUC__ > 2 ... */
286
#define likely(x) (x)
287
#define unlikely(x) (x)
288
#endif /* __GNUC__ */
290
static PyObject *__pyx_m;
291
static PyObject *__pyx_b;
292
static PyObject *__pyx_empty_tuple;
293
static PyObject *__pyx_empty_bytes;
294
static int __pyx_lineno;
295
static int __pyx_clineno = 0;
296
static const char * __pyx_cfilenm= __FILE__;
297
static const char *__pyx_filename;
300
static const char *__pyx_f[] = {
305
/* Type declarations */
307
/* "Cython/Compiler/Visitor.pxd":13
308
* @cython.locals(idx=int)
309
* cdef dict _visitchildren(self, parent, attrs)
310
* cpdef visitchildren(self, parent, attrs=*) # <<<<<<<<<<<<<<
312
* cdef class VisitorTransform(TreeVisitor):
315
struct __pyx_opt_args_6Cython_8Compiler_7Visitor_11TreeVisitor_visitchildren {
320
/* "Cython/Compiler/Visitor.pxd":16
322
* cdef class VisitorTransform(TreeVisitor):
323
* cpdef visitchildren(self, parent, attrs=*) # <<<<<<<<<<<<<<
324
* cpdef recurse_to_children(self, node)
328
struct __pyx_opt_args_6Cython_8Compiler_7Visitor_16VisitorTransform_visitchildren {
333
/* "Cython/Compiler/Visitor.pxd":3
336
* cdef class TreeVisitor: # <<<<<<<<<<<<<<
337
* cdef public list access_path
338
* cdef dict dispatch_table
341
struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor {
343
struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_TreeVisitor *__pyx_vtab;
344
PyObject *access_path;
345
PyObject *dispatch_table;
348
/* "Cython/Compiler/Visitor.pxd":15
349
* cpdef visitchildren(self, parent, attrs=*)
351
* cdef class VisitorTransform(TreeVisitor): # <<<<<<<<<<<<<<
352
* cpdef visitchildren(self, parent, attrs=*)
353
* cpdef recurse_to_children(self, node)
356
struct __pyx_obj_6Cython_8Compiler_7Visitor_VisitorTransform {
357
struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor __pyx_base;
360
/* "Cython/Compiler/Visitor.pxd":19
361
* cpdef recurse_to_children(self, node)
363
* cdef class CythonTransform(VisitorTransform): # <<<<<<<<<<<<<<
364
* cdef public context
365
* cdef public current_directives
368
struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform {
369
struct __pyx_obj_6Cython_8Compiler_7Visitor_VisitorTransform __pyx_base;
371
PyObject *current_directives;
374
/* "Cython/Compiler/Visitor.pxd":28
375
* cdef visit_scope(self, node, scope_type)
377
* cdef class EnvTransform(CythonTransform): # <<<<<<<<<<<<<<
378
* cdef public list env_stack
382
struct __pyx_obj_6Cython_8Compiler_7Visitor_EnvTransform {
383
struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform __pyx_base;
387
/* "Cython/Compiler/Visitor.pxd":23
388
* cdef public current_directives
390
* cdef class ScopeTrackingTransform(CythonTransform): # <<<<<<<<<<<<<<
391
* cdef public scope_type
392
* cdef public scope_node
395
struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform {
396
struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform __pyx_base;
397
PyObject *scope_type;
398
PyObject *scope_node;
401
/* "Cython/Compiler/Visitor.pxd":31
402
* cdef public list env_stack
404
* cdef class RecursiveNodeReplacer(VisitorTransform): # <<<<<<<<<<<<<<
405
* cdef public orig_node
406
* cdef public new_node
409
struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer {
410
struct __pyx_obj_6Cython_8Compiler_7Visitor_VisitorTransform __pyx_base;
416
/* "Cython/Compiler/Visitor.py":14
419
* class TreeVisitor(object): # <<<<<<<<<<<<<<
421
* Base class for writing visitors for a Cython tree, contains utilities for
424
struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_TreeVisitor {
425
PyObject *(*visit)(struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *, PyObject *, int __pyx_skip_dispatch);
426
PyObject *(*_visit)(struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *, PyObject *);
427
PyObject *(*find_handler)(struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *, PyObject *);
428
PyObject *(*_visitchild)(struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *, PyObject *, PyObject *, PyObject *, PyObject *);
429
PyObject *(*_visitchildren)(struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *, PyObject *, PyObject *);
430
PyObject *(*visitchildren)(struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *, PyObject *, int __pyx_skip_dispatch, struct __pyx_opt_args_6Cython_8Compiler_7Visitor_11TreeVisitor_visitchildren *__pyx_optional_args);
432
static struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_TreeVisitor *__pyx_vtabptr_6Cython_8Compiler_7Visitor_TreeVisitor;
435
/* "Cython/Compiler/Visitor.py":213
438
* class VisitorTransform(TreeVisitor): # <<<<<<<<<<<<<<
440
* A tree transform is a base class for visitors that wants to do stream
443
struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_VisitorTransform {
444
struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_TreeVisitor __pyx_base;
445
PyObject *(*recurse_to_children)(struct __pyx_obj_6Cython_8Compiler_7Visitor_VisitorTransform *, PyObject *, int __pyx_skip_dispatch);
447
static struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_VisitorTransform *__pyx_vtabptr_6Cython_8Compiler_7Visitor_VisitorTransform;
450
/* "Cython/Compiler/Visitor.py":257
451
* return self._visit(root)
453
* class CythonTransform(VisitorTransform): # <<<<<<<<<<<<<<
455
* Certain common conventions and utilities for Cython transforms.
458
struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_CythonTransform {
459
struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_VisitorTransform __pyx_base;
461
static struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_CythonTransform *__pyx_vtabptr_6Cython_8Compiler_7Visitor_CythonTransform;
464
/* "Cython/Compiler/Visitor.py":317
467
* class EnvTransform(CythonTransform): # <<<<<<<<<<<<<<
469
* This transformation keeps a stack of the environments.
472
struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_EnvTransform {
473
struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_CythonTransform __pyx_base;
475
static struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_EnvTransform *__pyx_vtabptr_6Cython_8Compiler_7Visitor_EnvTransform;
478
/* "Cython/Compiler/Visitor.py":335
481
* class RecursiveNodeReplacer(VisitorTransform): # <<<<<<<<<<<<<<
483
* Recursively replace all occurrences of a node in a subtree by
486
struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer {
487
struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_VisitorTransform __pyx_base;
489
static struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *__pyx_vtabptr_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer;
492
/* "Cython/Compiler/Visitor.py":285
495
* class ScopeTrackingTransform(CythonTransform): # <<<<<<<<<<<<<<
496
* # Keeps track of type of scopes
497
* #scope_type: can be either of 'module', 'function', 'cclass', 'pyclass', 'struct'
500
struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_ScopeTrackingTransform {
501
struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_CythonTransform __pyx_base;
502
PyObject *(*visit_scope)(struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *, PyObject *, PyObject *);
504
static struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *__pyx_vtabptr_6Cython_8Compiler_7Visitor_ScopeTrackingTransform;
506
#ifndef CYTHON_REFNANNY
507
#define CYTHON_REFNANNY 0
512
void (*INCREF)(void*, PyObject*, int);
513
void (*DECREF)(void*, PyObject*, int);
514
void (*GOTREF)(void*, PyObject*, int);
515
void (*GIVEREF)(void*, PyObject*, int);
516
void* (*SetupContext)(const char*, int, const char*);
517
void (*FinishContext)(void**);
518
} __Pyx_RefNannyAPIStruct;
519
static __Pyx_RefNannyAPIStruct *__Pyx_RefNanny = NULL;
520
static __Pyx_RefNannyAPIStruct * __Pyx_RefNannyImportAPI(const char *modname) {
521
PyObject *m = NULL, *p = NULL;
523
m = PyImport_ImportModule((char *)modname);
525
p = PyObject_GetAttrString(m, (char *)"RefNannyAPI");
527
r = PyLong_AsVoidPtr(p);
531
return (__Pyx_RefNannyAPIStruct *)r;
533
#define __Pyx_RefNannySetupContext(name) void *__pyx_refnanny = __Pyx_RefNanny->SetupContext((name), __LINE__, __FILE__)
534
#define __Pyx_RefNannyFinishContext() __Pyx_RefNanny->FinishContext(&__pyx_refnanny)
535
#define __Pyx_INCREF(r) __Pyx_RefNanny->INCREF(__pyx_refnanny, (PyObject *)(r), __LINE__)
536
#define __Pyx_DECREF(r) __Pyx_RefNanny->DECREF(__pyx_refnanny, (PyObject *)(r), __LINE__)
537
#define __Pyx_GOTREF(r) __Pyx_RefNanny->GOTREF(__pyx_refnanny, (PyObject *)(r), __LINE__)
538
#define __Pyx_GIVEREF(r) __Pyx_RefNanny->GIVEREF(__pyx_refnanny, (PyObject *)(r), __LINE__)
539
#define __Pyx_XDECREF(r) do { if((r) != NULL) {__Pyx_DECREF(r);} } while(0)
541
#define __Pyx_RefNannySetupContext(name)
542
#define __Pyx_RefNannyFinishContext()
543
#define __Pyx_INCREF(r) Py_INCREF(r)
544
#define __Pyx_DECREF(r) Py_DECREF(r)
545
#define __Pyx_GOTREF(r)
546
#define __Pyx_GIVEREF(r)
547
#define __Pyx_XDECREF(r) Py_XDECREF(r)
548
#endif /* CYTHON_REFNANNY */
549
#define __Pyx_XGIVEREF(r) do { if((r) != NULL) {__Pyx_GIVEREF(r);} } while(0)
550
#define __Pyx_XGOTREF(r) do { if((r) != NULL) {__Pyx_GOTREF(r);} } while(0)
552
static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name); /*proto*/
554
static void __Pyx_RaiseArgtupleInvalid(const char* func_name, int exact,
555
Py_ssize_t num_min, Py_ssize_t num_max, Py_ssize_t num_found); /*proto*/
557
static CYTHON_INLINE int __Pyx_CheckKeywordStrings(PyObject *kwdict,
558
const char* function_name, int kw_allowed); /*proto*/
560
static void __Pyx_RaiseDoubleKeywordsError(
561
const char* func_name, PyObject* kw_name); /*proto*/
563
static int __Pyx_ParseOptionalKeywords(PyObject *kwds, PyObject **argnames[], PyObject *kwds2, PyObject *values[], Py_ssize_t num_pos_args, const char* function_name); /*proto*/
566
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Generic(PyObject *o, PyObject* j) {
569
r = PyObject_GetItem(o, j);
575
#define __Pyx_GetItemInt_List(o, i, size, to_py_func) (((size) <= sizeof(Py_ssize_t)) ? \
576
__Pyx_GetItemInt_List_Fast(o, i) : \
577
__Pyx_GetItemInt_Generic(o, to_py_func(i)))
579
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_List_Fast(PyObject *o, Py_ssize_t i) {
580
if (likely(o != Py_None)) {
581
if (likely((0 <= i) & (i < PyList_GET_SIZE(o)))) {
582
PyObject *r = PyList_GET_ITEM(o, i);
586
else if ((-PyList_GET_SIZE(o) <= i) & (i < 0)) {
587
PyObject *r = PyList_GET_ITEM(o, PyList_GET_SIZE(o) + i);
592
return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i));
595
#define __Pyx_GetItemInt_Tuple(o, i, size, to_py_func) (((size) <= sizeof(Py_ssize_t)) ? \
596
__Pyx_GetItemInt_Tuple_Fast(o, i) : \
597
__Pyx_GetItemInt_Generic(o, to_py_func(i)))
599
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Tuple_Fast(PyObject *o, Py_ssize_t i) {
600
if (likely(o != Py_None)) {
601
if (likely((0 <= i) & (i < PyTuple_GET_SIZE(o)))) {
602
PyObject *r = PyTuple_GET_ITEM(o, i);
606
else if ((-PyTuple_GET_SIZE(o) <= i) & (i < 0)) {
607
PyObject *r = PyTuple_GET_ITEM(o, PyTuple_GET_SIZE(o) + i);
612
return __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i));
616
#define __Pyx_GetItemInt(o, i, size, to_py_func) (((size) <= sizeof(Py_ssize_t)) ? \
617
__Pyx_GetItemInt_Fast(o, i) : \
618
__Pyx_GetItemInt_Generic(o, to_py_func(i)))
620
static CYTHON_INLINE PyObject *__Pyx_GetItemInt_Fast(PyObject *o, Py_ssize_t i) {
622
if (PyList_CheckExact(o) && ((0 <= i) & (i < PyList_GET_SIZE(o)))) {
623
r = PyList_GET_ITEM(o, i);
626
else if (PyTuple_CheckExact(o) && ((0 <= i) & (i < PyTuple_GET_SIZE(o)))) {
627
r = PyTuple_GET_ITEM(o, i);
630
else if (Py_TYPE(o)->tp_as_sequence && Py_TYPE(o)->tp_as_sequence->sq_item && (likely(i >= 0))) {
631
r = PySequence_GetItem(o, i);
634
r = __Pyx_GetItemInt_Generic(o, PyInt_FromSsize_t(i));
639
static CYTHON_INLINE long __Pyx_NegateNonNeg(long b) { return unlikely(b < 0) ? b : !b; }
640
static CYTHON_INLINE PyObject* __Pyx_PyBoolOrNull_FromLong(long b) {
641
return unlikely(b < 0) ? NULL : __Pyx_PyBool_FromLong(b);
644
static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb); /*proto*/
646
static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index);
648
static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected);
650
static PyObject *__Pyx_UnpackItem(PyObject *, Py_ssize_t index); /*proto*/
651
static int __Pyx_EndUnpack(PyObject *, Py_ssize_t expected); /*proto*/
653
static CYTHON_INLINE void __Pyx_ErrRestore(PyObject *type, PyObject *value, PyObject *tb); /*proto*/
654
static CYTHON_INLINE void __Pyx_ErrFetch(PyObject **type, PyObject **value, PyObject **tb); /*proto*/
656
static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb); /*proto*/
658
static CYTHON_INLINE void __Pyx_RaiseNoneIndexingError(void);
660
#if PY_MAJOR_VERSION >= 3
661
static PyObject *__Pyx_PyDict_GetItem(PyObject *d, PyObject* key) {
663
if (unlikely(d == Py_None)) {
664
__Pyx_RaiseNoneIndexingError();
667
value = PyDict_GetItemWithError(d, key);
668
if (unlikely(!value)) {
669
if (!PyErr_Occurred())
670
PyErr_SetObject(PyExc_KeyError, key);
677
#define __Pyx_PyDict_GetItem(d, key) PyObject_GetItem(d, key)
680
static CYTHON_INLINE PyObject* __Pyx_PyObject_Pop(PyObject* L) {
682
#if PY_VERSION_HEX >= 0x02040000
683
if (likely(PyList_CheckExact(L))
684
/* Check that both the size is positive and no reallocation shrinking needs to be done. */
685
&& likely(PyList_GET_SIZE(L) > (((PyListObject*)L)->allocated >> 1))) {
687
return PyList_GET_ITEM(L, PyList_GET_SIZE(L));
690
m = __Pyx_GetAttrString(L, "pop");
692
r = PyObject_CallObject(m, NULL);
697
static CYTHON_INLINE PyObject* __Pyx_PyObject_Append(PyObject* L, PyObject* x) {
698
if (likely(PyList_CheckExact(L))) {
699
if (PyList_Append(L, x) < 0) return NULL;
701
return Py_None; /* this is just to have an accurate signature */
705
m = __Pyx_GetAttrString(L, "append");
707
r = PyObject_CallFunctionObjArgs(m, x, NULL);
713
static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void);
715
static void __Pyx_UnpackTupleError(PyObject *, Py_ssize_t index); /*proto*/
717
static CYTHON_INLINE void __Pyx_ExceptionSave(PyObject **type, PyObject **value, PyObject **tb); /*proto*/
718
static void __Pyx_ExceptionReset(PyObject *type, PyObject *value, PyObject *tb); /*proto*/
720
static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list); /*proto*/
722
static PyObject *__Pyx_FindPy2Metaclass(PyObject *bases); /*proto*/
724
static PyObject *__Pyx_CreateClass(PyObject *bases, PyObject *dict, PyObject *name,
725
PyObject *modname); /*proto*/
727
#define __pyx_binding_PyCFunctionType_USED 1
730
PyCFunctionObject func;
731
} __pyx_binding_PyCFunctionType_object;
733
static PyTypeObject __pyx_binding_PyCFunctionType_type;
734
static PyTypeObject *__pyx_binding_PyCFunctionType = NULL;
736
static PyObject *__pyx_binding_PyCFunctionType_NewEx(PyMethodDef *ml, PyObject *self, PyObject *module); /* proto */
737
#define __pyx_binding_PyCFunctionType_New(ml, self) __pyx_binding_PyCFunctionType_NewEx(ml, self, NULL)
739
static int __pyx_binding_PyCFunctionType_init(void); /* proto */
741
static CYTHON_INLINE PyObject *__Pyx_GetAttr3(PyObject *, PyObject *, PyObject *); /*proto*/
743
static int __Pyx_Print(PyObject*, PyObject *, int); /*proto*/
744
#if PY_MAJOR_VERSION >= 3
745
static PyObject* __pyx_print = 0;
746
static PyObject* __pyx_print_kwargs = 0;
749
static int __Pyx_PrintOne(PyObject* stream, PyObject *o); /*proto*/
751
static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject *);
753
static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject *);
755
static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject *);
757
static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject *);
759
static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject *);
761
static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject *);
763
static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject *);
765
static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject *);
767
static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject *);
769
static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject *);
771
static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject *);
773
static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject *);
775
static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject *);
777
static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject *);
779
static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject *);
781
static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject *);
783
static int __Pyx_SetVtable(PyObject *dict, void *vtable); /*proto*/
785
static void __Pyx_AddTraceback(const char *funcname); /*proto*/
787
static int __Pyx_InitStrings(__Pyx_StringTabEntry *t); /*proto*/
788
/* Module declarations from cython */
790
/* Module declarations from Cython.Compiler.Visitor */
792
static PyTypeObject *__pyx_ptype_6Cython_8Compiler_7Visitor_TreeVisitor = 0;
793
static PyTypeObject *__pyx_ptype_6Cython_8Compiler_7Visitor_VisitorTransform = 0;
794
static PyTypeObject *__pyx_ptype_6Cython_8Compiler_7Visitor_CythonTransform = 0;
795
static PyTypeObject *__pyx_ptype_6Cython_8Compiler_7Visitor_ScopeTrackingTransform = 0;
796
static PyTypeObject *__pyx_ptype_6Cython_8Compiler_7Visitor_EnvTransform = 0;
797
static PyTypeObject *__pyx_ptype_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer = 0;
798
#define __Pyx_MODULE_NAME "Cython.Compiler.Visitor"
799
static int __pyx_module_is_main_Cython__Compiler__Visitor = 0;
801
/* Implementation of Cython.Compiler.Visitor */
802
static PyObject *__pyx_builtin_super;
803
static PyObject *__pyx_builtin_AttributeError;
804
static PyObject *__pyx_builtin_RuntimeError;
805
static PyObject *__pyx_builtin_KeyError;
806
static PyObject *__pyx_builtin_Exception;
807
static PyObject *__pyx_builtin_enumerate;
808
static char __pyx_k_1[] = "os.path";
809
static char __pyx_k_2[] = "%s:%s:%s";
810
static char __pyx_k_5[] = "[...]/%d";
811
static char __pyx_k_6[] = "%s = %s";
812
static char __pyx_k_7[] = "%s(%s)";
813
static char __pyx_k_8[] = ",\n ";
814
static char __pyx_k_10[] = "";
815
static char __pyx_k_11[] = "[%d]";
816
static char __pyx_k_12[] = "%s.%s%s = %s";
817
static char __pyx_k_13[] = "File '%s', line %d, in %s: %s";
818
static char __pyx_k_14[] = "\n";
819
static char __pyx_k_15[] = "visit_%s";
820
static char __pyx_k_16[] = "Visitor %r does not accept object: %s";
821
static char __pyx_k_17[] = "debug_no_exception_intercept";
822
static char __pyx_k_18[] = "_raise_compiler_error";
823
static char __pyx_k_19[] = "Cannot insert list here: %s in %r";
824
static char __pyx_k_20[] = " ";
825
static char __pyx_k_21[] = "Parse tree dump at phase '%s'";
826
static char __pyx_k_22[] = "(root)";
827
static char __pyx_k_23[] = "%s[%d]";
828
static char __pyx_k_24[] = "%s- %s: %s";
829
static char __pyx_k_25[] = "(none)";
830
static char __pyx_k_26[] = "(type=%s, name=\"%s\")";
831
static char __pyx_k_27[] = "(name=\"%s\")";
832
static char __pyx_k_28[] = "(type=%s)";
833
static char __pyx_k_29[] = "/";
834
static char __pyx_k_31[] = "\\";
835
static char __pyx_k_33[] = "(pos=(%s:%s:%s))";
836
static char __pyx_k_34[] = "Cython.Compiler.Visitor";
837
static char __pyx_k_35[] = "recursively_replace_node";
838
static char __pyx_k_36[] = "Prints a representation of the tree to standard output.\n Subclass and override repr_of to provide more information\n about nodes. ";
839
static char __pyx_k___[] = "_";
840
static char __pyx_k__e[] = "e";
841
static char __pyx_k__get[] = "get";
842
static char __pyx_k__pos[] = "pos";
843
static char __pyx_k__ptr[] = "ptr";
844
static char __pyx_k__sys[] = "sys";
845
static char __pyx_k__Node[] = "Node";
846
static char __pyx_k__join[] = "join";
847
static char __pyx_k__name[] = "name";
848
static char __pyx_k__node[] = "node";
849
static char __pyx_k__path[] = "path";
850
static char __pyx_k__root[] = "root";
851
static char __pyx_k__self[] = "self";
852
static char __pyx_k__sort[] = "sort";
853
static char __pyx_k__tree[] = "tree";
854
static char __pyx_k__type[] = "type";
855
static char __pyx_k__Nodes[] = "Nodes";
856
static char __pyx_k__attrs[] = "attrs";
857
static char __pyx_k__child[] = "child";
858
static char __pyx_k__phase[] = "phase";
859
static char __pyx_k__scope[] = "scope";
860
static char __pyx_k__split[] = "split";
861
static char __pyx_k__stats[] = "stats";
862
static char __pyx_k__super[] = "super";
863
static char __pyx_k__value[] = "value";
864
static char __pyx_k__visit[] = "visit";
865
static char __pyx_k__Errors[] = "Errors";
866
static char __pyx_k__Naming[] = "Naming";
867
static char __pyx_k___visit[] = "_visit";
868
static char __pyx_k__append[] = "append";
869
static char __pyx_k__cclass[] = "cclass";
870
static char __pyx_k__f_code[] = "f_code";
871
static char __pyx_k__getmro[] = "getmro";
872
static char __pyx_k__indent[] = "indent";
873
static char __pyx_k__module[] = "module";
874
static char __pyx_k__parent[] = "parent";
875
static char __pyx_k__struct[] = "struct";
876
static char __pyx_k__DefNode[] = "DefNode";
877
static char __pyx_k___indent[] = "_indent";
878
static char __pyx_k__co_name[] = "co_name";
879
static char __pyx_k__context[] = "context";
880
static char __pyx_k__doctest[] = "doctest";
881
static char __pyx_k__inspect[] = "inspect";
882
static char __pyx_k__pyclass[] = "pyclass";
883
static char __pyx_k__repr_of[] = "repr_of";
884
static char __pyx_k__tb_next[] = "tb_next";
885
static char __pyx_k__testmod[] = "testmod";
886
static char __pyx_k__ExprNode[] = "ExprNode";
887
static char __pyx_k__KeyError[] = "KeyError";
888
static char __pyx_k__NameNode[] = "NameNode";
889
static char __pyx_k____call__[] = "__call__";
890
static char __pyx_k____dict__[] = "__dict__";
891
static char __pyx_k____init__[] = "__init__";
892
static char __pyx_k____main__[] = "__main__";
893
static char __pyx_k____name__[] = "__name__";
894
static char __pyx_k____test__[] = "__test__";
895
static char __pyx_k__basename[] = "basename";
896
static char __pyx_k__endswith[] = "endswith";
897
static char __pyx_k__exc_info[] = "exc_info";
898
static char __pyx_k__f_lineno[] = "f_lineno";
899
static char __pyx_k__f_locals[] = "f_locals";
900
static char __pyx_k__function[] = "function";
901
static char __pyx_k__new_node[] = "new_node";
902
static char __pyx_k__old_node[] = "old_node";
903
static char __pyx_k__subexprs[] = "subexprs";
904
static char __pyx_k__tb_frame[] = "tb_frame";
905
static char __pyx_k__unindent[] = "unindent";
906
static char __pyx_k__Exception[] = "Exception";
907
static char __pyx_k__ExprNodes[] = "ExprNodes";
908
static char __pyx_k__PrintTree[] = "PrintTree";
909
static char __pyx_k____class__[] = "__class__";
910
static char __pyx_k__dump_node[] = "dump_node";
911
static char __pyx_k__enumerate[] = "enumerate";
912
static char __pyx_k__env_stack[] = "env_stack";
913
static char __pyx_k__orig_node[] = "orig_node";
914
static char __pyx_k__AbortError[] = "AbortError";
915
static char __pyx_k__DebugFlags[] = "DebugFlags";
916
static char __pyx_k__ModuleNode[] = "ModuleNode";
917
static char __pyx_k__directives[] = "directives";
918
static char __pyx_k__scope_node[] = "scope_node";
919
static char __pyx_k__scope_type[] = "scope_type";
920
static char __pyx_k__startswith[] = "startswith";
921
static char __pyx_k__visit_Node[] = "visit_Node";
922
static char __pyx_k___visitchild[] = "_visitchild";
923
static char __pyx_k__access_path[] = "access_path";
924
static char __pyx_k__child_attrs[] = "child_attrs";
925
static char __pyx_k__co_filename[] = "co_filename";
926
static char __pyx_k__cpp_message[] = "cpp_message";
927
static char __pyx_k__gil_message[] = "gil_message";
928
static char __pyx_k__local_scope[] = "local_scope";
929
static char __pyx_k__visit_scope[] = "visit_scope";
930
static char __pyx_k__CompileError[] = "CompileError";
931
static char __pyx_k__RuntimeError[] = "RuntimeError";
932
static char __pyx_k__StatListNode[] = "StatListNode";
933
static char __pyx_k__find_handler[] = "find_handler";
934
static char __pyx_k__replace_node[] = "replace_node";
935
static char __pyx_k__CompilerCrash[] = "CompilerCrash";
936
static char __pyx_k__visitchildren[] = "visitchildren";
937
static char __pyx_k__AttributeError[] = "AttributeError";
938
static char __pyx_k___visitchildren[] = "_visitchildren";
939
static char __pyx_k__dispatch_table[] = "dispatch_table";
940
static char __pyx_k___find_node_path[] = "_find_node_path";
941
static char __pyx_k__ensure_statlist[] = "ensure_statlist";
942
static char __pyx_k__get_description[] = "get_description";
943
static char __pyx_k__current_directives[] = "current_directives";
944
static char __pyx_k__recurse_to_children[] = "recurse_to_children";
945
static PyObject *__pyx_n_s_1;
946
static PyObject *__pyx_kp_s_10;
947
static PyObject *__pyx_kp_u_11;
948
static PyObject *__pyx_kp_u_12;
949
static PyObject *__pyx_kp_u_13;
950
static PyObject *__pyx_kp_u_14;
951
static PyObject *__pyx_kp_s_15;
952
static PyObject *__pyx_kp_s_16;
953
static PyObject *__pyx_n_s_17;
954
static PyObject *__pyx_n_s_18;
955
static PyObject *__pyx_kp_s_19;
956
static PyObject *__pyx_kp_u_2;
957
static PyObject *__pyx_kp_s_20;
958
static PyObject *__pyx_kp_s_21;
959
static PyObject *__pyx_kp_s_22;
960
static PyObject *__pyx_kp_s_23;
961
static PyObject *__pyx_kp_s_24;
962
static PyObject *__pyx_kp_s_25;
963
static PyObject *__pyx_kp_s_26;
964
static PyObject *__pyx_kp_s_27;
965
static PyObject *__pyx_kp_s_28;
966
static PyObject *__pyx_kp_s_29;
967
static PyObject *__pyx_kp_s_31;
968
static PyObject *__pyx_kp_s_33;
969
static PyObject *__pyx_n_s_34;
970
static PyObject *__pyx_n_s_35;
971
static PyObject *__pyx_kp_s_36;
972
static PyObject *__pyx_kp_u_5;
973
static PyObject *__pyx_kp_u_6;
974
static PyObject *__pyx_kp_u_7;
975
static PyObject *__pyx_kp_u_8;
976
static PyObject *__pyx_n_s__AbortError;
977
static PyObject *__pyx_n_s__AttributeError;
978
static PyObject *__pyx_n_s__CompileError;
979
static PyObject *__pyx_n_s__CompilerCrash;
980
static PyObject *__pyx_n_s__DebugFlags;
981
static PyObject *__pyx_n_s__DefNode;
982
static PyObject *__pyx_n_s__Errors;
983
static PyObject *__pyx_n_s__Exception;
984
static PyObject *__pyx_n_s__ExprNode;
985
static PyObject *__pyx_n_s__ExprNodes;
986
static PyObject *__pyx_n_s__KeyError;
987
static PyObject *__pyx_n_s__ModuleNode;
988
static PyObject *__pyx_n_s__NameNode;
989
static PyObject *__pyx_n_s__Naming;
990
static PyObject *__pyx_n_s__Node;
991
static PyObject *__pyx_n_s__Nodes;
992
static PyObject *__pyx_n_s__PrintTree;
993
static PyObject *__pyx_n_s__RuntimeError;
994
static PyObject *__pyx_n_s__StatListNode;
995
static PyObject *__pyx_n_u___;
996
static PyObject *__pyx_n_s____call__;
997
static PyObject *__pyx_n_s____class__;
998
static PyObject *__pyx_n_s____dict__;
999
static PyObject *__pyx_n_s____init__;
1000
static PyObject *__pyx_n_s____main__;
1001
static PyObject *__pyx_n_s____name__;
1002
static PyObject *__pyx_n_s____test__;
1003
static PyObject *__pyx_n_s___find_node_path;
1004
static PyObject *__pyx_n_s___indent;
1005
static PyObject *__pyx_n_s___visit;
1006
static PyObject *__pyx_n_s___visitchild;
1007
static PyObject *__pyx_n_s___visitchildren;
1008
static PyObject *__pyx_n_s__access_path;
1009
static PyObject *__pyx_n_s__append;
1010
static PyObject *__pyx_n_s__attrs;
1011
static PyObject *__pyx_n_s__basename;
1012
static PyObject *__pyx_n_s__cclass;
1013
static PyObject *__pyx_n_s__child;
1014
static PyObject *__pyx_n_s__child_attrs;
1015
static PyObject *__pyx_n_u__child_attrs;
1016
static PyObject *__pyx_n_s__co_filename;
1017
static PyObject *__pyx_n_s__co_name;
1018
static PyObject *__pyx_n_s__context;
1019
static PyObject *__pyx_n_u__cpp_message;
1020
static PyObject *__pyx_n_s__current_directives;
1021
static PyObject *__pyx_n_s__directives;
1022
static PyObject *__pyx_n_s__dispatch_table;
1023
static PyObject *__pyx_n_s__doctest;
1024
static PyObject *__pyx_n_s__dump_node;
1025
static PyObject *__pyx_n_s__e;
1026
static PyObject *__pyx_n_s__endswith;
1027
static PyObject *__pyx_n_s__ensure_statlist;
1028
static PyObject *__pyx_n_s__enumerate;
1029
static PyObject *__pyx_n_s__env_stack;
1030
static PyObject *__pyx_n_s__exc_info;
1031
static PyObject *__pyx_n_s__f_code;
1032
static PyObject *__pyx_n_s__f_lineno;
1033
static PyObject *__pyx_n_s__f_locals;
1034
static PyObject *__pyx_n_s__find_handler;
1035
static PyObject *__pyx_n_s__function;
1036
static PyObject *__pyx_n_s__get;
1037
static PyObject *__pyx_n_s__get_description;
1038
static PyObject *__pyx_n_s__getmro;
1039
static PyObject *__pyx_n_u__gil_message;
1040
static PyObject *__pyx_n_s__indent;
1041
static PyObject *__pyx_n_s__inspect;
1042
static PyObject *__pyx_n_s__join;
1043
static PyObject *__pyx_n_s__local_scope;
1044
static PyObject *__pyx_n_s__module;
1045
static PyObject *__pyx_n_s__name;
1046
static PyObject *__pyx_n_s__new_node;
1047
static PyObject *__pyx_n_s__node;
1048
static PyObject *__pyx_n_s__old_node;
1049
static PyObject *__pyx_n_s__orig_node;
1050
static PyObject *__pyx_n_s__parent;
1051
static PyObject *__pyx_n_s__path;
1052
static PyObject *__pyx_n_s__phase;
1053
static PyObject *__pyx_n_s__pos;
1054
static PyObject *__pyx_n_u__pos;
1055
static PyObject *__pyx_n_s__ptr;
1056
static PyObject *__pyx_n_s__pyclass;
1057
static PyObject *__pyx_n_s__recurse_to_children;
1058
static PyObject *__pyx_n_s__replace_node;
1059
static PyObject *__pyx_n_s__repr_of;
1060
static PyObject *__pyx_n_s__root;
1061
static PyObject *__pyx_n_s__scope;
1062
static PyObject *__pyx_n_s__scope_node;
1063
static PyObject *__pyx_n_s__scope_type;
1064
static PyObject *__pyx_n_s__self;
1065
static PyObject *__pyx_n_u__self;
1066
static PyObject *__pyx_n_s__sort;
1067
static PyObject *__pyx_n_s__split;
1068
static PyObject *__pyx_n_s__startswith;
1069
static PyObject *__pyx_n_s__stats;
1070
static PyObject *__pyx_n_s__struct;
1071
static PyObject *__pyx_n_u__subexprs;
1072
static PyObject *__pyx_n_s__super;
1073
static PyObject *__pyx_n_s__sys;
1074
static PyObject *__pyx_n_s__tb_frame;
1075
static PyObject *__pyx_n_s__tb_next;
1076
static PyObject *__pyx_n_s__testmod;
1077
static PyObject *__pyx_n_s__tree;
1078
static PyObject *__pyx_n_s__type;
1079
static PyObject *__pyx_n_s__unindent;
1080
static PyObject *__pyx_n_s__value;
1081
static PyObject *__pyx_n_s__visit;
1082
static PyObject *__pyx_n_s__visit_Node;
1083
static PyObject *__pyx_n_s__visit_scope;
1084
static PyObject *__pyx_n_s__visitchildren;
1085
static PyObject *__pyx_int_0;
1086
static PyObject *__pyx_k_tuple_3;
1087
static PyObject *__pyx_k_tuple_4;
1088
static PyObject *__pyx_k_tuple_9;
1089
static PyObject *__pyx_k_tuple_30;
1090
static PyObject *__pyx_k_tuple_32;
1092
/* "Cython/Compiler/Visitor.py":57
1095
* def __init__(self): # <<<<<<<<<<<<<<
1096
* super(TreeVisitor, self).__init__()
1097
* self.dispatch_table = {}
1100
static int __pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
1101
static int __pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
1103
PyObject *__pyx_t_1 = NULL;
1104
PyObject *__pyx_t_2 = NULL;
1105
__Pyx_RefNannySetupContext("__init__");
1106
if (unlikely(PyTuple_GET_SIZE(__pyx_args) > 0)) {
1107
__Pyx_RaiseArgtupleInvalid("__init__", 1, 0, 0, PyTuple_GET_SIZE(__pyx_args)); return -1;}
1108
if (unlikely(__pyx_kwds) && unlikely(PyDict_Size(__pyx_kwds) > 0) && unlikely(!__Pyx_CheckKeywordStrings(__pyx_kwds, "__init__", 0))) return -1;
1110
/* "Cython/Compiler/Visitor.py":58
1112
* def __init__(self):
1113
* super(TreeVisitor, self).__init__() # <<<<<<<<<<<<<<
1114
* self.dispatch_table = {}
1115
* self.access_path = []
1117
__pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1118
__Pyx_GOTREF(((PyObject *)__pyx_t_1));
1119
__Pyx_INCREF(((PyObject *)((PyObject*)__pyx_ptype_6Cython_8Compiler_7Visitor_TreeVisitor)));
1120
PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)((PyObject*)__pyx_ptype_6Cython_8Compiler_7Visitor_TreeVisitor)));
1121
__Pyx_GIVEREF(((PyObject *)((PyObject*)__pyx_ptype_6Cython_8Compiler_7Visitor_TreeVisitor)));
1122
__Pyx_INCREF(__pyx_v_self);
1123
PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_self);
1124
__Pyx_GIVEREF(__pyx_v_self);
1125
__pyx_t_2 = PyObject_Call(__pyx_builtin_super, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1126
__Pyx_GOTREF(__pyx_t_2);
1127
__Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0;
1128
__pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s____init__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1129
__Pyx_GOTREF(__pyx_t_1);
1130
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
1131
__pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1132
__Pyx_GOTREF(__pyx_t_2);
1133
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
1134
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
1136
/* "Cython/Compiler/Visitor.py":59
1137
* def __init__(self):
1138
* super(TreeVisitor, self).__init__()
1139
* self.dispatch_table = {} # <<<<<<<<<<<<<<
1140
* self.access_path = []
1143
__pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 59; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1144
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
1145
__Pyx_GIVEREF(((PyObject *)__pyx_t_2));
1146
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self)->dispatch_table);
1147
__Pyx_DECREF(((PyObject *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self)->dispatch_table));
1148
((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self)->dispatch_table = __pyx_t_2;
1151
/* "Cython/Compiler/Visitor.py":60
1152
* super(TreeVisitor, self).__init__()
1153
* self.dispatch_table = {}
1154
* self.access_path = [] # <<<<<<<<<<<<<<
1156
* def dump_node(self, node, indent=0):
1158
__pyx_t_2 = PyList_New(0); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 60; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1159
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
1160
__Pyx_GIVEREF(((PyObject *)__pyx_t_2));
1161
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self)->access_path);
1162
__Pyx_DECREF(((PyObject *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self)->access_path));
1163
((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self)->access_path = __pyx_t_2;
1169
__Pyx_XDECREF(__pyx_t_1);
1170
__Pyx_XDECREF(__pyx_t_2);
1171
__Pyx_AddTraceback("Cython.Compiler.Visitor.TreeVisitor.__init__");
1174
__Pyx_RefNannyFinishContext();
1178
/* "Cython/Compiler/Visitor.py":62
1179
* self.access_path = []
1181
* def dump_node(self, node, indent=0): # <<<<<<<<<<<<<<
1182
* ignored = list(node.child_attrs) + [u'child_attrs', u'pos',
1183
* u'gil_message', u'cpp_message',
1186
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_1dump_node(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
1187
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_1dump_node(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
1188
PyObject *__pyx_v_node = 0;
1189
PyObject *__pyx_v_indent = 0;
1190
PyObject *__pyx_v_ignored;
1191
PyObject *__pyx_v_values;
1192
PyObject *__pyx_v_pos;
1193
PyObject *__pyx_v_source;
1194
PyObject *__pyx_v_os;
1195
PyObject *__pyx_v_attribute_names;
1196
PyObject *__pyx_v_attr;
1197
PyObject *__pyx_v_value;
1198
PyObject *__pyx_r = NULL;
1199
PyObject *__pyx_t_1 = NULL;
1200
PyObject *__pyx_t_2 = NULL;
1201
PyObject *__pyx_t_3 = NULL;
1204
Py_ssize_t __pyx_t_6;
1207
PyObject *__pyx_t_9 = NULL;
1208
Py_ssize_t __pyx_t_10;
1209
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__node,&__pyx_n_s__indent,0};
1210
__Pyx_RefNannySetupContext("dump_node");
1211
if (unlikely(__pyx_kwds)) {
1212
Py_ssize_t kw_args = PyDict_Size(__pyx_kwds);
1213
PyObject* values[2] = {0,0};
1214
values[1] = ((PyObject *)__pyx_int_0);
1215
switch (PyTuple_GET_SIZE(__pyx_args)) {
1216
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
1217
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
1219
default: goto __pyx_L5_argtuple_error;
1221
switch (PyTuple_GET_SIZE(__pyx_args)) {
1223
values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__node);
1224
if (likely(values[0])) kw_args--;
1225
else goto __pyx_L5_argtuple_error;
1228
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__indent);
1229
if (value) { values[1] = value; kw_args--; }
1232
if (unlikely(kw_args > 0)) {
1233
if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "dump_node") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 62; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
1235
__pyx_v_node = values[0];
1236
__pyx_v_indent = values[1];
1238
__pyx_v_indent = ((PyObject *)__pyx_int_0);
1239
switch (PyTuple_GET_SIZE(__pyx_args)) {
1240
case 2: __pyx_v_indent = PyTuple_GET_ITEM(__pyx_args, 1);
1241
case 1: __pyx_v_node = PyTuple_GET_ITEM(__pyx_args, 0);
1243
default: goto __pyx_L5_argtuple_error;
1246
goto __pyx_L4_argument_unpacking_done;
1247
__pyx_L5_argtuple_error:;
1248
__Pyx_RaiseArgtupleInvalid("dump_node", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 62; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
1250
__Pyx_AddTraceback("Cython.Compiler.Visitor.TreeVisitor.dump_node");
1251
__Pyx_RefNannyFinishContext();
1253
__pyx_L4_argument_unpacking_done:;
1254
__pyx_v_ignored = ((PyObject*)Py_None); __Pyx_INCREF(Py_None);
1255
__pyx_v_values = ((PyObject*)Py_None); __Pyx_INCREF(Py_None);
1256
__pyx_v_pos = Py_None; __Pyx_INCREF(Py_None);
1257
__pyx_v_source = Py_None; __Pyx_INCREF(Py_None);
1258
__pyx_v_os = Py_None; __Pyx_INCREF(Py_None);
1259
__pyx_v_attribute_names = Py_None; __Pyx_INCREF(Py_None);
1260
__pyx_v_attr = Py_None; __Pyx_INCREF(Py_None);
1261
__pyx_v_value = Py_None; __Pyx_INCREF(Py_None);
1263
/* "Cython/Compiler/Visitor.py":63
1265
* def dump_node(self, node, indent=0):
1266
* ignored = list(node.child_attrs) + [u'child_attrs', u'pos', # <<<<<<<<<<<<<<
1267
* u'gil_message', u'cpp_message',
1270
__pyx_t_1 = PyObject_GetAttr(__pyx_v_node, __pyx_n_s__child_attrs); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1271
__Pyx_GOTREF(__pyx_t_1);
1272
__pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1273
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
1274
PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
1275
__Pyx_GIVEREF(__pyx_t_1);
1277
__pyx_t_1 = PyObject_Call(((PyObject *)((PyObject*)(&PyList_Type))), ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1278
__Pyx_GOTREF(__pyx_t_1);
1279
__Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0;
1280
__pyx_t_2 = PyList_New(5); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1281
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
1282
__Pyx_INCREF(((PyObject *)__pyx_n_u__child_attrs));
1283
PyList_SET_ITEM(__pyx_t_2, 0, ((PyObject *)__pyx_n_u__child_attrs));
1284
__Pyx_GIVEREF(((PyObject *)__pyx_n_u__child_attrs));
1285
__Pyx_INCREF(((PyObject *)__pyx_n_u__pos));
1286
PyList_SET_ITEM(__pyx_t_2, 1, ((PyObject *)__pyx_n_u__pos));
1287
__Pyx_GIVEREF(((PyObject *)__pyx_n_u__pos));
1288
__Pyx_INCREF(((PyObject *)__pyx_n_u__gil_message));
1289
PyList_SET_ITEM(__pyx_t_2, 2, ((PyObject *)__pyx_n_u__gil_message));
1290
__Pyx_GIVEREF(((PyObject *)__pyx_n_u__gil_message));
1291
__Pyx_INCREF(((PyObject *)__pyx_n_u__cpp_message));
1292
PyList_SET_ITEM(__pyx_t_2, 3, ((PyObject *)__pyx_n_u__cpp_message));
1293
__Pyx_GIVEREF(((PyObject *)__pyx_n_u__cpp_message));
1294
__Pyx_INCREF(((PyObject *)__pyx_n_u__subexprs));
1295
PyList_SET_ITEM(__pyx_t_2, 4, ((PyObject *)__pyx_n_u__subexprs));
1296
__Pyx_GIVEREF(((PyObject *)__pyx_n_u__subexprs));
1297
__pyx_t_3 = PyNumber_Add(__pyx_t_1, ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 63; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1298
__Pyx_GOTREF(((PyObject *)__pyx_t_3));
1299
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
1300
__Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0;
1301
__Pyx_DECREF(((PyObject *)__pyx_v_ignored));
1302
__pyx_v_ignored = __pyx_t_3;
1305
/* "Cython/Compiler/Visitor.py":66
1306
* u'gil_message', u'cpp_message',
1308
* values = [] # <<<<<<<<<<<<<<
1312
__pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 66; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1313
__Pyx_GOTREF(((PyObject *)__pyx_t_3));
1314
__Pyx_DECREF(((PyObject *)__pyx_v_values));
1315
__pyx_v_values = __pyx_t_3;
1318
/* "Cython/Compiler/Visitor.py":67
1321
* pos = node.pos # <<<<<<<<<<<<<<
1325
__pyx_t_3 = PyObject_GetAttr(__pyx_v_node, __pyx_n_s__pos); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 67; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1326
__Pyx_GOTREF(__pyx_t_3);
1327
__Pyx_DECREF(__pyx_v_pos);
1328
__pyx_v_pos = __pyx_t_3;
1331
/* "Cython/Compiler/Visitor.py":68
1334
* if pos: # <<<<<<<<<<<<<<
1338
__pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_pos); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 68; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1341
/* "Cython/Compiler/Visitor.py":69
1344
* source = pos[0] # <<<<<<<<<<<<<<
1348
__pyx_t_3 = __Pyx_GetItemInt(__pyx_v_pos, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 69; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1349
__Pyx_GOTREF(__pyx_t_3);
1350
__Pyx_DECREF(__pyx_v_source);
1351
__pyx_v_source = __pyx_t_3;
1354
/* "Cython/Compiler/Visitor.py":70
1357
* if source: # <<<<<<<<<<<<<<
1359
* source = os.path.basename(source.get_description())
1361
__pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_v_source); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 70; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1364
/* "Cython/Compiler/Visitor.py":71
1367
* import os.path # <<<<<<<<<<<<<<
1368
* source = os.path.basename(source.get_description())
1369
* values.append(u'%s:%s:%s' % (source, pos[1], pos[2]))
1371
__pyx_t_3 = __Pyx_Import(((PyObject *)__pyx_n_s_1), 0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 71; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1372
__Pyx_GOTREF(__pyx_t_3);
1373
__Pyx_DECREF(__pyx_v_os);
1374
__pyx_v_os = __pyx_t_3;
1377
/* "Cython/Compiler/Visitor.py":72
1380
* source = os.path.basename(source.get_description()) # <<<<<<<<<<<<<<
1381
* values.append(u'%s:%s:%s' % (source, pos[1], pos[2]))
1382
* attribute_names = dir(node)
1384
__pyx_t_3 = PyObject_GetAttr(__pyx_v_os, __pyx_n_s__path); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1385
__Pyx_GOTREF(__pyx_t_3);
1386
__pyx_t_2 = PyObject_GetAttr(__pyx_t_3, __pyx_n_s__basename); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1387
__Pyx_GOTREF(__pyx_t_2);
1388
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
1389
__pyx_t_3 = PyObject_GetAttr(__pyx_v_source, __pyx_n_s__get_description); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1390
__Pyx_GOTREF(__pyx_t_3);
1391
__pyx_t_1 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1392
__Pyx_GOTREF(__pyx_t_1);
1393
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
1394
__pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1395
__Pyx_GOTREF(((PyObject *)__pyx_t_3));
1396
PyTuple_SET_ITEM(__pyx_t_3, 0, __pyx_t_1);
1397
__Pyx_GIVEREF(__pyx_t_1);
1399
__pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 72; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1400
__Pyx_GOTREF(__pyx_t_1);
1401
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
1402
__Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0;
1403
__Pyx_DECREF(__pyx_v_source);
1404
__pyx_v_source = __pyx_t_1;
1410
/* "Cython/Compiler/Visitor.py":73
1412
* source = os.path.basename(source.get_description())
1413
* values.append(u'%s:%s:%s' % (source, pos[1], pos[2])) # <<<<<<<<<<<<<<
1414
* attribute_names = dir(node)
1415
* attribute_names.sort()
1417
if (unlikely(__pyx_v_values == Py_None)) {
1418
PyErr_SetString(PyExc_AttributeError, "'NoneType' object has no attribute 'append'"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1420
__pyx_t_1 = __Pyx_GetItemInt(__pyx_v_pos, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1421
__Pyx_GOTREF(__pyx_t_1);
1422
__pyx_t_3 = __Pyx_GetItemInt(__pyx_v_pos, 2, sizeof(long), PyInt_FromLong); if (!__pyx_t_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1423
__Pyx_GOTREF(__pyx_t_3);
1424
__pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1425
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
1426
__Pyx_INCREF(__pyx_v_source);
1427
PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_source);
1428
__Pyx_GIVEREF(__pyx_v_source);
1429
PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_1);
1430
__Pyx_GIVEREF(__pyx_t_1);
1431
PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_t_3);
1432
__Pyx_GIVEREF(__pyx_t_3);
1435
__pyx_t_3 = PyNumber_Remainder(((PyObject *)__pyx_kp_u_2), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1436
__Pyx_GOTREF(((PyObject *)__pyx_t_3));
1437
__Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0;
1438
__pyx_t_5 = PyList_Append(__pyx_v_values, ((PyObject *)__pyx_t_3)); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 73; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1439
__Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0;
1444
/* "Cython/Compiler/Visitor.py":74
1445
* source = os.path.basename(source.get_description())
1446
* values.append(u'%s:%s:%s' % (source, pos[1], pos[2]))
1447
* attribute_names = dir(node) # <<<<<<<<<<<<<<
1448
* attribute_names.sort()
1449
* for attr in attribute_names:
1451
__pyx_t_3 = __pyx_v_node;
1452
__Pyx_INCREF(__pyx_t_3);
1453
__pyx_t_2 = PyObject_Dir(__pyx_t_3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 74; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1454
__Pyx_GOTREF(__pyx_t_2);
1455
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
1456
__Pyx_DECREF(__pyx_v_attribute_names);
1457
__pyx_v_attribute_names = __pyx_t_2;
1460
/* "Cython/Compiler/Visitor.py":75
1461
* values.append(u'%s:%s:%s' % (source, pos[1], pos[2]))
1462
* attribute_names = dir(node)
1463
* attribute_names.sort() # <<<<<<<<<<<<<<
1464
* for attr in attribute_names:
1465
* if attr in ignored:
1467
__pyx_t_2 = PyObject_GetAttr(__pyx_v_attribute_names, __pyx_n_s__sort); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1468
__Pyx_GOTREF(__pyx_t_2);
1469
__pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 75; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1470
__Pyx_GOTREF(__pyx_t_3);
1471
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
1472
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
1474
/* "Cython/Compiler/Visitor.py":76
1475
* attribute_names = dir(node)
1476
* attribute_names.sort()
1477
* for attr in attribute_names: # <<<<<<<<<<<<<<
1478
* if attr in ignored:
1481
if (PyList_CheckExact(__pyx_v_attribute_names) || PyTuple_CheckExact(__pyx_v_attribute_names)) {
1482
__pyx_t_6 = 0; __pyx_t_3 = __pyx_v_attribute_names; __Pyx_INCREF(__pyx_t_3);
1484
__pyx_t_6 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_v_attribute_names); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1485
__Pyx_GOTREF(__pyx_t_3);
1488
if (likely(PyList_CheckExact(__pyx_t_3))) {
1489
if (__pyx_t_6 >= PyList_GET_SIZE(__pyx_t_3)) break;
1490
__pyx_t_2 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_6); __Pyx_INCREF(__pyx_t_2); __pyx_t_6++;
1491
} else if (likely(PyTuple_CheckExact(__pyx_t_3))) {
1492
if (__pyx_t_6 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
1493
__pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_6); __Pyx_INCREF(__pyx_t_2); __pyx_t_6++;
1495
__pyx_t_2 = PyIter_Next(__pyx_t_3);
1497
if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 76; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1500
__Pyx_GOTREF(__pyx_t_2);
1502
__Pyx_DECREF(__pyx_v_attr);
1503
__pyx_v_attr = __pyx_t_2;
1506
/* "Cython/Compiler/Visitor.py":77
1507
* attribute_names.sort()
1508
* for attr in attribute_names:
1509
* if attr in ignored: # <<<<<<<<<<<<<<
1511
* if attr.startswith(u'_') or attr.endswith(u'_'):
1513
__pyx_t_4 = ((PySequence_Contains(((PyObject *)__pyx_v_ignored), __pyx_v_attr))); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 77; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1516
/* "Cython/Compiler/Visitor.py":78
1517
* for attr in attribute_names:
1518
* if attr in ignored:
1519
* continue # <<<<<<<<<<<<<<
1520
* if attr.startswith(u'_') or attr.endswith(u'_'):
1523
goto __pyx_L8_continue;
1528
/* "Cython/Compiler/Visitor.py":79
1529
* if attr in ignored:
1531
* if attr.startswith(u'_') or attr.endswith(u'_'): # <<<<<<<<<<<<<<
1535
__pyx_t_2 = PyObject_GetAttr(__pyx_v_attr, __pyx_n_s__startswith); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1536
__Pyx_GOTREF(__pyx_t_2);
1537
__pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_k_tuple_3), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1538
__Pyx_GOTREF(__pyx_t_1);
1539
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
1540
__pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_1); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1541
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
1543
__pyx_t_1 = PyObject_GetAttr(__pyx_v_attr, __pyx_n_s__endswith); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1544
__Pyx_GOTREF(__pyx_t_1);
1545
__pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_k_tuple_4), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1546
__Pyx_GOTREF(__pyx_t_2);
1547
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
1548
__pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_2); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1549
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
1550
__pyx_t_8 = __pyx_t_7;
1552
__pyx_t_8 = __pyx_t_4;
1556
/* "Cython/Compiler/Visitor.py":80
1558
* if attr.startswith(u'_') or attr.endswith(u'_'):
1559
* continue # <<<<<<<<<<<<<<
1561
* value = getattr(node, attr)
1563
goto __pyx_L8_continue;
1568
/* "Cython/Compiler/Visitor.py":81
1569
* if attr.startswith(u'_') or attr.endswith(u'_'):
1571
* try: # <<<<<<<<<<<<<<
1572
* value = getattr(node, attr)
1573
* except AttributeError:
1576
PyObject *__pyx_save_exc_type, *__pyx_save_exc_value, *__pyx_save_exc_tb;
1577
__Pyx_ExceptionSave(&__pyx_save_exc_type, &__pyx_save_exc_value, &__pyx_save_exc_tb);
1578
__Pyx_XGOTREF(__pyx_save_exc_type);
1579
__Pyx_XGOTREF(__pyx_save_exc_value);
1580
__Pyx_XGOTREF(__pyx_save_exc_tb);
1583
/* "Cython/Compiler/Visitor.py":82
1586
* value = getattr(node, attr) # <<<<<<<<<<<<<<
1587
* except AttributeError:
1590
__pyx_t_2 = __pyx_v_node;
1591
__Pyx_INCREF(__pyx_t_2);
1592
__pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_v_attr); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 82; __pyx_clineno = __LINE__; goto __pyx_L12_error;}
1593
__Pyx_GOTREF(__pyx_t_1);
1594
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
1595
__Pyx_DECREF(__pyx_v_value);
1596
__pyx_v_value = __pyx_t_1;
1599
__Pyx_XDECREF(__pyx_save_exc_type); __pyx_save_exc_type = 0;
1600
__Pyx_XDECREF(__pyx_save_exc_value); __pyx_save_exc_value = 0;
1601
__Pyx_XDECREF(__pyx_save_exc_tb); __pyx_save_exc_tb = 0;
1602
goto __pyx_L19_try_end;
1604
__Pyx_XDECREF(__pyx_t_2); __pyx_t_2 = 0;
1605
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
1607
/* "Cython/Compiler/Visitor.py":83
1609
* value = getattr(node, attr)
1610
* except AttributeError: # <<<<<<<<<<<<<<
1612
* if value is None or value == 0:
1614
__pyx_t_5 = PyErr_ExceptionMatches(__pyx_builtin_AttributeError);
1616
__Pyx_AddTraceback("Cython.Compiler.Visitor.TreeVisitor.dump_node");
1617
if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_2, &__pyx_t_9) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L14_except_error;}
1618
__Pyx_GOTREF(__pyx_t_1);
1619
__Pyx_GOTREF(__pyx_t_2);
1620
__Pyx_GOTREF(__pyx_t_9);
1622
/* "Cython/Compiler/Visitor.py":84
1623
* value = getattr(node, attr)
1624
* except AttributeError:
1625
* continue # <<<<<<<<<<<<<<
1626
* if value is None or value == 0:
1629
goto __pyx_L21_except_continue;
1630
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
1631
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
1632
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
1633
goto __pyx_L13_exception_handled;
1634
__pyx_L21_except_continue:;
1635
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
1636
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
1637
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
1638
goto __pyx_L18_try_continue;
1640
__pyx_L14_except_error:;
1641
__Pyx_XGIVEREF(__pyx_save_exc_type);
1642
__Pyx_XGIVEREF(__pyx_save_exc_value);
1643
__Pyx_XGIVEREF(__pyx_save_exc_tb);
1644
__Pyx_ExceptionReset(__pyx_save_exc_type, __pyx_save_exc_value, __pyx_save_exc_tb);
1645
goto __pyx_L1_error;
1646
__pyx_L18_try_continue:;
1647
__Pyx_XGIVEREF(__pyx_save_exc_type);
1648
__Pyx_XGIVEREF(__pyx_save_exc_value);
1649
__Pyx_XGIVEREF(__pyx_save_exc_tb);
1650
__Pyx_ExceptionReset(__pyx_save_exc_type, __pyx_save_exc_value, __pyx_save_exc_tb);
1651
goto __pyx_L8_continue;
1652
__pyx_L13_exception_handled:;
1653
__Pyx_XGIVEREF(__pyx_save_exc_type);
1654
__Pyx_XGIVEREF(__pyx_save_exc_value);
1655
__Pyx_XGIVEREF(__pyx_save_exc_tb);
1656
__Pyx_ExceptionReset(__pyx_save_exc_type, __pyx_save_exc_value, __pyx_save_exc_tb);
1660
/* "Cython/Compiler/Visitor.py":85
1661
* except AttributeError:
1663
* if value is None or value == 0: # <<<<<<<<<<<<<<
1665
* elif isinstance(value, list):
1667
__pyx_t_8 = (__pyx_v_value == Py_None);
1669
__pyx_t_9 = PyObject_RichCompare(__pyx_v_value, __pyx_int_0, Py_EQ); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1670
__Pyx_GOTREF(__pyx_t_9);
1671
__pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_9); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 85; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1672
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
1673
__pyx_t_7 = __pyx_t_4;
1675
__pyx_t_7 = __pyx_t_8;
1679
/* "Cython/Compiler/Visitor.py":86
1681
* if value is None or value == 0:
1682
* continue # <<<<<<<<<<<<<<
1683
* elif isinstance(value, list):
1684
* value = u'[...]/%d' % len(value)
1686
goto __pyx_L8_continue;
1690
/* "Cython/Compiler/Visitor.py":87
1691
* if value is None or value == 0:
1693
* elif isinstance(value, list): # <<<<<<<<<<<<<<
1694
* value = u'[...]/%d' % len(value)
1695
* elif not isinstance(value, (str, unicode, long, int, float)):
1697
__pyx_t_9 = ((PyObject *)((PyObject*)(&PyList_Type)));
1698
__Pyx_INCREF(__pyx_t_9);
1699
__pyx_t_7 = __Pyx_TypeCheck(__pyx_v_value, __pyx_t_9);
1700
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
1703
/* "Cython/Compiler/Visitor.py":88
1705
* elif isinstance(value, list):
1706
* value = u'[...]/%d' % len(value) # <<<<<<<<<<<<<<
1707
* elif not isinstance(value, (str, unicode, long, int, float)):
1710
__pyx_t_10 = PyObject_Length(__pyx_v_value); if (unlikely(__pyx_t_10 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1711
__pyx_t_9 = PyInt_FromSsize_t(__pyx_t_10); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1712
__Pyx_GOTREF(__pyx_t_9);
1713
__pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_u_5), __pyx_t_9); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 88; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1714
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
1715
__Pyx_DECREF(__pyx_t_9); __pyx_t_9 = 0;
1716
__Pyx_DECREF(__pyx_v_value);
1717
__pyx_v_value = ((PyObject *)__pyx_t_2);
1722
/* "Cython/Compiler/Visitor.py":89
1723
* elif isinstance(value, list):
1724
* value = u'[...]/%d' % len(value)
1725
* elif not isinstance(value, (str, unicode, long, int, float)): # <<<<<<<<<<<<<<
1729
__Pyx_INCREF(__pyx_v_value);
1730
__pyx_t_2 = __pyx_v_value;
1731
__pyx_t_7 = PyString_Check(__pyx_t_2);
1733
__pyx_t_8 = PyUnicode_Check(__pyx_t_2);
1734
__pyx_t_4 = __pyx_t_8;
1736
__pyx_t_4 = __pyx_t_7;
1739
__pyx_t_7 = PyLong_Check(__pyx_t_2);
1740
__pyx_t_8 = __pyx_t_7;
1742
__pyx_t_8 = __pyx_t_4;
1745
__pyx_t_4 = PyInt_Check(__pyx_t_2);
1746
__pyx_t_7 = __pyx_t_4;
1748
__pyx_t_7 = __pyx_t_8;
1751
__pyx_t_8 = PyFloat_Check(__pyx_t_2);
1752
__pyx_t_4 = __pyx_t_8;
1754
__pyx_t_4 = __pyx_t_7;
1756
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
1757
__pyx_t_7 = (!__pyx_t_4);
1760
/* "Cython/Compiler/Visitor.py":90
1761
* value = u'[...]/%d' % len(value)
1762
* elif not isinstance(value, (str, unicode, long, int, float)):
1763
* continue # <<<<<<<<<<<<<<
1765
* value = repr(value)
1767
goto __pyx_L8_continue;
1772
/* "Cython/Compiler/Visitor.py":92
1775
* value = repr(value) # <<<<<<<<<<<<<<
1776
* values.append(u'%s = %s' % (attr, value))
1777
* return u'%s(%s)' % (node.__class__.__name__,
1779
__pyx_t_2 = PyObject_Repr(__pyx_v_value); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 92; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1780
__Pyx_GOTREF(__pyx_t_2);
1781
__Pyx_DECREF(__pyx_v_value);
1782
__pyx_v_value = __pyx_t_2;
1787
/* "Cython/Compiler/Visitor.py":93
1789
* value = repr(value)
1790
* values.append(u'%s = %s' % (attr, value)) # <<<<<<<<<<<<<<
1791
* return u'%s(%s)' % (node.__class__.__name__,
1792
* u',\n '.join(values))
1794
if (unlikely(__pyx_v_values == Py_None)) {
1795
PyErr_SetString(PyExc_AttributeError, "'NoneType' object has no attribute 'append'"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1797
__pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1798
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
1799
__Pyx_INCREF(__pyx_v_attr);
1800
PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_attr);
1801
__Pyx_GIVEREF(__pyx_v_attr);
1802
__Pyx_INCREF(__pyx_v_value);
1803
PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_value);
1804
__Pyx_GIVEREF(__pyx_v_value);
1805
__pyx_t_9 = PyNumber_Remainder(((PyObject *)__pyx_kp_u_6), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1806
__Pyx_GOTREF(((PyObject *)__pyx_t_9));
1807
__Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0;
1808
__pyx_t_5 = PyList_Append(__pyx_v_values, ((PyObject *)__pyx_t_9)); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 93; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1809
__Pyx_DECREF(((PyObject *)__pyx_t_9)); __pyx_t_9 = 0;
1812
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
1814
/* "Cython/Compiler/Visitor.py":94
1815
* value = repr(value)
1816
* values.append(u'%s = %s' % (attr, value))
1817
* return u'%s(%s)' % (node.__class__.__name__, # <<<<<<<<<<<<<<
1818
* u',\n '.join(values))
1821
__Pyx_XDECREF(__pyx_r);
1822
__pyx_t_3 = PyObject_GetAttr(__pyx_v_node, __pyx_n_s____class__); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1823
__Pyx_GOTREF(__pyx_t_3);
1824
__pyx_t_9 = PyObject_GetAttr(__pyx_t_3, __pyx_n_s____name__); if (unlikely(!__pyx_t_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1825
__Pyx_GOTREF(__pyx_t_9);
1826
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
1828
/* "Cython/Compiler/Visitor.py":95
1829
* values.append(u'%s = %s' % (attr, value))
1830
* return u'%s(%s)' % (node.__class__.__name__,
1831
* u',\n '.join(values)) # <<<<<<<<<<<<<<
1833
* def _find_node_path(self, stacktrace):
1835
__pyx_t_3 = ((PyObject *)PyUnicode_Join(__pyx_kp_u_8, ((PyObject *)__pyx_v_values))); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 95; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1836
__Pyx_GOTREF(__pyx_t_3);
1837
__pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1838
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
1839
PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_9);
1840
__Pyx_GIVEREF(__pyx_t_9);
1841
PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_3);
1842
__Pyx_GIVEREF(__pyx_t_3);
1845
__pyx_t_3 = PyNumber_Remainder(((PyObject *)__pyx_kp_u_7), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 94; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1846
__Pyx_GOTREF(((PyObject *)__pyx_t_3));
1847
__Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0;
1848
__pyx_r = ((PyObject *)__pyx_t_3);
1852
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
1855
__Pyx_XDECREF(__pyx_t_1);
1856
__Pyx_XDECREF(__pyx_t_2);
1857
__Pyx_XDECREF(__pyx_t_3);
1858
__Pyx_XDECREF(__pyx_t_9);
1859
__Pyx_AddTraceback("Cython.Compiler.Visitor.TreeVisitor.dump_node");
1862
__Pyx_DECREF(__pyx_v_ignored);
1863
__Pyx_DECREF(__pyx_v_values);
1864
__Pyx_DECREF(__pyx_v_pos);
1865
__Pyx_DECREF(__pyx_v_source);
1866
__Pyx_DECREF(__pyx_v_os);
1867
__Pyx_DECREF(__pyx_v_attribute_names);
1868
__Pyx_DECREF(__pyx_v_attr);
1869
__Pyx_DECREF(__pyx_v_value);
1870
__Pyx_XGIVEREF(__pyx_r);
1871
__Pyx_RefNannyFinishContext();
1875
/* "Cython/Compiler/Visitor.py":97
1876
* u',\n '.join(values))
1878
* def _find_node_path(self, stacktrace): # <<<<<<<<<<<<<<
1880
* last_traceback = stacktrace
1883
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_2_find_node_path(PyObject *__pyx_v_self, PyObject *__pyx_v_stacktrace); /*proto*/
1884
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_2_find_node_path(PyObject *__pyx_v_self, PyObject *__pyx_v_stacktrace) {
1885
PyObject *__pyx_v_os;
1886
PyObject *__pyx_v_last_traceback;
1887
PyObject *__pyx_v_nodes;
1888
PyObject *__pyx_v_frame;
1889
PyObject *__pyx_v_node;
1890
PyObject *__pyx_v_code;
1891
PyObject *__pyx_v_method_name;
1892
PyObject *__pyx_v_pos;
1893
PyObject *__pyx_r = NULL;
1894
PyObject *__pyx_t_1 = NULL;
1895
PyObject *__pyx_t_2 = NULL;
1897
PyObject *__pyx_t_4 = NULL;
1899
__Pyx_RefNannySetupContext("_find_node_path");
1900
__Pyx_INCREF(__pyx_v_stacktrace);
1901
__pyx_v_os = Py_None; __Pyx_INCREF(Py_None);
1902
__pyx_v_last_traceback = Py_None; __Pyx_INCREF(Py_None);
1903
__pyx_v_nodes = ((PyObject*)Py_None); __Pyx_INCREF(Py_None);
1904
__pyx_v_frame = Py_None; __Pyx_INCREF(Py_None);
1905
__pyx_v_node = Py_None; __Pyx_INCREF(Py_None);
1906
__pyx_v_code = Py_None; __Pyx_INCREF(Py_None);
1907
__pyx_v_method_name = Py_None; __Pyx_INCREF(Py_None);
1908
__pyx_v_pos = ((PyObject*)Py_None); __Pyx_INCREF(Py_None);
1910
/* "Cython/Compiler/Visitor.py":98
1912
* def _find_node_path(self, stacktrace):
1913
* import os.path # <<<<<<<<<<<<<<
1914
* last_traceback = stacktrace
1917
__pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s_1), 0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 98; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1918
__Pyx_GOTREF(__pyx_t_1);
1919
__Pyx_DECREF(__pyx_v_os);
1920
__pyx_v_os = __pyx_t_1;
1923
/* "Cython/Compiler/Visitor.py":99
1924
* def _find_node_path(self, stacktrace):
1926
* last_traceback = stacktrace # <<<<<<<<<<<<<<
1928
* while hasattr(stacktrace, 'tb_frame'):
1930
__Pyx_INCREF(__pyx_v_stacktrace);
1931
__Pyx_DECREF(__pyx_v_last_traceback);
1932
__pyx_v_last_traceback = __pyx_v_stacktrace;
1934
/* "Cython/Compiler/Visitor.py":100
1936
* last_traceback = stacktrace
1937
* nodes = [] # <<<<<<<<<<<<<<
1938
* while hasattr(stacktrace, 'tb_frame'):
1939
* frame = stacktrace.tb_frame
1941
__pyx_t_1 = PyList_New(0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 100; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1942
__Pyx_GOTREF(((PyObject *)__pyx_t_1));
1943
__Pyx_DECREF(((PyObject *)__pyx_v_nodes));
1944
__pyx_v_nodes = __pyx_t_1;
1947
/* "Cython/Compiler/Visitor.py":101
1948
* last_traceback = stacktrace
1950
* while hasattr(stacktrace, 'tb_frame'): # <<<<<<<<<<<<<<
1951
* frame = stacktrace.tb_frame
1952
* node = frame.f_locals.get(u'self')
1955
__pyx_t_1 = __pyx_v_stacktrace;
1956
__Pyx_INCREF(__pyx_t_1);
1957
__pyx_t_2 = ((PyObject *)__pyx_n_s__tb_frame);
1958
__Pyx_INCREF(__pyx_t_2);
1959
__pyx_t_3 = PyObject_HasAttr(__pyx_t_1, __pyx_t_2); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 101; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1960
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
1961
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
1962
if (!__pyx_t_3) break;
1964
/* "Cython/Compiler/Visitor.py":102
1966
* while hasattr(stacktrace, 'tb_frame'):
1967
* frame = stacktrace.tb_frame # <<<<<<<<<<<<<<
1968
* node = frame.f_locals.get(u'self')
1969
* if isinstance(node, Nodes.Node):
1971
__pyx_t_2 = PyObject_GetAttr(__pyx_v_stacktrace, __pyx_n_s__tb_frame); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 102; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1972
__Pyx_GOTREF(__pyx_t_2);
1973
__Pyx_DECREF(__pyx_v_frame);
1974
__pyx_v_frame = __pyx_t_2;
1977
/* "Cython/Compiler/Visitor.py":103
1978
* while hasattr(stacktrace, 'tb_frame'):
1979
* frame = stacktrace.tb_frame
1980
* node = frame.f_locals.get(u'self') # <<<<<<<<<<<<<<
1981
* if isinstance(node, Nodes.Node):
1982
* code = frame.f_code
1984
__pyx_t_2 = PyObject_GetAttr(__pyx_v_frame, __pyx_n_s__f_locals); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1985
__Pyx_GOTREF(__pyx_t_2);
1986
__pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__get); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1987
__Pyx_GOTREF(__pyx_t_1);
1988
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
1989
__pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_k_tuple_9), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
1990
__Pyx_GOTREF(__pyx_t_2);
1991
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
1992
__Pyx_DECREF(__pyx_v_node);
1993
__pyx_v_node = __pyx_t_2;
1996
/* "Cython/Compiler/Visitor.py":104
1997
* frame = stacktrace.tb_frame
1998
* node = frame.f_locals.get(u'self')
1999
* if isinstance(node, Nodes.Node): # <<<<<<<<<<<<<<
2000
* code = frame.f_code
2001
* method_name = code.co_name
2003
__pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Nodes); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 104; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2004
__Pyx_GOTREF(__pyx_t_2);
2005
__pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__Node); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 104; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2006
__Pyx_GOTREF(__pyx_t_1);
2007
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
2008
__pyx_t_3 = PyObject_IsInstance(__pyx_v_node, __pyx_t_1); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 104; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2009
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
2012
/* "Cython/Compiler/Visitor.py":105
2013
* node = frame.f_locals.get(u'self')
2014
* if isinstance(node, Nodes.Node):
2015
* code = frame.f_code # <<<<<<<<<<<<<<
2016
* method_name = code.co_name
2017
* pos = (os.path.basename(code.co_filename),
2019
__pyx_t_1 = PyObject_GetAttr(__pyx_v_frame, __pyx_n_s__f_code); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 105; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2020
__Pyx_GOTREF(__pyx_t_1);
2021
__Pyx_DECREF(__pyx_v_code);
2022
__pyx_v_code = __pyx_t_1;
2025
/* "Cython/Compiler/Visitor.py":106
2026
* if isinstance(node, Nodes.Node):
2027
* code = frame.f_code
2028
* method_name = code.co_name # <<<<<<<<<<<<<<
2029
* pos = (os.path.basename(code.co_filename),
2032
__pyx_t_1 = PyObject_GetAttr(__pyx_v_code, __pyx_n_s__co_name); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 106; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2033
__Pyx_GOTREF(__pyx_t_1);
2034
__Pyx_DECREF(__pyx_v_method_name);
2035
__pyx_v_method_name = __pyx_t_1;
2038
/* "Cython/Compiler/Visitor.py":107
2039
* code = frame.f_code
2040
* method_name = code.co_name
2041
* pos = (os.path.basename(code.co_filename), # <<<<<<<<<<<<<<
2043
* nodes.append((node, method_name, pos))
2045
__pyx_t_1 = PyObject_GetAttr(__pyx_v_os, __pyx_n_s__path); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2046
__Pyx_GOTREF(__pyx_t_1);
2047
__pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__basename); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2048
__Pyx_GOTREF(__pyx_t_2);
2049
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
2050
__pyx_t_1 = PyObject_GetAttr(__pyx_v_code, __pyx_n_s__co_filename); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2051
__Pyx_GOTREF(__pyx_t_1);
2052
__pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2053
__Pyx_GOTREF(((PyObject *)__pyx_t_4));
2054
PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_t_1);
2055
__Pyx_GIVEREF(__pyx_t_1);
2057
__pyx_t_1 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2058
__Pyx_GOTREF(__pyx_t_1);
2059
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
2060
__Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0;
2062
/* "Cython/Compiler/Visitor.py":108
2063
* method_name = code.co_name
2064
* pos = (os.path.basename(code.co_filename),
2065
* frame.f_lineno) # <<<<<<<<<<<<<<
2066
* nodes.append((node, method_name, pos))
2067
* last_traceback = stacktrace
2069
__pyx_t_4 = PyObject_GetAttr(__pyx_v_frame, __pyx_n_s__f_lineno); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 108; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2070
__Pyx_GOTREF(__pyx_t_4);
2071
__pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 107; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2072
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
2073
PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
2074
__Pyx_GIVEREF(__pyx_t_1);
2075
PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_4);
2076
__Pyx_GIVEREF(__pyx_t_4);
2079
__Pyx_DECREF(((PyObject *)__pyx_v_pos));
2080
__pyx_v_pos = __pyx_t_2;
2083
/* "Cython/Compiler/Visitor.py":109
2084
* pos = (os.path.basename(code.co_filename),
2086
* nodes.append((node, method_name, pos)) # <<<<<<<<<<<<<<
2087
* last_traceback = stacktrace
2088
* stacktrace = stacktrace.tb_next
2090
if (unlikely(__pyx_v_nodes == Py_None)) {
2091
PyErr_SetString(PyExc_AttributeError, "'NoneType' object has no attribute 'append'"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2093
__pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2094
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
2095
__Pyx_INCREF(__pyx_v_node);
2096
PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_node);
2097
__Pyx_GIVEREF(__pyx_v_node);
2098
__Pyx_INCREF(__pyx_v_method_name);
2099
PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_method_name);
2100
__Pyx_GIVEREF(__pyx_v_method_name);
2101
__Pyx_INCREF(((PyObject *)__pyx_v_pos));
2102
PyTuple_SET_ITEM(__pyx_t_2, 2, ((PyObject *)__pyx_v_pos));
2103
__Pyx_GIVEREF(((PyObject *)__pyx_v_pos));
2104
__pyx_t_5 = PyList_Append(__pyx_v_nodes, ((PyObject *)__pyx_t_2)); if (unlikely(__pyx_t_5 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 109; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2105
__Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0;
2107
/* "Cython/Compiler/Visitor.py":110
2109
* nodes.append((node, method_name, pos))
2110
* last_traceback = stacktrace # <<<<<<<<<<<<<<
2111
* stacktrace = stacktrace.tb_next
2112
* return (last_traceback, nodes)
2114
__Pyx_INCREF(__pyx_v_stacktrace);
2115
__Pyx_DECREF(__pyx_v_last_traceback);
2116
__pyx_v_last_traceback = __pyx_v_stacktrace;
2121
/* "Cython/Compiler/Visitor.py":111
2122
* nodes.append((node, method_name, pos))
2123
* last_traceback = stacktrace
2124
* stacktrace = stacktrace.tb_next # <<<<<<<<<<<<<<
2125
* return (last_traceback, nodes)
2128
__pyx_t_2 = PyObject_GetAttr(__pyx_v_stacktrace, __pyx_n_s__tb_next); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 111; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2129
__Pyx_GOTREF(__pyx_t_2);
2130
__Pyx_DECREF(__pyx_v_stacktrace);
2131
__pyx_v_stacktrace = __pyx_t_2;
2135
/* "Cython/Compiler/Visitor.py":112
2136
* last_traceback = stacktrace
2137
* stacktrace = stacktrace.tb_next
2138
* return (last_traceback, nodes) # <<<<<<<<<<<<<<
2140
* def _raise_compiler_error(self, child, e):
2142
__Pyx_XDECREF(__pyx_r);
2143
__pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 112; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2144
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
2145
__Pyx_INCREF(__pyx_v_last_traceback);
2146
PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_last_traceback);
2147
__Pyx_GIVEREF(__pyx_v_last_traceback);
2148
__Pyx_INCREF(((PyObject *)__pyx_v_nodes));
2149
PyTuple_SET_ITEM(__pyx_t_2, 1, ((PyObject *)__pyx_v_nodes));
2150
__Pyx_GIVEREF(((PyObject *)__pyx_v_nodes));
2151
__pyx_r = ((PyObject *)__pyx_t_2);
2155
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
2158
__Pyx_XDECREF(__pyx_t_1);
2159
__Pyx_XDECREF(__pyx_t_2);
2160
__Pyx_XDECREF(__pyx_t_4);
2161
__Pyx_AddTraceback("Cython.Compiler.Visitor.TreeVisitor._find_node_path");
2164
__Pyx_DECREF(__pyx_v_os);
2165
__Pyx_DECREF(__pyx_v_last_traceback);
2166
__Pyx_DECREF(__pyx_v_nodes);
2167
__Pyx_DECREF(__pyx_v_frame);
2168
__Pyx_DECREF(__pyx_v_node);
2169
__Pyx_DECREF(__pyx_v_code);
2170
__Pyx_DECREF(__pyx_v_method_name);
2171
__Pyx_DECREF(__pyx_v_pos);
2172
__Pyx_DECREF(__pyx_v_stacktrace);
2173
__Pyx_XGIVEREF(__pyx_r);
2174
__Pyx_RefNannyFinishContext();
2178
/* "Cython/Compiler/Visitor.py":114
2179
* return (last_traceback, nodes)
2181
* def _raise_compiler_error(self, child, e): # <<<<<<<<<<<<<<
2186
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_3_raise_compiler_error(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
2187
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_3_raise_compiler_error(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
2188
PyObject *__pyx_v_child = 0;
2189
PyObject *__pyx_v_e = 0;
2190
PyObject *__pyx_v_sys;
2191
PyObject *__pyx_v_trace;
2192
PyObject *__pyx_v_parent;
2193
PyObject *__pyx_v_attribute;
2194
PyObject *__pyx_v_index;
2195
PyObject *__pyx_v_node;
2196
PyObject *__pyx_v_stacktrace;
2197
PyObject *__pyx_v_called_nodes;
2198
PyObject *__pyx_v_last_node;
2199
PyObject *__pyx_v_method_name;
2200
PyObject *__pyx_v_pos;
2201
PyObject *__pyx_r = NULL;
2202
PyObject *__pyx_t_1 = NULL;
2203
Py_ssize_t __pyx_t_2;
2204
PyObject *__pyx_t_3 = NULL;
2205
PyObject *__pyx_t_4 = NULL;
2206
PyObject *__pyx_t_5 = NULL;
2207
PyObject *__pyx_t_6 = NULL;
2208
PyObject *__pyx_t_7 = NULL;
2211
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__child,&__pyx_n_s__e,0};
2212
__Pyx_RefNannySetupContext("_raise_compiler_error");
2213
if (unlikely(__pyx_kwds)) {
2214
Py_ssize_t kw_args = PyDict_Size(__pyx_kwds);
2215
PyObject* values[2] = {0,0};
2216
switch (PyTuple_GET_SIZE(__pyx_args)) {
2217
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
2218
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
2220
default: goto __pyx_L5_argtuple_error;
2222
switch (PyTuple_GET_SIZE(__pyx_args)) {
2224
values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__child);
2225
if (likely(values[0])) kw_args--;
2226
else goto __pyx_L5_argtuple_error;
2228
values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__e);
2229
if (likely(values[1])) kw_args--;
2231
__Pyx_RaiseArgtupleInvalid("_raise_compiler_error", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 114; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
2234
if (unlikely(kw_args > 0)) {
2235
if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "_raise_compiler_error") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 114; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
2237
__pyx_v_child = values[0];
2238
__pyx_v_e = values[1];
2239
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
2240
goto __pyx_L5_argtuple_error;
2242
__pyx_v_child = PyTuple_GET_ITEM(__pyx_args, 0);
2243
__pyx_v_e = PyTuple_GET_ITEM(__pyx_args, 1);
2245
goto __pyx_L4_argument_unpacking_done;
2246
__pyx_L5_argtuple_error:;
2247
__Pyx_RaiseArgtupleInvalid("_raise_compiler_error", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 114; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
2249
__Pyx_AddTraceback("Cython.Compiler.Visitor.TreeVisitor._raise_compiler_error");
2250
__Pyx_RefNannyFinishContext();
2252
__pyx_L4_argument_unpacking_done:;
2253
__pyx_v_sys = Py_None; __Pyx_INCREF(Py_None);
2254
__pyx_v_trace = ((PyObject*)Py_None); __Pyx_INCREF(Py_None);
2255
__pyx_v_parent = Py_None; __Pyx_INCREF(Py_None);
2256
__pyx_v_attribute = Py_None; __Pyx_INCREF(Py_None);
2257
__pyx_v_index = Py_None; __Pyx_INCREF(Py_None);
2258
__pyx_v_node = Py_None; __Pyx_INCREF(Py_None);
2259
__pyx_v_stacktrace = Py_None; __Pyx_INCREF(Py_None);
2260
__pyx_v_called_nodes = Py_None; __Pyx_INCREF(Py_None);
2261
__pyx_v_last_node = Py_None; __Pyx_INCREF(Py_None);
2262
__pyx_v_method_name = Py_None; __Pyx_INCREF(Py_None);
2263
__pyx_v_pos = Py_None; __Pyx_INCREF(Py_None);
2265
/* "Cython/Compiler/Visitor.py":115
2267
* def _raise_compiler_error(self, child, e):
2268
* import sys # <<<<<<<<<<<<<<
2270
* for parent, attribute, index in self.access_path:
2272
__pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__sys), 0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 115; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2273
__Pyx_GOTREF(__pyx_t_1);
2274
__Pyx_DECREF(__pyx_v_sys);
2275
__pyx_v_sys = __pyx_t_1;
2278
/* "Cython/Compiler/Visitor.py":116
2279
* def _raise_compiler_error(self, child, e):
2281
* trace = [''] # <<<<<<<<<<<<<<
2282
* for parent, attribute, index in self.access_path:
2283
* node = getattr(parent, attribute)
2285
__pyx_t_1 = PyList_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 116; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2286
__Pyx_GOTREF(((PyObject *)__pyx_t_1));
2287
__Pyx_INCREF(((PyObject *)__pyx_kp_s_10));
2288
PyList_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_kp_s_10));
2289
__Pyx_GIVEREF(((PyObject *)__pyx_kp_s_10));
2290
__Pyx_DECREF(((PyObject *)__pyx_v_trace));
2291
__pyx_v_trace = __pyx_t_1;
2294
/* "Cython/Compiler/Visitor.py":117
2297
* for parent, attribute, index in self.access_path: # <<<<<<<<<<<<<<
2298
* node = getattr(parent, attribute)
2301
if (unlikely(((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self)->access_path == Py_None)) {
2302
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2304
__pyx_t_2 = 0; __pyx_t_1 = ((PyObject *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self)->access_path); __Pyx_INCREF(__pyx_t_1);
2306
if (__pyx_t_2 >= PyList_GET_SIZE(__pyx_t_1)) break;
2307
__pyx_t_3 = PyList_GET_ITEM(__pyx_t_1, __pyx_t_2); __Pyx_INCREF(__pyx_t_3); __pyx_t_2++;
2308
if (PyTuple_CheckExact(__pyx_t_3) && likely(PyTuple_GET_SIZE(__pyx_t_3) == 3)) {
2309
PyObject* tuple = __pyx_t_3;
2310
__pyx_t_4 = PyTuple_GET_ITEM(tuple, 0); __Pyx_INCREF(__pyx_t_4);
2311
__pyx_t_5 = PyTuple_GET_ITEM(tuple, 1); __Pyx_INCREF(__pyx_t_5);
2312
__pyx_t_6 = PyTuple_GET_ITEM(tuple, 2); __Pyx_INCREF(__pyx_t_6);
2313
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
2314
__Pyx_DECREF(__pyx_v_parent);
2315
__pyx_v_parent = __pyx_t_4;
2317
__Pyx_DECREF(__pyx_v_attribute);
2318
__pyx_v_attribute = __pyx_t_5;
2320
__Pyx_DECREF(__pyx_v_index);
2321
__pyx_v_index = __pyx_t_6;
2324
__pyx_t_7 = PyObject_GetIter(__pyx_t_3); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2325
__Pyx_GOTREF(__pyx_t_7);
2326
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
2327
__pyx_t_4 = __Pyx_UnpackItem(__pyx_t_7, 0); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2328
__Pyx_GOTREF(__pyx_t_4);
2329
__pyx_t_5 = __Pyx_UnpackItem(__pyx_t_7, 1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2330
__Pyx_GOTREF(__pyx_t_5);
2331
__pyx_t_6 = __Pyx_UnpackItem(__pyx_t_7, 2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2332
__Pyx_GOTREF(__pyx_t_6);
2333
if (__Pyx_EndUnpack(__pyx_t_7, 3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 117; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2334
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
2335
__Pyx_DECREF(__pyx_v_parent);
2336
__pyx_v_parent = __pyx_t_4;
2338
__Pyx_DECREF(__pyx_v_attribute);
2339
__pyx_v_attribute = __pyx_t_5;
2341
__Pyx_DECREF(__pyx_v_index);
2342
__pyx_v_index = __pyx_t_6;
2346
/* "Cython/Compiler/Visitor.py":118
2348
* for parent, attribute, index in self.access_path:
2349
* node = getattr(parent, attribute) # <<<<<<<<<<<<<<
2353
__pyx_t_3 = PyObject_GetAttr(__pyx_v_parent, __pyx_v_attribute); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 118; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2354
__Pyx_GOTREF(__pyx_t_3);
2355
__Pyx_DECREF(__pyx_v_node);
2356
__pyx_v_node = __pyx_t_3;
2359
/* "Cython/Compiler/Visitor.py":119
2360
* for parent, attribute, index in self.access_path:
2361
* node = getattr(parent, attribute)
2362
* if index is None: # <<<<<<<<<<<<<<
2366
__pyx_t_8 = (__pyx_v_index == Py_None);
2369
/* "Cython/Compiler/Visitor.py":120
2370
* node = getattr(parent, attribute)
2372
* index = '' # <<<<<<<<<<<<<<
2374
* node = node[index]
2376
__Pyx_INCREF(((PyObject *)__pyx_kp_s_10));
2377
__Pyx_DECREF(__pyx_v_index);
2378
__pyx_v_index = ((PyObject *)__pyx_kp_s_10);
2383
/* "Cython/Compiler/Visitor.py":122
2386
* node = node[index] # <<<<<<<<<<<<<<
2387
* index = u'[%d]' % index
2388
* trace.append(u'%s.%s%s = %s' % (
2390
__pyx_t_3 = PyObject_GetItem(__pyx_v_node, __pyx_v_index); if (!__pyx_t_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 122; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2391
__Pyx_GOTREF(__pyx_t_3);
2392
__Pyx_DECREF(__pyx_v_node);
2393
__pyx_v_node = __pyx_t_3;
2396
/* "Cython/Compiler/Visitor.py":123
2398
* node = node[index]
2399
* index = u'[%d]' % index # <<<<<<<<<<<<<<
2400
* trace.append(u'%s.%s%s = %s' % (
2401
* parent.__class__.__name__, attribute, index,
2403
__pyx_t_3 = PyNumber_Remainder(((PyObject *)__pyx_kp_u_11), __pyx_v_index); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 123; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2404
__Pyx_GOTREF(((PyObject *)__pyx_t_3));
2405
__Pyx_DECREF(__pyx_v_index);
2406
__pyx_v_index = ((PyObject *)__pyx_t_3);
2411
/* "Cython/Compiler/Visitor.py":124
2412
* node = node[index]
2413
* index = u'[%d]' % index
2414
* trace.append(u'%s.%s%s = %s' % ( # <<<<<<<<<<<<<<
2415
* parent.__class__.__name__, attribute, index,
2416
* self.dump_node(node)))
2418
if (unlikely(__pyx_v_trace == Py_None)) {
2419
PyErr_SetString(PyExc_AttributeError, "'NoneType' object has no attribute 'append'"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 124; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2422
/* "Cython/Compiler/Visitor.py":125
2423
* index = u'[%d]' % index
2424
* trace.append(u'%s.%s%s = %s' % (
2425
* parent.__class__.__name__, attribute, index, # <<<<<<<<<<<<<<
2426
* self.dump_node(node)))
2427
* stacktrace, called_nodes = self._find_node_path(sys.exc_info()[2])
2429
__pyx_t_3 = PyObject_GetAttr(__pyx_v_parent, __pyx_n_s____class__); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2430
__Pyx_GOTREF(__pyx_t_3);
2431
__pyx_t_6 = PyObject_GetAttr(__pyx_t_3, __pyx_n_s____name__); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2432
__Pyx_GOTREF(__pyx_t_6);
2433
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
2435
/* "Cython/Compiler/Visitor.py":126
2436
* trace.append(u'%s.%s%s = %s' % (
2437
* parent.__class__.__name__, attribute, index,
2438
* self.dump_node(node))) # <<<<<<<<<<<<<<
2439
* stacktrace, called_nodes = self._find_node_path(sys.exc_info()[2])
2442
__pyx_t_3 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__dump_node); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2443
__Pyx_GOTREF(__pyx_t_3);
2444
__pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2445
__Pyx_GOTREF(((PyObject *)__pyx_t_5));
2446
__Pyx_INCREF(__pyx_v_node);
2447
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_node);
2448
__Pyx_GIVEREF(__pyx_v_node);
2449
__pyx_t_4 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 126; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2450
__Pyx_GOTREF(__pyx_t_4);
2451
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
2452
__Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0;
2453
__pyx_t_5 = PyTuple_New(4); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 125; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2454
__Pyx_GOTREF(((PyObject *)__pyx_t_5));
2455
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6);
2456
__Pyx_GIVEREF(__pyx_t_6);
2457
__Pyx_INCREF(__pyx_v_attribute);
2458
PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_attribute);
2459
__Pyx_GIVEREF(__pyx_v_attribute);
2460
__Pyx_INCREF(__pyx_v_index);
2461
PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_index);
2462
__Pyx_GIVEREF(__pyx_v_index);
2463
PyTuple_SET_ITEM(__pyx_t_5, 3, __pyx_t_4);
2464
__Pyx_GIVEREF(__pyx_t_4);
2467
__pyx_t_4 = PyNumber_Remainder(((PyObject *)__pyx_kp_u_12), ((PyObject *)__pyx_t_5)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 124; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2468
__Pyx_GOTREF(((PyObject *)__pyx_t_4));
2469
__Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0;
2470
__pyx_t_9 = PyList_Append(__pyx_v_trace, ((PyObject *)__pyx_t_4)); if (unlikely(__pyx_t_9 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 124; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2471
__Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0;
2473
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
2475
/* "Cython/Compiler/Visitor.py":127
2476
* parent.__class__.__name__, attribute, index,
2477
* self.dump_node(node)))
2478
* stacktrace, called_nodes = self._find_node_path(sys.exc_info()[2]) # <<<<<<<<<<<<<<
2480
* for node, method_name, pos in called_nodes:
2482
__pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s___find_node_path); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2483
__Pyx_GOTREF(__pyx_t_1);
2484
__pyx_t_4 = PyObject_GetAttr(__pyx_v_sys, __pyx_n_s__exc_info); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2485
__Pyx_GOTREF(__pyx_t_4);
2486
__pyx_t_5 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2487
__Pyx_GOTREF(__pyx_t_5);
2488
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
2489
__pyx_t_4 = __Pyx_GetItemInt(__pyx_t_5, 2, sizeof(long), PyInt_FromLong); if (!__pyx_t_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2490
__Pyx_GOTREF(__pyx_t_4);
2491
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
2492
__pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2493
__Pyx_GOTREF(((PyObject *)__pyx_t_5));
2494
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_4);
2495
__Pyx_GIVEREF(__pyx_t_4);
2497
__pyx_t_4 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2498
__Pyx_GOTREF(__pyx_t_4);
2499
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
2500
__Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0;
2501
if (PyTuple_CheckExact(__pyx_t_4) && likely(PyTuple_GET_SIZE(__pyx_t_4) == 2)) {
2502
PyObject* tuple = __pyx_t_4;
2503
__pyx_t_5 = PyTuple_GET_ITEM(tuple, 0); __Pyx_INCREF(__pyx_t_5);
2504
__pyx_t_1 = PyTuple_GET_ITEM(tuple, 1); __Pyx_INCREF(__pyx_t_1);
2505
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
2506
__Pyx_DECREF(__pyx_v_stacktrace);
2507
__pyx_v_stacktrace = __pyx_t_5;
2509
__Pyx_DECREF(__pyx_v_called_nodes);
2510
__pyx_v_called_nodes = __pyx_t_1;
2513
__pyx_t_6 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2514
__Pyx_GOTREF(__pyx_t_6);
2515
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
2516
__pyx_t_5 = __Pyx_UnpackItem(__pyx_t_6, 0); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2517
__Pyx_GOTREF(__pyx_t_5);
2518
__pyx_t_1 = __Pyx_UnpackItem(__pyx_t_6, 1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2519
__Pyx_GOTREF(__pyx_t_1);
2520
if (__Pyx_EndUnpack(__pyx_t_6, 2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 127; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2521
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
2522
__Pyx_DECREF(__pyx_v_stacktrace);
2523
__pyx_v_stacktrace = __pyx_t_5;
2525
__Pyx_DECREF(__pyx_v_called_nodes);
2526
__pyx_v_called_nodes = __pyx_t_1;
2530
/* "Cython/Compiler/Visitor.py":128
2531
* self.dump_node(node)))
2532
* stacktrace, called_nodes = self._find_node_path(sys.exc_info()[2])
2533
* last_node = child # <<<<<<<<<<<<<<
2534
* for node, method_name, pos in called_nodes:
2537
__Pyx_INCREF(__pyx_v_child);
2538
__Pyx_DECREF(__pyx_v_last_node);
2539
__pyx_v_last_node = __pyx_v_child;
2541
/* "Cython/Compiler/Visitor.py":129
2542
* stacktrace, called_nodes = self._find_node_path(sys.exc_info()[2])
2544
* for node, method_name, pos in called_nodes: # <<<<<<<<<<<<<<
2546
* trace.append(u"File '%s', line %d, in %s: %s" % (
2548
if (PyList_CheckExact(__pyx_v_called_nodes) || PyTuple_CheckExact(__pyx_v_called_nodes)) {
2549
__pyx_t_2 = 0; __pyx_t_4 = __pyx_v_called_nodes; __Pyx_INCREF(__pyx_t_4);
2551
__pyx_t_2 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_v_called_nodes); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2552
__Pyx_GOTREF(__pyx_t_4);
2555
if (likely(PyList_CheckExact(__pyx_t_4))) {
2556
if (__pyx_t_2 >= PyList_GET_SIZE(__pyx_t_4)) break;
2557
__pyx_t_1 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_2); __Pyx_INCREF(__pyx_t_1); __pyx_t_2++;
2558
} else if (likely(PyTuple_CheckExact(__pyx_t_4))) {
2559
if (__pyx_t_2 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
2560
__pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_2); __Pyx_INCREF(__pyx_t_1); __pyx_t_2++;
2562
__pyx_t_1 = PyIter_Next(__pyx_t_4);
2564
if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2567
__Pyx_GOTREF(__pyx_t_1);
2569
if (PyTuple_CheckExact(__pyx_t_1) && likely(PyTuple_GET_SIZE(__pyx_t_1) == 3)) {
2570
PyObject* tuple = __pyx_t_1;
2571
__pyx_t_5 = PyTuple_GET_ITEM(tuple, 0); __Pyx_INCREF(__pyx_t_5);
2572
__pyx_t_6 = PyTuple_GET_ITEM(tuple, 1); __Pyx_INCREF(__pyx_t_6);
2573
__pyx_t_3 = PyTuple_GET_ITEM(tuple, 2); __Pyx_INCREF(__pyx_t_3);
2574
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
2575
__Pyx_DECREF(__pyx_v_node);
2576
__pyx_v_node = __pyx_t_5;
2578
__Pyx_DECREF(__pyx_v_method_name);
2579
__pyx_v_method_name = __pyx_t_6;
2581
__Pyx_DECREF(__pyx_v_pos);
2582
__pyx_v_pos = __pyx_t_3;
2585
__pyx_t_7 = PyObject_GetIter(__pyx_t_1); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2586
__Pyx_GOTREF(__pyx_t_7);
2587
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
2588
__pyx_t_5 = __Pyx_UnpackItem(__pyx_t_7, 0); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2589
__Pyx_GOTREF(__pyx_t_5);
2590
__pyx_t_6 = __Pyx_UnpackItem(__pyx_t_7, 1); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2591
__Pyx_GOTREF(__pyx_t_6);
2592
__pyx_t_3 = __Pyx_UnpackItem(__pyx_t_7, 2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2593
__Pyx_GOTREF(__pyx_t_3);
2594
if (__Pyx_EndUnpack(__pyx_t_7, 3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 129; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2595
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
2596
__Pyx_DECREF(__pyx_v_node);
2597
__pyx_v_node = __pyx_t_5;
2599
__Pyx_DECREF(__pyx_v_method_name);
2600
__pyx_v_method_name = __pyx_t_6;
2602
__Pyx_DECREF(__pyx_v_pos);
2603
__pyx_v_pos = __pyx_t_3;
2607
/* "Cython/Compiler/Visitor.py":130
2609
* for node, method_name, pos in called_nodes:
2610
* last_node = node # <<<<<<<<<<<<<<
2611
* trace.append(u"File '%s', line %d, in %s: %s" % (
2612
* pos[0], pos[1], method_name, self.dump_node(node)))
2614
__Pyx_INCREF(__pyx_v_node);
2615
__Pyx_DECREF(__pyx_v_last_node);
2616
__pyx_v_last_node = __pyx_v_node;
2618
/* "Cython/Compiler/Visitor.py":131
2619
* for node, method_name, pos in called_nodes:
2621
* trace.append(u"File '%s', line %d, in %s: %s" % ( # <<<<<<<<<<<<<<
2622
* pos[0], pos[1], method_name, self.dump_node(node)))
2623
* raise Errors.CompilerCrash(
2625
if (unlikely(__pyx_v_trace == Py_None)) {
2626
PyErr_SetString(PyExc_AttributeError, "'NoneType' object has no attribute 'append'"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2629
/* "Cython/Compiler/Visitor.py":132
2631
* trace.append(u"File '%s', line %d, in %s: %s" % (
2632
* pos[0], pos[1], method_name, self.dump_node(node))) # <<<<<<<<<<<<<<
2633
* raise Errors.CompilerCrash(
2634
* last_node.pos, self.__class__.__name__,
2636
__pyx_t_1 = __Pyx_GetItemInt(__pyx_v_pos, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2637
__Pyx_GOTREF(__pyx_t_1);
2638
__pyx_t_3 = __Pyx_GetItemInt(__pyx_v_pos, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2639
__Pyx_GOTREF(__pyx_t_3);
2640
__pyx_t_6 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__dump_node); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2641
__Pyx_GOTREF(__pyx_t_6);
2642
__pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2643
__Pyx_GOTREF(((PyObject *)__pyx_t_5));
2644
__Pyx_INCREF(__pyx_v_node);
2645
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_node);
2646
__Pyx_GIVEREF(__pyx_v_node);
2647
__pyx_t_7 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2648
__Pyx_GOTREF(__pyx_t_7);
2649
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
2650
__Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0;
2651
__pyx_t_5 = PyTuple_New(4); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 132; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2652
__Pyx_GOTREF(((PyObject *)__pyx_t_5));
2653
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_1);
2654
__Pyx_GIVEREF(__pyx_t_1);
2655
PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_t_3);
2656
__Pyx_GIVEREF(__pyx_t_3);
2657
__Pyx_INCREF(__pyx_v_method_name);
2658
PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_v_method_name);
2659
__Pyx_GIVEREF(__pyx_v_method_name);
2660
PyTuple_SET_ITEM(__pyx_t_5, 3, __pyx_t_7);
2661
__Pyx_GIVEREF(__pyx_t_7);
2665
__pyx_t_7 = PyNumber_Remainder(((PyObject *)__pyx_kp_u_13), ((PyObject *)__pyx_t_5)); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2666
__Pyx_GOTREF(((PyObject *)__pyx_t_7));
2667
__Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0;
2668
__pyx_t_9 = PyList_Append(__pyx_v_trace, ((PyObject *)__pyx_t_7)); if (unlikely(__pyx_t_9 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 131; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2669
__Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0;
2671
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
2673
/* "Cython/Compiler/Visitor.py":133
2674
* trace.append(u"File '%s', line %d, in %s: %s" % (
2675
* pos[0], pos[1], method_name, self.dump_node(node)))
2676
* raise Errors.CompilerCrash( # <<<<<<<<<<<<<<
2677
* last_node.pos, self.__class__.__name__,
2678
* u'\n'.join(trace), e, stacktrace)
2680
__pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Errors); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 133; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2681
__Pyx_GOTREF(__pyx_t_4);
2682
__pyx_t_7 = PyObject_GetAttr(__pyx_t_4, __pyx_n_s__CompilerCrash); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 133; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2683
__Pyx_GOTREF(__pyx_t_7);
2684
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
2686
/* "Cython/Compiler/Visitor.py":134
2687
* pos[0], pos[1], method_name, self.dump_node(node)))
2688
* raise Errors.CompilerCrash(
2689
* last_node.pos, self.__class__.__name__, # <<<<<<<<<<<<<<
2690
* u'\n'.join(trace), e, stacktrace)
2693
__pyx_t_4 = PyObject_GetAttr(__pyx_v_last_node, __pyx_n_s__pos); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 134; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2694
__Pyx_GOTREF(__pyx_t_4);
2695
__pyx_t_5 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s____class__); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 134; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2696
__Pyx_GOTREF(__pyx_t_5);
2697
__pyx_t_3 = PyObject_GetAttr(__pyx_t_5, __pyx_n_s____name__); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 134; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2698
__Pyx_GOTREF(__pyx_t_3);
2699
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
2701
/* "Cython/Compiler/Visitor.py":135
2702
* raise Errors.CompilerCrash(
2703
* last_node.pos, self.__class__.__name__,
2704
* u'\n'.join(trace), e, stacktrace) # <<<<<<<<<<<<<<
2706
* def find_handler(self, obj):
2708
__pyx_t_5 = ((PyObject *)PyUnicode_Join(__pyx_kp_u_14, ((PyObject *)__pyx_v_trace))); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 135; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2709
__Pyx_GOTREF(__pyx_t_5);
2710
__pyx_t_1 = PyTuple_New(5); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 133; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2711
__Pyx_GOTREF(((PyObject *)__pyx_t_1));
2712
PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_t_4);
2713
__Pyx_GIVEREF(__pyx_t_4);
2714
PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_t_3);
2715
__Pyx_GIVEREF(__pyx_t_3);
2716
PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_t_5);
2717
__Pyx_GIVEREF(__pyx_t_5);
2718
__Pyx_INCREF(__pyx_v_e);
2719
PyTuple_SET_ITEM(__pyx_t_1, 3, __pyx_v_e);
2720
__Pyx_GIVEREF(__pyx_v_e);
2721
__Pyx_INCREF(__pyx_v_stacktrace);
2722
PyTuple_SET_ITEM(__pyx_t_1, 4, __pyx_v_stacktrace);
2723
__Pyx_GIVEREF(__pyx_v_stacktrace);
2727
__pyx_t_5 = PyObject_Call(__pyx_t_7, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 133; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2728
__Pyx_GOTREF(__pyx_t_5);
2729
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
2730
__Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0;
2731
__Pyx_Raise(__pyx_t_5, 0, 0);
2732
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
2733
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 133; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2735
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
2738
__Pyx_XDECREF(__pyx_t_1);
2739
__Pyx_XDECREF(__pyx_t_3);
2740
__Pyx_XDECREF(__pyx_t_4);
2741
__Pyx_XDECREF(__pyx_t_5);
2742
__Pyx_XDECREF(__pyx_t_6);
2743
__Pyx_XDECREF(__pyx_t_7);
2744
__Pyx_AddTraceback("Cython.Compiler.Visitor.TreeVisitor._raise_compiler_error");
2747
__Pyx_DECREF(__pyx_v_sys);
2748
__Pyx_DECREF(__pyx_v_trace);
2749
__Pyx_DECREF(__pyx_v_parent);
2750
__Pyx_DECREF(__pyx_v_attribute);
2751
__Pyx_DECREF(__pyx_v_index);
2752
__Pyx_DECREF(__pyx_v_node);
2753
__Pyx_DECREF(__pyx_v_stacktrace);
2754
__Pyx_DECREF(__pyx_v_called_nodes);
2755
__Pyx_DECREF(__pyx_v_last_node);
2756
__Pyx_DECREF(__pyx_v_method_name);
2757
__Pyx_DECREF(__pyx_v_pos);
2758
__Pyx_XGIVEREF(__pyx_r);
2759
__Pyx_RefNannyFinishContext();
2763
/* "Cython/Compiler/Visitor.py":137
2764
* u'\n'.join(trace), e, stacktrace)
2766
* def find_handler(self, obj): # <<<<<<<<<<<<<<
2767
* # to resolve, try entire hierarchy
2771
static PyObject *__pyx_f_6Cython_8Compiler_7Visitor_11TreeVisitor_find_handler(struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *__pyx_v_self, PyObject *__pyx_v_obj) {
2772
PyObject *__pyx_v_cls;
2773
PyObject *__pyx_v_pattern;
2774
PyObject *__pyx_v_mro;
2775
PyObject *__pyx_v_handler_method;
2776
PyObject *__pyx_v_mro_cls;
2777
PyObject *__pyx_r = NULL;
2778
PyObject *__pyx_t_1 = NULL;
2779
PyObject *__pyx_t_2 = NULL;
2780
PyObject *__pyx_t_3 = NULL;
2781
Py_ssize_t __pyx_t_4;
2782
PyObject *__pyx_t_5 = NULL;
2783
PyObject *__pyx_t_6 = NULL;
2785
__Pyx_RefNannySetupContext("find_handler");
2786
__pyx_v_cls = ((PyObject*)Py_None); __Pyx_INCREF(Py_None);
2787
__pyx_v_pattern = ((PyObject*)Py_None); __Pyx_INCREF(Py_None);
2788
__pyx_v_mro = Py_None; __Pyx_INCREF(Py_None);
2789
__pyx_v_handler_method = Py_None; __Pyx_INCREF(Py_None);
2790
__pyx_v_mro_cls = Py_None; __Pyx_INCREF(Py_None);
2792
/* "Cython/Compiler/Visitor.py":139
2793
* def find_handler(self, obj):
2794
* # to resolve, try entire hierarchy
2795
* cls = type(obj) # <<<<<<<<<<<<<<
2796
* pattern = "visit_%s"
2797
* mro = inspect.getmro(cls)
2799
__Pyx_INCREF(((PyObject *)Py_TYPE(__pyx_v_obj)));
2800
__Pyx_DECREF(((PyObject *)__pyx_v_cls));
2801
__pyx_v_cls = ((PyObject*)((PyObject *)Py_TYPE(__pyx_v_obj)));
2803
/* "Cython/Compiler/Visitor.py":140
2804
* # to resolve, try entire hierarchy
2806
* pattern = "visit_%s" # <<<<<<<<<<<<<<
2807
* mro = inspect.getmro(cls)
2808
* handler_method = None
2810
__Pyx_INCREF(((PyObject *)__pyx_kp_s_15));
2811
__Pyx_DECREF(((PyObject *)__pyx_v_pattern));
2812
__pyx_v_pattern = __pyx_kp_s_15;
2814
/* "Cython/Compiler/Visitor.py":141
2816
* pattern = "visit_%s"
2817
* mro = inspect.getmro(cls) # <<<<<<<<<<<<<<
2818
* handler_method = None
2819
* for mro_cls in mro:
2821
__pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__inspect); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2822
__Pyx_GOTREF(__pyx_t_1);
2823
__pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__getmro); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2824
__Pyx_GOTREF(__pyx_t_2);
2825
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
2826
__pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2827
__Pyx_GOTREF(((PyObject *)__pyx_t_1));
2828
__Pyx_INCREF(((PyObject *)__pyx_v_cls));
2829
PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)__pyx_v_cls));
2830
__Pyx_GIVEREF(((PyObject *)__pyx_v_cls));
2831
__pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 141; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2832
__Pyx_GOTREF(__pyx_t_3);
2833
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
2834
__Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0;
2835
__Pyx_DECREF(__pyx_v_mro);
2836
__pyx_v_mro = __pyx_t_3;
2839
/* "Cython/Compiler/Visitor.py":142
2840
* pattern = "visit_%s"
2841
* mro = inspect.getmro(cls)
2842
* handler_method = None # <<<<<<<<<<<<<<
2843
* for mro_cls in mro:
2844
* handler_method = getattr(self, pattern % mro_cls.__name__, None)
2846
__Pyx_INCREF(Py_None);
2847
__Pyx_DECREF(__pyx_v_handler_method);
2848
__pyx_v_handler_method = Py_None;
2850
/* "Cython/Compiler/Visitor.py":143
2851
* mro = inspect.getmro(cls)
2852
* handler_method = None
2853
* for mro_cls in mro: # <<<<<<<<<<<<<<
2854
* handler_method = getattr(self, pattern % mro_cls.__name__, None)
2855
* if handler_method is not None:
2857
if (PyList_CheckExact(__pyx_v_mro) || PyTuple_CheckExact(__pyx_v_mro)) {
2858
__pyx_t_4 = 0; __pyx_t_3 = __pyx_v_mro; __Pyx_INCREF(__pyx_t_3);
2860
__pyx_t_4 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_v_mro); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 143; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2861
__Pyx_GOTREF(__pyx_t_3);
2864
if (likely(PyList_CheckExact(__pyx_t_3))) {
2865
if (__pyx_t_4 >= PyList_GET_SIZE(__pyx_t_3)) break;
2866
__pyx_t_1 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++;
2867
} else if (likely(PyTuple_CheckExact(__pyx_t_3))) {
2868
if (__pyx_t_4 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
2869
__pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_4); __Pyx_INCREF(__pyx_t_1); __pyx_t_4++;
2871
__pyx_t_1 = PyIter_Next(__pyx_t_3);
2873
if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 143; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2876
__Pyx_GOTREF(__pyx_t_1);
2878
__Pyx_DECREF(__pyx_v_mro_cls);
2879
__pyx_v_mro_cls = __pyx_t_1;
2882
/* "Cython/Compiler/Visitor.py":144
2883
* handler_method = None
2884
* for mro_cls in mro:
2885
* handler_method = getattr(self, pattern % mro_cls.__name__, None) # <<<<<<<<<<<<<<
2886
* if handler_method is not None:
2887
* return handler_method
2889
__pyx_t_1 = ((PyObject *)__pyx_v_self);
2890
__Pyx_INCREF(__pyx_t_1);
2891
__pyx_t_2 = PyObject_GetAttr(__pyx_v_mro_cls, __pyx_n_s____name__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 144; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2892
__Pyx_GOTREF(__pyx_t_2);
2893
__pyx_t_5 = PyNumber_Remainder(((PyObject *)__pyx_v_pattern), __pyx_t_2); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 144; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2894
__Pyx_GOTREF(((PyObject *)__pyx_t_5));
2895
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
2896
__pyx_t_2 = Py_None;
2897
__Pyx_INCREF(__pyx_t_2);
2898
__pyx_t_6 = __Pyx_GetAttr3(__pyx_t_1, ((PyObject *)__pyx_t_5), __pyx_t_2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 144; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2899
__Pyx_GOTREF(__pyx_t_6);
2900
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
2901
__Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0;
2902
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
2903
__Pyx_DECREF(__pyx_v_handler_method);
2904
__pyx_v_handler_method = __pyx_t_6;
2907
/* "Cython/Compiler/Visitor.py":145
2908
* for mro_cls in mro:
2909
* handler_method = getattr(self, pattern % mro_cls.__name__, None)
2910
* if handler_method is not None: # <<<<<<<<<<<<<<
2911
* return handler_method
2912
* print type(self), cls
2914
__pyx_t_7 = (__pyx_v_handler_method != Py_None);
2917
/* "Cython/Compiler/Visitor.py":146
2918
* handler_method = getattr(self, pattern % mro_cls.__name__, None)
2919
* if handler_method is not None:
2920
* return handler_method # <<<<<<<<<<<<<<
2921
* print type(self), cls
2922
* if self.access_path:
2924
__Pyx_XDECREF(__pyx_r);
2925
__Pyx_INCREF(__pyx_v_handler_method);
2926
__pyx_r = __pyx_v_handler_method;
2927
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
2933
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
2935
/* "Cython/Compiler/Visitor.py":147
2936
* if handler_method is not None:
2937
* return handler_method
2938
* print type(self), cls # <<<<<<<<<<<<<<
2939
* if self.access_path:
2940
* print self.access_path
2942
__pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 147; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2943
__Pyx_GOTREF(((PyObject *)__pyx_t_3));
2944
__Pyx_INCREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
2945
PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
2946
__Pyx_GIVEREF(((PyObject *)Py_TYPE(((PyObject *)__pyx_v_self))));
2947
__Pyx_INCREF(((PyObject *)__pyx_v_cls));
2948
PyTuple_SET_ITEM(__pyx_t_3, 1, ((PyObject *)__pyx_v_cls));
2949
__Pyx_GIVEREF(((PyObject *)__pyx_v_cls));
2950
if (__Pyx_Print(0, ((PyObject *)__pyx_t_3), 1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 147; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2951
__Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0;
2953
/* "Cython/Compiler/Visitor.py":148
2954
* return handler_method
2955
* print type(self), cls
2956
* if self.access_path: # <<<<<<<<<<<<<<
2957
* print self.access_path
2958
* print self.access_path[-1][0].pos
2960
__pyx_t_7 = (((PyObject *)__pyx_v_self->access_path) != Py_None) && (PyList_GET_SIZE(((PyObject *)__pyx_v_self->access_path)) != 0);
2963
/* "Cython/Compiler/Visitor.py":149
2964
* print type(self), cls
2965
* if self.access_path:
2966
* print self.access_path # <<<<<<<<<<<<<<
2967
* print self.access_path[-1][0].pos
2968
* print self.access_path[-1][0].__dict__
2970
if (__Pyx_PrintOne(0, ((PyObject *)__pyx_v_self->access_path)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 149; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2972
/* "Cython/Compiler/Visitor.py":150
2973
* if self.access_path:
2974
* print self.access_path
2975
* print self.access_path[-1][0].pos # <<<<<<<<<<<<<<
2976
* print self.access_path[-1][0].__dict__
2977
* raise RuntimeError("Visitor %r does not accept object: %s" % (self, obj))
2979
__pyx_t_3 = __Pyx_GetItemInt_List(((PyObject *)__pyx_v_self->access_path), -1, sizeof(long), PyInt_FromLong); if (!__pyx_t_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 150; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2980
__Pyx_GOTREF(__pyx_t_3);
2981
__pyx_t_6 = __Pyx_GetItemInt(__pyx_t_3, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 150; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2982
__Pyx_GOTREF(__pyx_t_6);
2983
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
2984
__pyx_t_3 = PyObject_GetAttr(__pyx_t_6, __pyx_n_s__pos); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 150; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2985
__Pyx_GOTREF(__pyx_t_3);
2986
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
2987
if (__Pyx_PrintOne(0, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 150; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2988
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
2990
/* "Cython/Compiler/Visitor.py":151
2991
* print self.access_path
2992
* print self.access_path[-1][0].pos
2993
* print self.access_path[-1][0].__dict__ # <<<<<<<<<<<<<<
2994
* raise RuntimeError("Visitor %r does not accept object: %s" % (self, obj))
2997
__pyx_t_3 = __Pyx_GetItemInt_List(((PyObject *)__pyx_v_self->access_path), -1, sizeof(long), PyInt_FromLong); if (!__pyx_t_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 151; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
2998
__Pyx_GOTREF(__pyx_t_3);
2999
__pyx_t_6 = __Pyx_GetItemInt(__pyx_t_3, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_6) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 151; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3000
__Pyx_GOTREF(__pyx_t_6);
3001
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
3002
__pyx_t_3 = PyObject_GetAttr(__pyx_t_6, __pyx_n_s____dict__); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 151; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3003
__Pyx_GOTREF(__pyx_t_3);
3004
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
3005
if (__Pyx_PrintOne(0, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 151; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3006
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
3011
/* "Cython/Compiler/Visitor.py":152
3012
* print self.access_path[-1][0].pos
3013
* print self.access_path[-1][0].__dict__
3014
* raise RuntimeError("Visitor %r does not accept object: %s" % (self, obj)) # <<<<<<<<<<<<<<
3016
* def visit(self, obj):
3018
__pyx_t_3 = PyTuple_New(2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3019
__Pyx_GOTREF(((PyObject *)__pyx_t_3));
3020
__Pyx_INCREF(((PyObject *)__pyx_v_self));
3021
PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_v_self));
3022
__Pyx_GIVEREF(((PyObject *)__pyx_v_self));
3023
__Pyx_INCREF(__pyx_v_obj);
3024
PyTuple_SET_ITEM(__pyx_t_3, 1, __pyx_v_obj);
3025
__Pyx_GIVEREF(__pyx_v_obj);
3026
__pyx_t_6 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_16), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3027
__Pyx_GOTREF(((PyObject *)__pyx_t_6));
3028
__Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0;
3029
__pyx_t_3 = PyTuple_New(1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3030
__Pyx_GOTREF(((PyObject *)__pyx_t_3));
3031
PyTuple_SET_ITEM(__pyx_t_3, 0, ((PyObject *)__pyx_t_6));
3032
__Pyx_GIVEREF(((PyObject *)__pyx_t_6));
3034
__pyx_t_6 = PyObject_Call(__pyx_builtin_RuntimeError, ((PyObject *)__pyx_t_3), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3035
__Pyx_GOTREF(__pyx_t_6);
3036
__Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0;
3037
__Pyx_Raise(__pyx_t_6, 0, 0);
3038
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
3039
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3041
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
3044
__Pyx_XDECREF(__pyx_t_1);
3045
__Pyx_XDECREF(__pyx_t_2);
3046
__Pyx_XDECREF(__pyx_t_3);
3047
__Pyx_XDECREF(__pyx_t_5);
3048
__Pyx_XDECREF(__pyx_t_6);
3049
__Pyx_AddTraceback("Cython.Compiler.Visitor.TreeVisitor.find_handler");
3052
__Pyx_DECREF(__pyx_v_cls);
3053
__Pyx_DECREF(__pyx_v_pattern);
3054
__Pyx_DECREF(__pyx_v_mro);
3055
__Pyx_DECREF(__pyx_v_handler_method);
3056
__Pyx_DECREF(__pyx_v_mro_cls);
3057
__Pyx_XGIVEREF(__pyx_r);
3058
__Pyx_RefNannyFinishContext();
3062
/* "Cython/Compiler/Visitor.py":154
3063
* raise RuntimeError("Visitor %r does not accept object: %s" % (self, obj))
3065
* def visit(self, obj): # <<<<<<<<<<<<<<
3066
* return self._visit(obj)
3070
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_4visit(PyObject *__pyx_v_self, PyObject *__pyx_v_obj); /*proto*/
3071
static PyObject *__pyx_f_6Cython_8Compiler_7Visitor_11TreeVisitor_visit(struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *__pyx_v_self, PyObject *__pyx_v_obj, int __pyx_skip_dispatch) {
3072
PyObject *__pyx_r = NULL;
3073
PyObject *__pyx_t_1 = NULL;
3074
PyObject *__pyx_t_2 = NULL;
3075
PyObject *__pyx_t_3 = NULL;
3076
__Pyx_RefNannySetupContext("visit");
3077
/* Check if called by wrapper */
3078
if (unlikely(__pyx_skip_dispatch)) ;
3079
/* Check if overriden in Python */
3080
else if (unlikely(Py_TYPE(((PyObject *)__pyx_v_self))->tp_dictoffset != 0)) {
3081
__pyx_t_1 = PyObject_GetAttr(((PyObject *)__pyx_v_self), __pyx_n_s__visit); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3082
__Pyx_GOTREF(__pyx_t_1);
3083
if (!PyCFunction_Check(__pyx_t_1) || (PyCFunction_GET_FUNCTION(__pyx_t_1) != (void *)&__pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_4visit)) {
3084
__Pyx_XDECREF(__pyx_r);
3085
__pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3086
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
3087
__Pyx_INCREF(__pyx_v_obj);
3088
PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_obj);
3089
__Pyx_GIVEREF(__pyx_v_obj);
3090
__pyx_t_3 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3091
__Pyx_GOTREF(__pyx_t_3);
3092
__Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0;
3093
__pyx_r = __pyx_t_3;
3095
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
3098
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
3101
/* "Cython/Compiler/Visitor.py":155
3103
* def visit(self, obj):
3104
* return self._visit(obj) # <<<<<<<<<<<<<<
3106
* def _visit(self, obj):
3108
__Pyx_XDECREF(__pyx_r);
3109
__pyx_t_1 = __pyx_v_obj;
3110
__Pyx_INCREF(__pyx_t_1);
3111
__pyx_t_3 = ((struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self->__pyx_vtab)->_visit(__pyx_v_self, __pyx_t_1); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 155; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3112
__Pyx_GOTREF(__pyx_t_3);
3113
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
3114
__pyx_r = __pyx_t_3;
3118
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
3121
__Pyx_XDECREF(__pyx_t_1);
3122
__Pyx_XDECREF(__pyx_t_2);
3123
__Pyx_XDECREF(__pyx_t_3);
3124
__Pyx_AddTraceback("Cython.Compiler.Visitor.TreeVisitor.visit");
3127
__Pyx_XGIVEREF(__pyx_r);
3128
__Pyx_RefNannyFinishContext();
3132
/* "Cython/Compiler/Visitor.py":154
3133
* raise RuntimeError("Visitor %r does not accept object: %s" % (self, obj))
3135
* def visit(self, obj): # <<<<<<<<<<<<<<
3136
* return self._visit(obj)
3140
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_4visit(PyObject *__pyx_v_self, PyObject *__pyx_v_obj); /*proto*/
3141
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_4visit(PyObject *__pyx_v_self, PyObject *__pyx_v_obj) {
3142
PyObject *__pyx_r = NULL;
3143
PyObject *__pyx_t_1 = NULL;
3144
PyObject *__pyx_t_2 = NULL;
3145
__Pyx_RefNannySetupContext("visit");
3146
__Pyx_XDECREF(__pyx_r);
3147
__pyx_t_1 = __pyx_v_obj;
3148
__Pyx_INCREF(__pyx_t_1);
3149
__pyx_t_2 = ((struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_TreeVisitor *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self)->__pyx_vtab)->visit(((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self), __pyx_t_1, 1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 154; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3150
__Pyx_GOTREF(__pyx_t_2);
3151
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
3152
__pyx_r = __pyx_t_2;
3156
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
3159
__Pyx_XDECREF(__pyx_t_1);
3160
__Pyx_XDECREF(__pyx_t_2);
3161
__Pyx_AddTraceback("Cython.Compiler.Visitor.TreeVisitor.visit");
3164
__Pyx_XGIVEREF(__pyx_r);
3165
__Pyx_RefNannyFinishContext();
3169
/* "Cython/Compiler/Visitor.py":157
3170
* return self._visit(obj)
3172
* def _visit(self, obj): # <<<<<<<<<<<<<<
3174
* handler_method = self.dispatch_table[type(obj)]
3177
static PyObject *__pyx_f_6Cython_8Compiler_7Visitor_11TreeVisitor__visit(struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *__pyx_v_self, PyObject *__pyx_v_obj) {
3178
PyObject *__pyx_v_handler_method;
3179
PyObject *__pyx_r = NULL;
3180
PyObject *__pyx_t_1 = NULL;
3182
PyObject *__pyx_t_3 = NULL;
3183
PyObject *__pyx_t_4 = NULL;
3184
PyObject *__pyx_t_5 = NULL;
3185
PyObject *__pyx_t_6 = NULL;
3186
__Pyx_RefNannySetupContext("_visit");
3187
__pyx_v_handler_method = Py_None; __Pyx_INCREF(Py_None);
3189
/* "Cython/Compiler/Visitor.py":158
3191
* def _visit(self, obj):
3192
* try: # <<<<<<<<<<<<<<
3193
* handler_method = self.dispatch_table[type(obj)]
3197
PyObject *__pyx_save_exc_type, *__pyx_save_exc_value, *__pyx_save_exc_tb;
3198
__Pyx_ExceptionSave(&__pyx_save_exc_type, &__pyx_save_exc_value, &__pyx_save_exc_tb);
3199
__Pyx_XGOTREF(__pyx_save_exc_type);
3200
__Pyx_XGOTREF(__pyx_save_exc_value);
3201
__Pyx_XGOTREF(__pyx_save_exc_tb);
3204
/* "Cython/Compiler/Visitor.py":159
3205
* def _visit(self, obj):
3207
* handler_method = self.dispatch_table[type(obj)] # <<<<<<<<<<<<<<
3209
* handler_method = self.find_handler(obj)
3211
__pyx_t_1 = __Pyx_PyDict_GetItem(((PyObject *)__pyx_v_self->dispatch_table), ((PyObject *)Py_TYPE(__pyx_v_obj))); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 159; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
3212
__Pyx_GOTREF(__pyx_t_1);
3213
__Pyx_DECREF(__pyx_v_handler_method);
3214
__pyx_v_handler_method = __pyx_t_1;
3217
__Pyx_XDECREF(__pyx_save_exc_type); __pyx_save_exc_type = 0;
3218
__Pyx_XDECREF(__pyx_save_exc_value); __pyx_save_exc_value = 0;
3219
__Pyx_XDECREF(__pyx_save_exc_tb); __pyx_save_exc_tb = 0;
3220
goto __pyx_L10_try_end;
3222
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
3224
/* "Cython/Compiler/Visitor.py":160
3226
* handler_method = self.dispatch_table[type(obj)]
3227
* except KeyError: # <<<<<<<<<<<<<<
3228
* handler_method = self.find_handler(obj)
3229
* self.dispatch_table[type(obj)] = handler_method
3231
__pyx_t_2 = PyErr_ExceptionMatches(__pyx_builtin_KeyError);
3233
__Pyx_AddTraceback("Cython.Compiler.Visitor.TreeVisitor._visit");
3234
if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_3, &__pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 160; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
3235
__Pyx_GOTREF(__pyx_t_1);
3236
__Pyx_GOTREF(__pyx_t_3);
3237
__Pyx_GOTREF(__pyx_t_4);
3239
/* "Cython/Compiler/Visitor.py":161
3240
* handler_method = self.dispatch_table[type(obj)]
3242
* handler_method = self.find_handler(obj) # <<<<<<<<<<<<<<
3243
* self.dispatch_table[type(obj)] = handler_method
3244
* return handler_method(obj)
3246
__pyx_t_5 = __pyx_v_obj;
3247
__Pyx_INCREF(__pyx_t_5);
3248
__pyx_t_6 = ((struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self->__pyx_vtab)->find_handler(__pyx_v_self, __pyx_t_5); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 161; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
3249
__Pyx_GOTREF(__pyx_t_6);
3250
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
3251
__Pyx_DECREF(__pyx_v_handler_method);
3252
__pyx_v_handler_method = __pyx_t_6;
3255
/* "Cython/Compiler/Visitor.py":162
3257
* handler_method = self.find_handler(obj)
3258
* self.dispatch_table[type(obj)] = handler_method # <<<<<<<<<<<<<<
3259
* return handler_method(obj)
3262
if (PyDict_SetItem(((PyObject *)__pyx_v_self->dispatch_table), ((PyObject *)Py_TYPE(__pyx_v_obj)), __pyx_v_handler_method) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 162; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
3263
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
3264
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
3265
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
3266
goto __pyx_L4_exception_handled;
3268
__pyx_L5_except_error:;
3269
__Pyx_XGIVEREF(__pyx_save_exc_type);
3270
__Pyx_XGIVEREF(__pyx_save_exc_value);
3271
__Pyx_XGIVEREF(__pyx_save_exc_tb);
3272
__Pyx_ExceptionReset(__pyx_save_exc_type, __pyx_save_exc_value, __pyx_save_exc_tb);
3273
goto __pyx_L1_error;
3274
__pyx_L4_exception_handled:;
3275
__Pyx_XGIVEREF(__pyx_save_exc_type);
3276
__Pyx_XGIVEREF(__pyx_save_exc_value);
3277
__Pyx_XGIVEREF(__pyx_save_exc_tb);
3278
__Pyx_ExceptionReset(__pyx_save_exc_type, __pyx_save_exc_value, __pyx_save_exc_tb);
3282
/* "Cython/Compiler/Visitor.py":163
3283
* handler_method = self.find_handler(obj)
3284
* self.dispatch_table[type(obj)] = handler_method
3285
* return handler_method(obj) # <<<<<<<<<<<<<<
3287
* def _visitchild(self, child, parent, attrname, idx):
3289
__Pyx_XDECREF(__pyx_r);
3290
__pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 163; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3291
__Pyx_GOTREF(((PyObject *)__pyx_t_4));
3292
__Pyx_INCREF(__pyx_v_obj);
3293
PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_obj);
3294
__Pyx_GIVEREF(__pyx_v_obj);
3295
__pyx_t_3 = PyObject_Call(__pyx_v_handler_method, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 163; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3296
__Pyx_GOTREF(__pyx_t_3);
3297
__Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0;
3298
__pyx_r = __pyx_t_3;
3302
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
3305
__Pyx_XDECREF(__pyx_t_1);
3306
__Pyx_XDECREF(__pyx_t_3);
3307
__Pyx_XDECREF(__pyx_t_4);
3308
__Pyx_XDECREF(__pyx_t_5);
3309
__Pyx_XDECREF(__pyx_t_6);
3310
__Pyx_AddTraceback("Cython.Compiler.Visitor.TreeVisitor._visit");
3313
__Pyx_DECREF(__pyx_v_handler_method);
3314
__Pyx_XGIVEREF(__pyx_r);
3315
__Pyx_RefNannyFinishContext();
3319
/* "Cython/Compiler/Visitor.py":165
3320
* return handler_method(obj)
3322
* def _visitchild(self, child, parent, attrname, idx): # <<<<<<<<<<<<<<
3323
* self.access_path.append((parent, attrname, idx))
3327
static PyObject *__pyx_f_6Cython_8Compiler_7Visitor_11TreeVisitor__visitchild(struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *__pyx_v_self, PyObject *__pyx_v_child, PyObject *__pyx_v_parent, PyObject *__pyx_v_attrname, PyObject *__pyx_v_idx) {
3328
PyObject *__pyx_v_handler_method;
3329
PyObject *__pyx_v_result;
3330
PyObject *__pyx_v_e;
3331
PyObject *__pyx_r = NULL;
3332
PyObject *__pyx_t_1 = NULL;
3334
PyObject *__pyx_t_3 = NULL;
3335
PyObject *__pyx_t_4 = NULL;
3336
PyObject *__pyx_t_5 = NULL;
3337
PyObject *__pyx_t_6 = NULL;
3339
PyObject *__pyx_t_8 = NULL;
3340
__Pyx_RefNannySetupContext("_visitchild");
3341
__pyx_v_handler_method = Py_None; __Pyx_INCREF(Py_None);
3342
__pyx_v_result = Py_None; __Pyx_INCREF(Py_None);
3343
__pyx_v_e = Py_None; __Pyx_INCREF(Py_None);
3345
/* "Cython/Compiler/Visitor.py":166
3347
* def _visitchild(self, child, parent, attrname, idx):
3348
* self.access_path.append((parent, attrname, idx)) # <<<<<<<<<<<<<<
3352
if (unlikely(__pyx_v_self->access_path == Py_None)) {
3353
PyErr_SetString(PyExc_AttributeError, "'NoneType' object has no attribute 'append'"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 166; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3355
__pyx_t_1 = PyTuple_New(3); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 166; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3356
__Pyx_GOTREF(((PyObject *)__pyx_t_1));
3357
__Pyx_INCREF(__pyx_v_parent);
3358
PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_parent);
3359
__Pyx_GIVEREF(__pyx_v_parent);
3360
__Pyx_INCREF(__pyx_v_attrname);
3361
PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_attrname);
3362
__Pyx_GIVEREF(__pyx_v_attrname);
3363
__Pyx_INCREF(__pyx_v_idx);
3364
PyTuple_SET_ITEM(__pyx_t_1, 2, __pyx_v_idx);
3365
__Pyx_GIVEREF(__pyx_v_idx);
3366
__pyx_t_2 = PyList_Append(__pyx_v_self->access_path, ((PyObject *)__pyx_t_1)); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 166; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3367
__Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0;
3369
/* "Cython/Compiler/Visitor.py":167
3370
* def _visitchild(self, child, parent, attrname, idx):
3371
* self.access_path.append((parent, attrname, idx))
3372
* try: # <<<<<<<<<<<<<<
3374
* handler_method = self.dispatch_table[type(child)]
3377
PyObject *__pyx_save_exc_type, *__pyx_save_exc_value, *__pyx_save_exc_tb;
3378
__Pyx_ExceptionSave(&__pyx_save_exc_type, &__pyx_save_exc_value, &__pyx_save_exc_tb);
3379
__Pyx_XGOTREF(__pyx_save_exc_type);
3380
__Pyx_XGOTREF(__pyx_save_exc_value);
3381
__Pyx_XGOTREF(__pyx_save_exc_tb);
3384
/* "Cython/Compiler/Visitor.py":168
3385
* self.access_path.append((parent, attrname, idx))
3387
* try: # <<<<<<<<<<<<<<
3388
* handler_method = self.dispatch_table[type(child)]
3392
PyObject *__pyx_save_exc_type, *__pyx_save_exc_value, *__pyx_save_exc_tb;
3393
__Pyx_ExceptionSave(&__pyx_save_exc_type, &__pyx_save_exc_value, &__pyx_save_exc_tb);
3394
__Pyx_XGOTREF(__pyx_save_exc_type);
3395
__Pyx_XGOTREF(__pyx_save_exc_value);
3396
__Pyx_XGOTREF(__pyx_save_exc_tb);
3399
/* "Cython/Compiler/Visitor.py":169
3402
* handler_method = self.dispatch_table[type(child)] # <<<<<<<<<<<<<<
3404
* handler_method = self.find_handler(child)
3406
__pyx_t_1 = __Pyx_PyDict_GetItem(((PyObject *)__pyx_v_self->dispatch_table), ((PyObject *)Py_TYPE(__pyx_v_child))); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 169; __pyx_clineno = __LINE__; goto __pyx_L11_error;}
3407
__Pyx_GOTREF(__pyx_t_1);
3408
__Pyx_DECREF(__pyx_v_handler_method);
3409
__pyx_v_handler_method = __pyx_t_1;
3412
__Pyx_XDECREF(__pyx_save_exc_type); __pyx_save_exc_type = 0;
3413
__Pyx_XDECREF(__pyx_save_exc_value); __pyx_save_exc_value = 0;
3414
__Pyx_XDECREF(__pyx_save_exc_tb); __pyx_save_exc_tb = 0;
3415
goto __pyx_L18_try_end;
3417
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
3419
/* "Cython/Compiler/Visitor.py":170
3421
* handler_method = self.dispatch_table[type(child)]
3422
* except KeyError: # <<<<<<<<<<<<<<
3423
* handler_method = self.find_handler(child)
3424
* self.dispatch_table[type(child)] = handler_method
3426
__pyx_t_2 = PyErr_ExceptionMatches(__pyx_builtin_KeyError);
3428
__Pyx_AddTraceback("Cython.Compiler.Visitor.TreeVisitor._visitchild");
3429
if (__Pyx_GetException(&__pyx_t_1, &__pyx_t_3, &__pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 170; __pyx_clineno = __LINE__; goto __pyx_L13_except_error;}
3430
__Pyx_GOTREF(__pyx_t_1);
3431
__Pyx_GOTREF(__pyx_t_3);
3432
__Pyx_GOTREF(__pyx_t_4);
3434
/* "Cython/Compiler/Visitor.py":171
3435
* handler_method = self.dispatch_table[type(child)]
3437
* handler_method = self.find_handler(child) # <<<<<<<<<<<<<<
3438
* self.dispatch_table[type(child)] = handler_method
3439
* result = handler_method(child)
3441
__pyx_t_5 = __pyx_v_child;
3442
__Pyx_INCREF(__pyx_t_5);
3443
__pyx_t_6 = ((struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self->__pyx_vtab)->find_handler(__pyx_v_self, __pyx_t_5); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 171; __pyx_clineno = __LINE__; goto __pyx_L13_except_error;}
3444
__Pyx_GOTREF(__pyx_t_6);
3445
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
3446
__Pyx_DECREF(__pyx_v_handler_method);
3447
__pyx_v_handler_method = __pyx_t_6;
3450
/* "Cython/Compiler/Visitor.py":172
3452
* handler_method = self.find_handler(child)
3453
* self.dispatch_table[type(child)] = handler_method # <<<<<<<<<<<<<<
3454
* result = handler_method(child)
3455
* except Errors.CompileError:
3457
if (PyDict_SetItem(((PyObject *)__pyx_v_self->dispatch_table), ((PyObject *)Py_TYPE(__pyx_v_child)), __pyx_v_handler_method) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 172; __pyx_clineno = __LINE__; goto __pyx_L13_except_error;}
3458
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
3459
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
3460
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
3461
goto __pyx_L12_exception_handled;
3463
__pyx_L13_except_error:;
3464
__Pyx_XGIVEREF(__pyx_save_exc_type);
3465
__Pyx_XGIVEREF(__pyx_save_exc_value);
3466
__Pyx_XGIVEREF(__pyx_save_exc_tb);
3467
__Pyx_ExceptionReset(__pyx_save_exc_type, __pyx_save_exc_value, __pyx_save_exc_tb);
3468
goto __pyx_L3_error;
3469
__pyx_L12_exception_handled:;
3470
__Pyx_XGIVEREF(__pyx_save_exc_type);
3471
__Pyx_XGIVEREF(__pyx_save_exc_value);
3472
__Pyx_XGIVEREF(__pyx_save_exc_tb);
3473
__Pyx_ExceptionReset(__pyx_save_exc_type, __pyx_save_exc_value, __pyx_save_exc_tb);
3477
/* "Cython/Compiler/Visitor.py":173
3478
* handler_method = self.find_handler(child)
3479
* self.dispatch_table[type(child)] = handler_method
3480
* result = handler_method(child) # <<<<<<<<<<<<<<
3481
* except Errors.CompileError:
3484
__pyx_t_4 = PyTuple_New(1); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 173; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
3485
__Pyx_GOTREF(((PyObject *)__pyx_t_4));
3486
__Pyx_INCREF(__pyx_v_child);
3487
PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_child);
3488
__Pyx_GIVEREF(__pyx_v_child);
3489
__pyx_t_3 = PyObject_Call(__pyx_v_handler_method, ((PyObject *)__pyx_t_4), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 173; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
3490
__Pyx_GOTREF(__pyx_t_3);
3491
__Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0;
3492
__Pyx_DECREF(__pyx_v_result);
3493
__pyx_v_result = __pyx_t_3;
3496
__Pyx_XDECREF(__pyx_save_exc_type); __pyx_save_exc_type = 0;
3497
__Pyx_XDECREF(__pyx_save_exc_value); __pyx_save_exc_value = 0;
3498
__Pyx_XDECREF(__pyx_save_exc_tb); __pyx_save_exc_tb = 0;
3499
goto __pyx_L10_try_end;
3501
__Pyx_XDECREF(__pyx_t_5); __pyx_t_5 = 0;
3502
__Pyx_XDECREF(__pyx_t_6); __pyx_t_6 = 0;
3503
__Pyx_XDECREF(__pyx_t_1); __pyx_t_1 = 0;
3504
__Pyx_XDECREF(__pyx_t_4); __pyx_t_4 = 0;
3505
__Pyx_XDECREF(__pyx_t_3); __pyx_t_3 = 0;
3507
/* "Cython/Compiler/Visitor.py":174
3508
* self.dispatch_table[type(child)] = handler_method
3509
* result = handler_method(child)
3510
* except Errors.CompileError: # <<<<<<<<<<<<<<
3512
* except Errors.AbortError:
3514
__pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__Errors); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 174; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
3515
__Pyx_GOTREF(__pyx_t_3);
3516
__pyx_t_4 = PyObject_GetAttr(__pyx_t_3, __pyx_n_s__CompileError); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 174; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
3517
__Pyx_GOTREF(__pyx_t_4);
3518
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
3519
__pyx_t_2 = PyErr_ExceptionMatches(__pyx_t_4);
3520
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
3522
__Pyx_AddTraceback("Cython.Compiler.Visitor.TreeVisitor._visitchild");
3523
if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_3, &__pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 174; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
3524
__Pyx_GOTREF(__pyx_t_4);
3525
__Pyx_GOTREF(__pyx_t_3);
3526
__Pyx_GOTREF(__pyx_t_1);
3528
/* "Cython/Compiler/Visitor.py":175
3529
* result = handler_method(child)
3530
* except Errors.CompileError:
3531
* raise # <<<<<<<<<<<<<<
3532
* except Errors.AbortError:
3535
__Pyx_GIVEREF(__pyx_t_4);
3536
__Pyx_GIVEREF(__pyx_t_3);
3537
__Pyx_GIVEREF(__pyx_t_1);
3538
__Pyx_ErrRestore(__pyx_t_4, __pyx_t_3, __pyx_t_1);
3539
__pyx_t_4 = 0; __pyx_t_3 = 0; __pyx_t_1 = 0;
3540
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 175; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
3541
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
3542
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
3543
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
3544
goto __pyx_L4_exception_handled;
3547
/* "Cython/Compiler/Visitor.py":176
3548
* except Errors.CompileError:
3550
* except Errors.AbortError: # <<<<<<<<<<<<<<
3552
* except Exception, e:
3554
__pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s__Errors); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 176; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
3555
__Pyx_GOTREF(__pyx_t_1);
3556
__pyx_t_3 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s__AbortError); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 176; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
3557
__Pyx_GOTREF(__pyx_t_3);
3558
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
3559
__pyx_t_2 = PyErr_ExceptionMatches(__pyx_t_3);
3560
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
3562
__Pyx_AddTraceback("Cython.Compiler.Visitor.TreeVisitor._visitchild");
3563
if (__Pyx_GetException(&__pyx_t_3, &__pyx_t_1, &__pyx_t_4) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 176; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
3564
__Pyx_GOTREF(__pyx_t_3);
3565
__Pyx_GOTREF(__pyx_t_1);
3566
__Pyx_GOTREF(__pyx_t_4);
3568
/* "Cython/Compiler/Visitor.py":177
3570
* except Errors.AbortError:
3571
* raise # <<<<<<<<<<<<<<
3572
* except Exception, e:
3573
* if DebugFlags.debug_no_exception_intercept:
3575
__Pyx_GIVEREF(__pyx_t_3);
3576
__Pyx_GIVEREF(__pyx_t_1);
3577
__Pyx_GIVEREF(__pyx_t_4);
3578
__Pyx_ErrRestore(__pyx_t_3, __pyx_t_1, __pyx_t_4);
3579
__pyx_t_3 = 0; __pyx_t_1 = 0; __pyx_t_4 = 0;
3580
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 177; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
3581
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
3582
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
3583
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
3584
goto __pyx_L4_exception_handled;
3587
/* "Cython/Compiler/Visitor.py":178
3588
* except Errors.AbortError:
3590
* except Exception, e: # <<<<<<<<<<<<<<
3591
* if DebugFlags.debug_no_exception_intercept:
3594
__pyx_t_2 = PyErr_ExceptionMatches(__pyx_builtin_Exception);
3596
__Pyx_AddTraceback("Cython.Compiler.Visitor.TreeVisitor._visitchild");
3597
if (__Pyx_GetException(&__pyx_t_4, &__pyx_t_1, &__pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
3598
__Pyx_GOTREF(__pyx_t_4);
3599
__Pyx_GOTREF(__pyx_t_1);
3600
__Pyx_GOTREF(__pyx_t_3);
3601
__Pyx_INCREF(__pyx_t_1);
3602
__Pyx_DECREF(__pyx_v_e);
3603
__pyx_v_e = __pyx_t_1;
3605
/* "Cython/Compiler/Visitor.py":179
3607
* except Exception, e:
3608
* if DebugFlags.debug_no_exception_intercept: # <<<<<<<<<<<<<<
3610
* self._raise_compiler_error(child, e)
3612
__pyx_t_6 = __Pyx_GetName(__pyx_m, __pyx_n_s__DebugFlags); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 179; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
3613
__Pyx_GOTREF(__pyx_t_6);
3614
__pyx_t_5 = PyObject_GetAttr(__pyx_t_6, __pyx_n_s_17); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 179; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
3615
__Pyx_GOTREF(__pyx_t_5);
3616
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
3617
__pyx_t_7 = __Pyx_PyObject_IsTrue(__pyx_t_5); if (unlikely(__pyx_t_7 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 179; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
3618
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
3621
/* "Cython/Compiler/Visitor.py":180
3622
* except Exception, e:
3623
* if DebugFlags.debug_no_exception_intercept:
3624
* raise # <<<<<<<<<<<<<<
3625
* self._raise_compiler_error(child, e)
3626
* self.access_path.pop()
3628
__Pyx_GIVEREF(__pyx_t_4);
3629
__Pyx_GIVEREF(__pyx_t_1);
3630
__Pyx_GIVEREF(__pyx_t_3);
3631
__Pyx_ErrRestore(__pyx_t_4, __pyx_t_1, __pyx_t_3);
3632
__pyx_t_4 = 0; __pyx_t_1 = 0; __pyx_t_3 = 0;
3633
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 180; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
3638
/* "Cython/Compiler/Visitor.py":181
3639
* if DebugFlags.debug_no_exception_intercept:
3641
* self._raise_compiler_error(child, e) # <<<<<<<<<<<<<<
3642
* self.access_path.pop()
3645
__pyx_t_5 = PyObject_GetAttr(((PyObject *)__pyx_v_self), __pyx_n_s_18); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 181; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
3646
__Pyx_GOTREF(__pyx_t_5);
3647
__pyx_t_6 = PyTuple_New(2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 181; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
3648
__Pyx_GOTREF(((PyObject *)__pyx_t_6));
3649
__Pyx_INCREF(__pyx_v_child);
3650
PyTuple_SET_ITEM(__pyx_t_6, 0, __pyx_v_child);
3651
__Pyx_GIVEREF(__pyx_v_child);
3652
__Pyx_INCREF(__pyx_v_e);
3653
PyTuple_SET_ITEM(__pyx_t_6, 1, __pyx_v_e);
3654
__Pyx_GIVEREF(__pyx_v_e);
3655
__pyx_t_8 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_t_6), NULL); if (unlikely(!__pyx_t_8)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 181; __pyx_clineno = __LINE__; goto __pyx_L5_except_error;}
3656
__Pyx_GOTREF(__pyx_t_8);
3657
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
3658
__Pyx_DECREF(((PyObject *)__pyx_t_6)); __pyx_t_6 = 0;
3659
__Pyx_DECREF(__pyx_t_8); __pyx_t_8 = 0;
3660
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
3661
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
3662
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
3663
goto __pyx_L4_exception_handled;
3665
__pyx_L5_except_error:;
3666
__Pyx_XGIVEREF(__pyx_save_exc_type);
3667
__Pyx_XGIVEREF(__pyx_save_exc_value);
3668
__Pyx_XGIVEREF(__pyx_save_exc_tb);
3669
__Pyx_ExceptionReset(__pyx_save_exc_type, __pyx_save_exc_value, __pyx_save_exc_tb);
3670
goto __pyx_L1_error;
3671
__pyx_L4_exception_handled:;
3672
__Pyx_XGIVEREF(__pyx_save_exc_type);
3673
__Pyx_XGIVEREF(__pyx_save_exc_value);
3674
__Pyx_XGIVEREF(__pyx_save_exc_tb);
3675
__Pyx_ExceptionReset(__pyx_save_exc_type, __pyx_save_exc_value, __pyx_save_exc_tb);
3679
/* "Cython/Compiler/Visitor.py":182
3681
* self._raise_compiler_error(child, e)
3682
* self.access_path.pop() # <<<<<<<<<<<<<<
3686
__pyx_t_3 = __Pyx_PyObject_Pop(((PyObject *)__pyx_v_self->access_path)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 182; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3687
__Pyx_GOTREF(__pyx_t_3);
3688
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
3690
/* "Cython/Compiler/Visitor.py":183
3691
* self._raise_compiler_error(child, e)
3692
* self.access_path.pop()
3693
* return result # <<<<<<<<<<<<<<
3695
* def visitchildren(self, parent, attrs=None):
3697
__Pyx_XDECREF(__pyx_r);
3698
__Pyx_INCREF(__pyx_v_result);
3699
__pyx_r = __pyx_v_result;
3702
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
3705
__Pyx_XDECREF(__pyx_t_1);
3706
__Pyx_XDECREF(__pyx_t_3);
3707
__Pyx_XDECREF(__pyx_t_4);
3708
__Pyx_XDECREF(__pyx_t_5);
3709
__Pyx_XDECREF(__pyx_t_6);
3710
__Pyx_XDECREF(__pyx_t_8);
3711
__Pyx_AddTraceback("Cython.Compiler.Visitor.TreeVisitor._visitchild");
3714
__Pyx_DECREF(__pyx_v_handler_method);
3715
__Pyx_DECREF(__pyx_v_result);
3716
__Pyx_DECREF(__pyx_v_e);
3717
__Pyx_XGIVEREF(__pyx_r);
3718
__Pyx_RefNannyFinishContext();
3722
/* "Cython/Compiler/Visitor.py":185
3725
* def visitchildren(self, parent, attrs=None): # <<<<<<<<<<<<<<
3726
* return self._visitchildren(parent, attrs)
3730
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_5visitchildren(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
3731
static PyObject *__pyx_f_6Cython_8Compiler_7Visitor_11TreeVisitor_visitchildren(struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *__pyx_v_self, PyObject *__pyx_v_parent, int __pyx_skip_dispatch, struct __pyx_opt_args_6Cython_8Compiler_7Visitor_11TreeVisitor_visitchildren *__pyx_optional_args) {
3732
PyObject *__pyx_v_attrs = ((PyObject *)Py_None);
3733
PyObject *__pyx_r = NULL;
3734
PyObject *__pyx_t_1 = NULL;
3735
PyObject *__pyx_t_2 = NULL;
3736
PyObject *__pyx_t_3 = NULL;
3737
__Pyx_RefNannySetupContext("visitchildren");
3738
if (__pyx_optional_args) {
3739
if (__pyx_optional_args->__pyx_n > 0) {
3740
__pyx_v_attrs = __pyx_optional_args->attrs;
3743
/* Check if called by wrapper */
3744
if (unlikely(__pyx_skip_dispatch)) ;
3745
/* Check if overriden in Python */
3746
else if (unlikely(Py_TYPE(((PyObject *)__pyx_v_self))->tp_dictoffset != 0)) {
3747
__pyx_t_1 = PyObject_GetAttr(((PyObject *)__pyx_v_self), __pyx_n_s__visitchildren); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 185; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3748
__Pyx_GOTREF(__pyx_t_1);
3749
if (!PyCFunction_Check(__pyx_t_1) || (PyCFunction_GET_FUNCTION(__pyx_t_1) != (void *)&__pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_5visitchildren)) {
3750
__Pyx_XDECREF(__pyx_r);
3751
__pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 185; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3752
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
3753
__Pyx_INCREF(__pyx_v_parent);
3754
PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_parent);
3755
__Pyx_GIVEREF(__pyx_v_parent);
3756
__Pyx_INCREF(__pyx_v_attrs);
3757
PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_attrs);
3758
__Pyx_GIVEREF(__pyx_v_attrs);
3759
__pyx_t_3 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 185; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3760
__Pyx_GOTREF(__pyx_t_3);
3761
__Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0;
3762
__pyx_r = __pyx_t_3;
3764
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
3767
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
3770
/* "Cython/Compiler/Visitor.py":186
3772
* def visitchildren(self, parent, attrs=None):
3773
* return self._visitchildren(parent, attrs) # <<<<<<<<<<<<<<
3775
* def _visitchildren(self, parent, attrs):
3777
__Pyx_XDECREF(__pyx_r);
3778
__pyx_t_1 = __pyx_v_parent;
3779
__Pyx_INCREF(__pyx_t_1);
3780
__pyx_t_3 = __pyx_v_attrs;
3781
__Pyx_INCREF(__pyx_t_3);
3782
__pyx_t_2 = ((PyObject *)((struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self->__pyx_vtab)->_visitchildren(__pyx_v_self, __pyx_t_1, __pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 186; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3783
__Pyx_GOTREF(__pyx_t_2);
3784
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
3785
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
3786
__pyx_r = __pyx_t_2;
3790
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
3793
__Pyx_XDECREF(__pyx_t_1);
3794
__Pyx_XDECREF(__pyx_t_2);
3795
__Pyx_XDECREF(__pyx_t_3);
3796
__Pyx_AddTraceback("Cython.Compiler.Visitor.TreeVisitor.visitchildren");
3799
__Pyx_XGIVEREF(__pyx_r);
3800
__Pyx_RefNannyFinishContext();
3804
/* "Cython/Compiler/Visitor.py":185
3807
* def visitchildren(self, parent, attrs=None): # <<<<<<<<<<<<<<
3808
* return self._visitchildren(parent, attrs)
3812
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_5visitchildren(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
3813
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_5visitchildren(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
3814
PyObject *__pyx_v_parent = 0;
3815
PyObject *__pyx_v_attrs = 0;
3816
PyObject *__pyx_r = NULL;
3817
PyObject *__pyx_t_1 = NULL;
3818
PyObject *__pyx_t_2 = NULL;
3819
PyObject *__pyx_t_3 = NULL;
3820
struct __pyx_opt_args_6Cython_8Compiler_7Visitor_11TreeVisitor_visitchildren __pyx_t_4;
3821
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__parent,&__pyx_n_s__attrs,0};
3822
__Pyx_RefNannySetupContext("visitchildren");
3823
if (unlikely(__pyx_kwds)) {
3824
Py_ssize_t kw_args = PyDict_Size(__pyx_kwds);
3825
PyObject* values[2] = {0,0};
3826
values[1] = ((PyObject *)Py_None);
3827
switch (PyTuple_GET_SIZE(__pyx_args)) {
3828
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
3829
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
3831
default: goto __pyx_L5_argtuple_error;
3833
switch (PyTuple_GET_SIZE(__pyx_args)) {
3835
values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__parent);
3836
if (likely(values[0])) kw_args--;
3837
else goto __pyx_L5_argtuple_error;
3840
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__attrs);
3841
if (value) { values[1] = value; kw_args--; }
3844
if (unlikely(kw_args > 0)) {
3845
if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "visitchildren") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 185; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
3847
__pyx_v_parent = values[0];
3848
__pyx_v_attrs = values[1];
3850
__pyx_v_attrs = ((PyObject *)Py_None);
3851
switch (PyTuple_GET_SIZE(__pyx_args)) {
3852
case 2: __pyx_v_attrs = PyTuple_GET_ITEM(__pyx_args, 1);
3853
case 1: __pyx_v_parent = PyTuple_GET_ITEM(__pyx_args, 0);
3855
default: goto __pyx_L5_argtuple_error;
3858
goto __pyx_L4_argument_unpacking_done;
3859
__pyx_L5_argtuple_error:;
3860
__Pyx_RaiseArgtupleInvalid("visitchildren", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 185; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
3862
__Pyx_AddTraceback("Cython.Compiler.Visitor.TreeVisitor.visitchildren");
3863
__Pyx_RefNannyFinishContext();
3865
__pyx_L4_argument_unpacking_done:;
3866
__Pyx_XDECREF(__pyx_r);
3867
__pyx_t_1 = __pyx_v_parent;
3868
__Pyx_INCREF(__pyx_t_1);
3869
__pyx_t_2 = __pyx_v_attrs;
3870
__Pyx_INCREF(__pyx_t_2);
3871
__pyx_t_4.__pyx_n = 1;
3872
__pyx_t_4.attrs = __pyx_t_2;
3873
__pyx_t_3 = ((struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_TreeVisitor *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self)->__pyx_vtab)->visitchildren(((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self), __pyx_t_1, 1, &__pyx_t_4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 185; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3874
__Pyx_GOTREF(__pyx_t_3);
3875
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
3876
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
3877
__pyx_r = __pyx_t_3;
3881
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
3884
__Pyx_XDECREF(__pyx_t_1);
3885
__Pyx_XDECREF(__pyx_t_2);
3886
__Pyx_XDECREF(__pyx_t_3);
3887
__Pyx_AddTraceback("Cython.Compiler.Visitor.TreeVisitor.visitchildren");
3890
__Pyx_XGIVEREF(__pyx_r);
3891
__Pyx_RefNannyFinishContext();
3895
/* "Cython/Compiler/Visitor.py":188
3896
* return self._visitchildren(parent, attrs)
3898
* def _visitchildren(self, parent, attrs): # <<<<<<<<<<<<<<
3900
* Visits the children of the given parent. If parent is None, returns
3903
static PyObject *__pyx_f_6Cython_8Compiler_7Visitor_11TreeVisitor__visitchildren(struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *__pyx_v_self, PyObject *__pyx_v_parent, PyObject *__pyx_v_attrs) {
3905
PyObject *__pyx_v_result;
3906
PyObject *__pyx_v_attr;
3907
PyObject *__pyx_v_child;
3908
PyObject *__pyx_v_childretval;
3909
PyObject *__pyx_v_x;
3910
PyObject *__pyx_r = NULL;
3912
PyObject *__pyx_t_2 = NULL;
3913
Py_ssize_t __pyx_t_3;
3914
PyObject *__pyx_t_4 = NULL;
3917
PyObject *__pyx_t_7 = NULL;
3919
Py_ssize_t __pyx_t_9;
3920
PyObject *__pyx_t_10 = NULL;
3921
PyObject *__pyx_t_11 = NULL;
3922
PyObject *__pyx_t_12 = NULL;
3923
__Pyx_RefNannySetupContext("_visitchildren");
3924
__pyx_v_result = ((PyObject*)Py_None); __Pyx_INCREF(Py_None);
3925
__pyx_v_attr = Py_None; __Pyx_INCREF(Py_None);
3926
__pyx_v_child = Py_None; __Pyx_INCREF(Py_None);
3927
__pyx_v_childretval = Py_None; __Pyx_INCREF(Py_None);
3928
__pyx_v_x = Py_None; __Pyx_INCREF(Py_None);
3930
/* "Cython/Compiler/Visitor.py":198
3931
* in an attribute)).
3933
* if parent is None: return None # <<<<<<<<<<<<<<
3935
* for attr in parent.child_attrs:
3937
__pyx_t_1 = (__pyx_v_parent == Py_None);
3939
__Pyx_XDECREF(((PyObject *)__pyx_r));
3940
__Pyx_INCREF(Py_None);
3941
__pyx_r = ((PyObject*)Py_None);
3947
/* "Cython/Compiler/Visitor.py":199
3949
* if parent is None: return None
3950
* result = {} # <<<<<<<<<<<<<<
3951
* for attr in parent.child_attrs:
3952
* if attrs is not None and attr not in attrs: continue
3954
__pyx_t_2 = PyDict_New(); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 199; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3955
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
3956
__Pyx_DECREF(((PyObject *)__pyx_v_result));
3957
__pyx_v_result = __pyx_t_2;
3960
/* "Cython/Compiler/Visitor.py":200
3961
* if parent is None: return None
3963
* for attr in parent.child_attrs: # <<<<<<<<<<<<<<
3964
* if attrs is not None and attr not in attrs: continue
3965
* child = getattr(parent, attr)
3967
__pyx_t_2 = PyObject_GetAttr(__pyx_v_parent, __pyx_n_s__child_attrs); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 200; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3968
__Pyx_GOTREF(__pyx_t_2);
3969
if (PyList_CheckExact(__pyx_t_2) || PyTuple_CheckExact(__pyx_t_2)) {
3970
__pyx_t_3 = 0; __pyx_t_4 = __pyx_t_2; __Pyx_INCREF(__pyx_t_4);
3972
__pyx_t_3 = -1; __pyx_t_4 = PyObject_GetIter(__pyx_t_2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 200; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3973
__Pyx_GOTREF(__pyx_t_4);
3975
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
3977
if (likely(PyList_CheckExact(__pyx_t_4))) {
3978
if (__pyx_t_3 >= PyList_GET_SIZE(__pyx_t_4)) break;
3979
__pyx_t_2 = PyList_GET_ITEM(__pyx_t_4, __pyx_t_3); __Pyx_INCREF(__pyx_t_2); __pyx_t_3++;
3980
} else if (likely(PyTuple_CheckExact(__pyx_t_4))) {
3981
if (__pyx_t_3 >= PyTuple_GET_SIZE(__pyx_t_4)) break;
3982
__pyx_t_2 = PyTuple_GET_ITEM(__pyx_t_4, __pyx_t_3); __Pyx_INCREF(__pyx_t_2); __pyx_t_3++;
3984
__pyx_t_2 = PyIter_Next(__pyx_t_4);
3986
if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 200; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
3989
__Pyx_GOTREF(__pyx_t_2);
3991
__Pyx_DECREF(__pyx_v_attr);
3992
__pyx_v_attr = __pyx_t_2;
3995
/* "Cython/Compiler/Visitor.py":201
3997
* for attr in parent.child_attrs:
3998
* if attrs is not None and attr not in attrs: continue # <<<<<<<<<<<<<<
3999
* child = getattr(parent, attr)
4000
* if child is not None:
4002
__pyx_t_1 = (__pyx_v_attrs != Py_None);
4004
__pyx_t_5 = (__Pyx_NegateNonNeg(PySequence_Contains(__pyx_v_attrs, __pyx_v_attr))); if (unlikely(__pyx_t_5 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 201; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4005
__pyx_t_6 = __pyx_t_5;
4007
__pyx_t_6 = __pyx_t_1;
4010
goto __pyx_L4_continue;
4015
/* "Cython/Compiler/Visitor.py":202
4016
* for attr in parent.child_attrs:
4017
* if attrs is not None and attr not in attrs: continue
4018
* child = getattr(parent, attr) # <<<<<<<<<<<<<<
4019
* if child is not None:
4020
* if type(child) is list:
4022
__pyx_t_2 = __pyx_v_parent;
4023
__Pyx_INCREF(__pyx_t_2);
4024
__pyx_t_7 = PyObject_GetAttr(__pyx_t_2, __pyx_v_attr); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 202; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4025
__Pyx_GOTREF(__pyx_t_7);
4026
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
4027
__Pyx_DECREF(__pyx_v_child);
4028
__pyx_v_child = __pyx_t_7;
4031
/* "Cython/Compiler/Visitor.py":203
4032
* if attrs is not None and attr not in attrs: continue
4033
* child = getattr(parent, attr)
4034
* if child is not None: # <<<<<<<<<<<<<<
4035
* if type(child) is list:
4036
* childretval = [self._visitchild(x, parent, attr, idx) for idx, x in enumerate(child)]
4038
__pyx_t_6 = (__pyx_v_child != Py_None);
4041
/* "Cython/Compiler/Visitor.py":204
4042
* child = getattr(parent, attr)
4043
* if child is not None:
4044
* if type(child) is list: # <<<<<<<<<<<<<<
4045
* childretval = [self._visitchild(x, parent, attr, idx) for idx, x in enumerate(child)]
4048
__pyx_t_6 = (((PyObject *)Py_TYPE(__pyx_v_child)) == ((PyObject *)((PyObject*)(&PyList_Type))));
4051
/* "Cython/Compiler/Visitor.py":205
4052
* if child is not None:
4053
* if type(child) is list:
4054
* childretval = [self._visitchild(x, parent, attr, idx) for idx, x in enumerate(child)] # <<<<<<<<<<<<<<
4056
* childretval = self._visitchild(child, parent, attr, None)
4058
__pyx_t_7 = PyList_New(0); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4059
__Pyx_GOTREF(((PyObject *)__pyx_t_7));
4061
if (PyList_CheckExact(__pyx_v_child) || PyTuple_CheckExact(__pyx_v_child)) {
4062
__pyx_t_9 = 0; __pyx_t_2 = __pyx_v_child; __Pyx_INCREF(__pyx_t_2);
4064
__pyx_t_9 = -1; __pyx_t_2 = PyObject_GetIter(__pyx_v_child); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4065
__Pyx_GOTREF(__pyx_t_2);
4068
if (likely(PyList_CheckExact(__pyx_t_2))) {
4069
if (__pyx_t_9 >= PyList_GET_SIZE(__pyx_t_2)) break;
4070
__pyx_t_10 = PyList_GET_ITEM(__pyx_t_2, __pyx_t_9); __Pyx_INCREF(__pyx_t_10); __pyx_t_9++;
4071
} else if (likely(PyTuple_CheckExact(__pyx_t_2))) {
4072
if (__pyx_t_9 >= PyTuple_GET_SIZE(__pyx_t_2)) break;
4073
__pyx_t_10 = PyTuple_GET_ITEM(__pyx_t_2, __pyx_t_9); __Pyx_INCREF(__pyx_t_10); __pyx_t_9++;
4075
__pyx_t_10 = PyIter_Next(__pyx_t_2);
4077
if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4080
__Pyx_GOTREF(__pyx_t_10);
4082
__Pyx_DECREF(__pyx_v_x);
4083
__pyx_v_x = __pyx_t_10;
4085
__pyx_v_idx = __pyx_t_8;
4086
__pyx_t_8 = (__pyx_t_8 + 1);
4087
__pyx_t_10 = __pyx_v_parent;
4088
__Pyx_INCREF(__pyx_t_10);
4089
__pyx_t_11 = PyInt_FromLong(__pyx_v_idx); if (unlikely(!__pyx_t_11)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4090
__Pyx_GOTREF(__pyx_t_11);
4091
__pyx_t_12 = ((struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self->__pyx_vtab)->_visitchild(__pyx_v_self, __pyx_v_x, __pyx_t_10, __pyx_v_attr, __pyx_t_11); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4092
__Pyx_GOTREF(__pyx_t_12);
4093
__Pyx_DECREF(__pyx_t_10); __pyx_t_10 = 0;
4094
__Pyx_DECREF(__pyx_t_11); __pyx_t_11 = 0;
4095
if (unlikely(PyList_Append(__pyx_t_7, (PyObject*)__pyx_t_12))) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4096
__Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
4098
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
4099
__Pyx_INCREF(((PyObject *)__pyx_t_7));
4100
__Pyx_DECREF(__pyx_v_childretval);
4101
__pyx_v_childretval = ((PyObject *)__pyx_t_7);
4102
__Pyx_DECREF(((PyObject *)__pyx_t_7)); __pyx_t_7 = 0;
4107
/* "Cython/Compiler/Visitor.py":207
4108
* childretval = [self._visitchild(x, parent, attr, idx) for idx, x in enumerate(child)]
4110
* childretval = self._visitchild(child, parent, attr, None) # <<<<<<<<<<<<<<
4111
* assert not isinstance(childretval, list), 'Cannot insert list here: %s in %r' % (attr, parent)
4112
* result[attr] = childretval
4114
__pyx_t_7 = __pyx_v_parent;
4115
__Pyx_INCREF(__pyx_t_7);
4116
__pyx_t_2 = Py_None;
4117
__Pyx_INCREF(__pyx_t_2);
4118
__pyx_t_12 = ((struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self->__pyx_vtab)->_visitchild(__pyx_v_self, __pyx_v_child, __pyx_t_7, __pyx_v_attr, __pyx_t_2); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 207; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4119
__Pyx_GOTREF(__pyx_t_12);
4120
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
4121
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
4122
__Pyx_DECREF(__pyx_v_childretval);
4123
__pyx_v_childretval = __pyx_t_12;
4126
/* "Cython/Compiler/Visitor.py":208
4128
* childretval = self._visitchild(child, parent, attr, None)
4129
* assert not isinstance(childretval, list), 'Cannot insert list here: %s in %r' % (attr, parent) # <<<<<<<<<<<<<<
4130
* result[attr] = childretval
4133
#ifndef CYTHON_WITHOUT_ASSERTIONS
4134
__pyx_t_12 = ((PyObject *)((PyObject*)(&PyList_Type)));
4135
__Pyx_INCREF(__pyx_t_12);
4136
__pyx_t_6 = __Pyx_TypeCheck(__pyx_v_childretval, __pyx_t_12);
4137
__Pyx_DECREF(__pyx_t_12); __pyx_t_12 = 0;
4138
if (unlikely(!(!__pyx_t_6))) {
4139
__pyx_t_12 = PyTuple_New(2); if (unlikely(!__pyx_t_12)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 208; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4140
__Pyx_GOTREF(((PyObject *)__pyx_t_12));
4141
__Pyx_INCREF(__pyx_v_attr);
4142
PyTuple_SET_ITEM(__pyx_t_12, 0, __pyx_v_attr);
4143
__Pyx_GIVEREF(__pyx_v_attr);
4144
__Pyx_INCREF(__pyx_v_parent);
4145
PyTuple_SET_ITEM(__pyx_t_12, 1, __pyx_v_parent);
4146
__Pyx_GIVEREF(__pyx_v_parent);
4147
__pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_19), ((PyObject *)__pyx_t_12)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 208; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4148
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
4149
__Pyx_DECREF(((PyObject *)__pyx_t_12)); __pyx_t_12 = 0;
4150
PyErr_SetObject(PyExc_AssertionError, ((PyObject *)__pyx_t_2));
4151
__Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0;
4152
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 208; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4158
/* "Cython/Compiler/Visitor.py":209
4159
* childretval = self._visitchild(child, parent, attr, None)
4160
* assert not isinstance(childretval, list), 'Cannot insert list here: %s in %r' % (attr, parent)
4161
* result[attr] = childretval # <<<<<<<<<<<<<<
4165
if (PyDict_SetItem(((PyObject *)__pyx_v_result), __pyx_v_attr, __pyx_v_childretval) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 209; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4171
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
4173
/* "Cython/Compiler/Visitor.py":210
4174
* assert not isinstance(childretval, list), 'Cannot insert list here: %s in %r' % (attr, parent)
4175
* result[attr] = childretval
4176
* return result # <<<<<<<<<<<<<<
4180
__Pyx_XDECREF(((PyObject *)__pyx_r));
4181
__Pyx_INCREF(((PyObject *)__pyx_v_result));
4182
__pyx_r = __pyx_v_result;
4185
__pyx_r = ((PyObject*)Py_None); __Pyx_INCREF(Py_None);
4188
__Pyx_XDECREF(__pyx_t_2);
4189
__Pyx_XDECREF(__pyx_t_4);
4190
__Pyx_XDECREF(__pyx_t_7);
4191
__Pyx_XDECREF(__pyx_t_10);
4192
__Pyx_XDECREF(__pyx_t_11);
4193
__Pyx_XDECREF(__pyx_t_12);
4194
__Pyx_AddTraceback("Cython.Compiler.Visitor.TreeVisitor._visitchildren");
4197
__Pyx_DECREF(__pyx_v_result);
4198
__Pyx_DECREF(__pyx_v_attr);
4199
__Pyx_DECREF(__pyx_v_child);
4200
__Pyx_DECREF(__pyx_v_childretval);
4201
__Pyx_DECREF(__pyx_v_x);
4202
__Pyx_XGIVEREF(__pyx_r);
4203
__Pyx_RefNannyFinishContext();
4207
/* "Cython/Compiler/Visitor.pxd":4
4209
* cdef class TreeVisitor:
4210
* cdef public list access_path # <<<<<<<<<<<<<<
4211
* cdef dict dispatch_table
4215
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_11access_path___get__(PyObject *__pyx_v_self); /*proto*/
4216
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_11access_path___get__(PyObject *__pyx_v_self) {
4217
PyObject *__pyx_r = NULL;
4218
__Pyx_RefNannySetupContext("__get__");
4219
__Pyx_XDECREF(__pyx_r);
4220
__Pyx_INCREF(((PyObject *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self)->access_path));
4221
__pyx_r = ((PyObject *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self)->access_path);
4224
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
4226
__Pyx_XGIVEREF(__pyx_r);
4227
__Pyx_RefNannyFinishContext();
4231
static int __pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_11access_path_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/
4232
static int __pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_11access_path_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
4234
__Pyx_RefNannySetupContext("__set__");
4235
if (!(likely(PyList_CheckExact(__pyx_v_value))||((__pyx_v_value) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected list, got %.200s", Py_TYPE(__pyx_v_value)->tp_name), 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 4; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4236
__Pyx_INCREF(__pyx_v_value);
4237
__Pyx_GIVEREF(__pyx_v_value);
4238
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self)->access_path);
4239
__Pyx_DECREF(((PyObject *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self)->access_path));
4240
((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self)->access_path = ((PyObject*)__pyx_v_value);
4245
__Pyx_AddTraceback("Cython.Compiler.Visitor.TreeVisitor.access_path.__set__");
4248
__Pyx_RefNannyFinishContext();
4252
static int __pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_11access_path_2__del__(PyObject *__pyx_v_self); /*proto*/
4253
static int __pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_11access_path_2__del__(PyObject *__pyx_v_self) {
4255
__Pyx_RefNannySetupContext("__del__");
4256
__Pyx_INCREF(Py_None);
4257
__Pyx_GIVEREF(Py_None);
4258
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self)->access_path);
4259
__Pyx_DECREF(((PyObject *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self)->access_path));
4260
((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self)->access_path = ((PyObject*)Py_None);
4263
__Pyx_RefNannyFinishContext();
4267
/* "Cython/Compiler/Visitor.py":233
4268
* are within a StatListNode or similar before doing this.)
4270
* def visitchildren(self, parent, attrs=None): # <<<<<<<<<<<<<<
4271
* result = self._visitchildren(parent, attrs)
4272
* for attr, newnode in result.iteritems():
4275
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_16VisitorTransform_visitchildren(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
4276
static PyObject *__pyx_f_6Cython_8Compiler_7Visitor_16VisitorTransform_visitchildren(struct __pyx_obj_6Cython_8Compiler_7Visitor_VisitorTransform *__pyx_v_self, PyObject *__pyx_v_parent, int __pyx_skip_dispatch, struct __pyx_opt_args_6Cython_8Compiler_7Visitor_16VisitorTransform_visitchildren *__pyx_optional_args) {
4277
PyObject *__pyx_v_attrs = ((PyObject *)Py_None);
4278
PyObject *__pyx_v_result;
4279
PyObject *__pyx_v_attr;
4280
PyObject *__pyx_v_newnode;
4281
PyObject *__pyx_v_newlist;
4282
PyObject *__pyx_v_x;
4283
PyObject *__pyx_r = NULL;
4284
PyObject *__pyx_t_1 = NULL;
4285
PyObject *__pyx_t_2 = NULL;
4286
PyObject *__pyx_t_3 = NULL;
4287
Py_ssize_t __pyx_t_4;
4293
Py_ssize_t __pyx_t_10;
4294
__Pyx_RefNannySetupContext("visitchildren");
4295
if (__pyx_optional_args) {
4296
if (__pyx_optional_args->__pyx_n > 0) {
4297
__pyx_v_attrs = __pyx_optional_args->attrs;
4300
__pyx_v_result = ((PyObject*)Py_None); __Pyx_INCREF(Py_None);
4301
__pyx_v_attr = Py_None; __Pyx_INCREF(Py_None);
4302
__pyx_v_newnode = Py_None; __Pyx_INCREF(Py_None);
4303
__pyx_v_newlist = Py_None; __Pyx_INCREF(Py_None);
4304
__pyx_v_x = Py_None; __Pyx_INCREF(Py_None);
4305
/* Check if called by wrapper */
4306
if (unlikely(__pyx_skip_dispatch)) ;
4307
/* Check if overriden in Python */
4308
else if (unlikely(Py_TYPE(((PyObject *)__pyx_v_self))->tp_dictoffset != 0)) {
4309
__pyx_t_1 = PyObject_GetAttr(((PyObject *)__pyx_v_self), __pyx_n_s__visitchildren); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4310
__Pyx_GOTREF(__pyx_t_1);
4311
if (!PyCFunction_Check(__pyx_t_1) || (PyCFunction_GET_FUNCTION(__pyx_t_1) != (void *)&__pyx_pf_6Cython_8Compiler_7Visitor_16VisitorTransform_visitchildren)) {
4312
__Pyx_XDECREF(__pyx_r);
4313
__pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4314
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
4315
__Pyx_INCREF(__pyx_v_parent);
4316
PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_parent);
4317
__Pyx_GIVEREF(__pyx_v_parent);
4318
__Pyx_INCREF(__pyx_v_attrs);
4319
PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_attrs);
4320
__Pyx_GIVEREF(__pyx_v_attrs);
4321
__pyx_t_3 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4322
__Pyx_GOTREF(__pyx_t_3);
4323
__Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0;
4324
__pyx_r = __pyx_t_3;
4326
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
4329
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
4332
/* "Cython/Compiler/Visitor.py":234
4334
* def visitchildren(self, parent, attrs=None):
4335
* result = self._visitchildren(parent, attrs) # <<<<<<<<<<<<<<
4336
* for attr, newnode in result.iteritems():
4337
* if not type(newnode) is list:
4339
__pyx_t_1 = __pyx_v_parent;
4340
__Pyx_INCREF(__pyx_t_1);
4341
__pyx_t_3 = __pyx_v_attrs;
4342
__Pyx_INCREF(__pyx_t_3);
4343
__pyx_t_2 = ((PyObject *)((struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_VisitorTransform *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base._visitchildren(((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self), __pyx_t_1, __pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 234; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4344
__Pyx_GOTREF(__pyx_t_2);
4345
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
4346
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
4347
__Pyx_DECREF(((PyObject *)__pyx_v_result));
4348
__pyx_v_result = ((PyObject*)__pyx_t_2);
4351
/* "Cython/Compiler/Visitor.py":235
4352
* def visitchildren(self, parent, attrs=None):
4353
* result = self._visitchildren(parent, attrs)
4354
* for attr, newnode in result.iteritems(): # <<<<<<<<<<<<<<
4355
* if not type(newnode) is list:
4356
* setattr(parent, attr, newnode)
4358
__Pyx_INCREF(((PyObject *)__pyx_v_result));
4359
__Pyx_XDECREF(__pyx_t_2);
4360
__pyx_t_2 = ((PyObject *)__pyx_v_result);
4363
if (!PyDict_Next(__pyx_t_2, (&__pyx_t_4), ((PyObject **)(&__pyx_t_5)), ((PyObject **)(&__pyx_t_6)))) break;
4364
__Pyx_INCREF(((PyObject *)__pyx_t_5));
4365
__Pyx_DECREF(__pyx_v_attr);
4366
__pyx_v_attr = ((PyObject *)__pyx_t_5);
4367
__Pyx_INCREF(((PyObject *)__pyx_t_6));
4368
__Pyx_DECREF(__pyx_v_newnode);
4369
__pyx_v_newnode = ((PyObject *)__pyx_t_6);
4371
/* "Cython/Compiler/Visitor.py":236
4372
* result = self._visitchildren(parent, attrs)
4373
* for attr, newnode in result.iteritems():
4374
* if not type(newnode) is list: # <<<<<<<<<<<<<<
4375
* setattr(parent, attr, newnode)
4378
__pyx_t_7 = (((PyObject *)Py_TYPE(__pyx_v_newnode)) == ((PyObject *)((PyObject*)(&PyList_Type))));
4379
__pyx_t_8 = (!__pyx_t_7);
4382
/* "Cython/Compiler/Visitor.py":237
4383
* for attr, newnode in result.iteritems():
4384
* if not type(newnode) is list:
4385
* setattr(parent, attr, newnode) # <<<<<<<<<<<<<<
4387
* # Flatten the list one level and remove any None
4389
__pyx_t_3 = __pyx_v_parent;
4390
__Pyx_INCREF(__pyx_t_3);
4391
__pyx_t_9 = PyObject_SetAttr(__pyx_t_3, __pyx_v_attr, __pyx_v_newnode); if (unlikely(__pyx_t_9 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 237; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4392
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
4397
/* "Cython/Compiler/Visitor.py":240
4399
* # Flatten the list one level and remove any None
4400
* newlist = [] # <<<<<<<<<<<<<<
4404
__pyx_t_3 = PyList_New(0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 240; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4405
__Pyx_GOTREF(((PyObject *)__pyx_t_3));
4406
__Pyx_DECREF(__pyx_v_newlist);
4407
__pyx_v_newlist = ((PyObject *)__pyx_t_3);
4410
/* "Cython/Compiler/Visitor.py":241
4411
* # Flatten the list one level and remove any None
4413
* for x in newnode: # <<<<<<<<<<<<<<
4415
* if type(x) is list:
4417
if (PyList_CheckExact(__pyx_v_newnode) || PyTuple_CheckExact(__pyx_v_newnode)) {
4418
__pyx_t_10 = 0; __pyx_t_3 = __pyx_v_newnode; __Pyx_INCREF(__pyx_t_3);
4420
__pyx_t_10 = -1; __pyx_t_3 = PyObject_GetIter(__pyx_v_newnode); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 241; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4421
__Pyx_GOTREF(__pyx_t_3);
4424
if (likely(PyList_CheckExact(__pyx_t_3))) {
4425
if (__pyx_t_10 >= PyList_GET_SIZE(__pyx_t_3)) break;
4426
__pyx_t_1 = PyList_GET_ITEM(__pyx_t_3, __pyx_t_10); __Pyx_INCREF(__pyx_t_1); __pyx_t_10++;
4427
} else if (likely(PyTuple_CheckExact(__pyx_t_3))) {
4428
if (__pyx_t_10 >= PyTuple_GET_SIZE(__pyx_t_3)) break;
4429
__pyx_t_1 = PyTuple_GET_ITEM(__pyx_t_3, __pyx_t_10); __Pyx_INCREF(__pyx_t_1); __pyx_t_10++;
4431
__pyx_t_1 = PyIter_Next(__pyx_t_3);
4433
if (unlikely(PyErr_Occurred())) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 241; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4436
__Pyx_GOTREF(__pyx_t_1);
4438
__Pyx_DECREF(__pyx_v_x);
4439
__pyx_v_x = __pyx_t_1;
4442
/* "Cython/Compiler/Visitor.py":242
4445
* if x is not None: # <<<<<<<<<<<<<<
4446
* if type(x) is list:
4449
__pyx_t_8 = (__pyx_v_x != Py_None);
4452
/* "Cython/Compiler/Visitor.py":243
4455
* if type(x) is list: # <<<<<<<<<<<<<<
4459
__pyx_t_8 = (((PyObject *)Py_TYPE(__pyx_v_x)) == ((PyObject *)((PyObject*)(&PyList_Type))));
4462
/* "Cython/Compiler/Visitor.py":244
4464
* if type(x) is list:
4465
* newlist += x # <<<<<<<<<<<<<<
4469
__pyx_t_1 = PyNumber_InPlaceAdd(__pyx_v_newlist, __pyx_v_x); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 244; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4470
__Pyx_GOTREF(__pyx_t_1);
4471
__Pyx_DECREF(__pyx_v_newlist);
4472
__pyx_v_newlist = __pyx_t_1;
4478
/* "Cython/Compiler/Visitor.py":246
4481
* newlist.append(x) # <<<<<<<<<<<<<<
4482
* setattr(parent, attr, newlist)
4485
__pyx_t_1 = __Pyx_PyObject_Append(__pyx_v_newlist, __pyx_v_x); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 246; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4486
__Pyx_GOTREF(__pyx_t_1);
4487
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
4494
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
4496
/* "Cython/Compiler/Visitor.py":247
4499
* setattr(parent, attr, newlist) # <<<<<<<<<<<<<<
4503
__pyx_t_3 = __pyx_v_parent;
4504
__Pyx_INCREF(__pyx_t_3);
4505
__pyx_t_9 = PyObject_SetAttr(__pyx_t_3, __pyx_v_attr, __pyx_v_newlist); if (unlikely(__pyx_t_9 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 247; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4506
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
4510
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
4512
/* "Cython/Compiler/Visitor.py":248
4514
* setattr(parent, attr, newlist)
4515
* return result # <<<<<<<<<<<<<<
4517
* def recurse_to_children(self, node):
4519
__Pyx_XDECREF(__pyx_r);
4520
__Pyx_INCREF(((PyObject *)__pyx_v_result));
4521
__pyx_r = ((PyObject *)__pyx_v_result);
4524
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
4527
__Pyx_XDECREF(__pyx_t_1);
4528
__Pyx_XDECREF(__pyx_t_2);
4529
__Pyx_XDECREF(__pyx_t_3);
4530
__Pyx_AddTraceback("Cython.Compiler.Visitor.VisitorTransform.visitchildren");
4533
__Pyx_DECREF(__pyx_v_result);
4534
__Pyx_DECREF(__pyx_v_attr);
4535
__Pyx_DECREF(__pyx_v_newnode);
4536
__Pyx_DECREF(__pyx_v_newlist);
4537
__Pyx_DECREF(__pyx_v_x);
4538
__Pyx_XGIVEREF(__pyx_r);
4539
__Pyx_RefNannyFinishContext();
4543
/* "Cython/Compiler/Visitor.py":233
4544
* are within a StatListNode or similar before doing this.)
4546
* def visitchildren(self, parent, attrs=None): # <<<<<<<<<<<<<<
4547
* result = self._visitchildren(parent, attrs)
4548
* for attr, newnode in result.iteritems():
4551
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_16VisitorTransform_visitchildren(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
4552
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_16VisitorTransform_visitchildren(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
4553
PyObject *__pyx_v_parent = 0;
4554
PyObject *__pyx_v_attrs = 0;
4555
PyObject *__pyx_r = NULL;
4556
PyObject *__pyx_t_1 = NULL;
4557
PyObject *__pyx_t_2 = NULL;
4558
PyObject *__pyx_t_3 = NULL;
4559
struct __pyx_opt_args_6Cython_8Compiler_7Visitor_11TreeVisitor_visitchildren __pyx_t_4;
4560
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__parent,&__pyx_n_s__attrs,0};
4561
__Pyx_RefNannySetupContext("visitchildren");
4562
if (unlikely(__pyx_kwds)) {
4563
Py_ssize_t kw_args = PyDict_Size(__pyx_kwds);
4564
PyObject* values[2] = {0,0};
4565
values[1] = ((PyObject *)Py_None);
4566
switch (PyTuple_GET_SIZE(__pyx_args)) {
4567
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
4568
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
4570
default: goto __pyx_L5_argtuple_error;
4572
switch (PyTuple_GET_SIZE(__pyx_args)) {
4574
values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__parent);
4575
if (likely(values[0])) kw_args--;
4576
else goto __pyx_L5_argtuple_error;
4579
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__attrs);
4580
if (value) { values[1] = value; kw_args--; }
4583
if (unlikely(kw_args > 0)) {
4584
if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "visitchildren") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
4586
__pyx_v_parent = values[0];
4587
__pyx_v_attrs = values[1];
4589
__pyx_v_attrs = ((PyObject *)Py_None);
4590
switch (PyTuple_GET_SIZE(__pyx_args)) {
4591
case 2: __pyx_v_attrs = PyTuple_GET_ITEM(__pyx_args, 1);
4592
case 1: __pyx_v_parent = PyTuple_GET_ITEM(__pyx_args, 0);
4594
default: goto __pyx_L5_argtuple_error;
4597
goto __pyx_L4_argument_unpacking_done;
4598
__pyx_L5_argtuple_error:;
4599
__Pyx_RaiseArgtupleInvalid("visitchildren", 0, 1, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
4601
__Pyx_AddTraceback("Cython.Compiler.Visitor.VisitorTransform.visitchildren");
4602
__Pyx_RefNannyFinishContext();
4604
__pyx_L4_argument_unpacking_done:;
4605
__Pyx_XDECREF(__pyx_r);
4606
__pyx_t_1 = __pyx_v_parent;
4607
__Pyx_INCREF(__pyx_t_1);
4608
__pyx_t_2 = __pyx_v_attrs;
4609
__Pyx_INCREF(__pyx_t_2);
4610
__pyx_t_4.__pyx_n = 1;
4611
__pyx_t_4.attrs = __pyx_t_2;
4612
__pyx_t_3 = ((struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_VisitorTransform *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_VisitorTransform *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base.visitchildren(((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self), __pyx_t_1, 1, &__pyx_t_4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 233; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4613
__Pyx_GOTREF(__pyx_t_3);
4614
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
4615
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
4616
__pyx_r = __pyx_t_3;
4620
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
4623
__Pyx_XDECREF(__pyx_t_1);
4624
__Pyx_XDECREF(__pyx_t_2);
4625
__Pyx_XDECREF(__pyx_t_3);
4626
__Pyx_AddTraceback("Cython.Compiler.Visitor.VisitorTransform.visitchildren");
4629
__Pyx_XGIVEREF(__pyx_r);
4630
__Pyx_RefNannyFinishContext();
4634
/* "Cython/Compiler/Visitor.py":250
4637
* def recurse_to_children(self, node): # <<<<<<<<<<<<<<
4638
* self.visitchildren(node)
4642
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_16VisitorTransform_1recurse_to_children(PyObject *__pyx_v_self, PyObject *__pyx_v_node); /*proto*/
4643
static PyObject *__pyx_f_6Cython_8Compiler_7Visitor_16VisitorTransform_recurse_to_children(struct __pyx_obj_6Cython_8Compiler_7Visitor_VisitorTransform *__pyx_v_self, PyObject *__pyx_v_node, int __pyx_skip_dispatch) {
4644
PyObject *__pyx_r = NULL;
4645
PyObject *__pyx_t_1 = NULL;
4646
PyObject *__pyx_t_2 = NULL;
4647
PyObject *__pyx_t_3 = NULL;
4648
__Pyx_RefNannySetupContext("recurse_to_children");
4649
/* Check if called by wrapper */
4650
if (unlikely(__pyx_skip_dispatch)) ;
4651
/* Check if overriden in Python */
4652
else if (unlikely(Py_TYPE(((PyObject *)__pyx_v_self))->tp_dictoffset != 0)) {
4653
__pyx_t_1 = PyObject_GetAttr(((PyObject *)__pyx_v_self), __pyx_n_s__recurse_to_children); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 250; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4654
__Pyx_GOTREF(__pyx_t_1);
4655
if (!PyCFunction_Check(__pyx_t_1) || (PyCFunction_GET_FUNCTION(__pyx_t_1) != (void *)&__pyx_pf_6Cython_8Compiler_7Visitor_16VisitorTransform_1recurse_to_children)) {
4656
__Pyx_XDECREF(__pyx_r);
4657
__pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 250; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4658
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
4659
__Pyx_INCREF(__pyx_v_node);
4660
PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_node);
4661
__Pyx_GIVEREF(__pyx_v_node);
4662
__pyx_t_3 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 250; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4663
__Pyx_GOTREF(__pyx_t_3);
4664
__Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0;
4665
__pyx_r = __pyx_t_3;
4667
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
4670
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
4673
/* "Cython/Compiler/Visitor.py":251
4675
* def recurse_to_children(self, node):
4676
* self.visitchildren(node) # <<<<<<<<<<<<<<
4680
__pyx_t_1 = __pyx_v_node;
4681
__Pyx_INCREF(__pyx_t_1);
4682
__pyx_t_3 = ((struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_VisitorTransform *)__pyx_v_self->__pyx_base.__pyx_vtab)->__pyx_base.visitchildren(((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self), __pyx_t_1, 0, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 251; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4683
__Pyx_GOTREF(__pyx_t_3);
4684
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
4685
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
4687
/* "Cython/Compiler/Visitor.py":252
4688
* def recurse_to_children(self, node):
4689
* self.visitchildren(node)
4690
* return node # <<<<<<<<<<<<<<
4692
* def __call__(self, root):
4694
__Pyx_XDECREF(__pyx_r);
4695
__Pyx_INCREF(__pyx_v_node);
4696
__pyx_r = __pyx_v_node;
4699
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
4702
__Pyx_XDECREF(__pyx_t_1);
4703
__Pyx_XDECREF(__pyx_t_2);
4704
__Pyx_XDECREF(__pyx_t_3);
4705
__Pyx_AddTraceback("Cython.Compiler.Visitor.VisitorTransform.recurse_to_children");
4708
__Pyx_XGIVEREF(__pyx_r);
4709
__Pyx_RefNannyFinishContext();
4713
/* "Cython/Compiler/Visitor.py":250
4716
* def recurse_to_children(self, node): # <<<<<<<<<<<<<<
4717
* self.visitchildren(node)
4721
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_16VisitorTransform_1recurse_to_children(PyObject *__pyx_v_self, PyObject *__pyx_v_node); /*proto*/
4722
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_16VisitorTransform_1recurse_to_children(PyObject *__pyx_v_self, PyObject *__pyx_v_node) {
4723
PyObject *__pyx_r = NULL;
4724
PyObject *__pyx_t_1 = NULL;
4725
PyObject *__pyx_t_2 = NULL;
4726
__Pyx_RefNannySetupContext("recurse_to_children");
4727
__Pyx_XDECREF(__pyx_r);
4728
__pyx_t_1 = __pyx_v_node;
4729
__Pyx_INCREF(__pyx_t_1);
4730
__pyx_t_2 = ((struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_VisitorTransform *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_VisitorTransform *)__pyx_v_self)->__pyx_base.__pyx_vtab)->recurse_to_children(((struct __pyx_obj_6Cython_8Compiler_7Visitor_VisitorTransform *)__pyx_v_self), __pyx_t_1, 1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 250; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4731
__Pyx_GOTREF(__pyx_t_2);
4732
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
4733
__pyx_r = __pyx_t_2;
4737
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
4740
__Pyx_XDECREF(__pyx_t_1);
4741
__Pyx_XDECREF(__pyx_t_2);
4742
__Pyx_AddTraceback("Cython.Compiler.Visitor.VisitorTransform.recurse_to_children");
4745
__Pyx_XGIVEREF(__pyx_r);
4746
__Pyx_RefNannyFinishContext();
4750
/* "Cython/Compiler/Visitor.py":254
4753
* def __call__(self, root): # <<<<<<<<<<<<<<
4754
* return self._visit(root)
4758
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_16VisitorTransform_2__call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
4759
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_16VisitorTransform_2__call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
4760
PyObject *__pyx_v_root = 0;
4761
PyObject *__pyx_r = NULL;
4762
PyObject *__pyx_t_1 = NULL;
4763
PyObject *__pyx_t_2 = NULL;
4764
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__root,0};
4765
__Pyx_RefNannySetupContext("__call__");
4766
if (unlikely(__pyx_kwds)) {
4767
Py_ssize_t kw_args = PyDict_Size(__pyx_kwds);
4768
PyObject* values[1] = {0};
4769
switch (PyTuple_GET_SIZE(__pyx_args)) {
4770
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
4772
default: goto __pyx_L5_argtuple_error;
4774
switch (PyTuple_GET_SIZE(__pyx_args)) {
4776
values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__root);
4777
if (likely(values[0])) kw_args--;
4778
else goto __pyx_L5_argtuple_error;
4780
if (unlikely(kw_args > 0)) {
4781
if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__call__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 254; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
4783
__pyx_v_root = values[0];
4784
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
4785
goto __pyx_L5_argtuple_error;
4787
__pyx_v_root = PyTuple_GET_ITEM(__pyx_args, 0);
4789
goto __pyx_L4_argument_unpacking_done;
4790
__pyx_L5_argtuple_error:;
4791
__Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 254; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
4793
__Pyx_AddTraceback("Cython.Compiler.Visitor.VisitorTransform.__call__");
4794
__Pyx_RefNannyFinishContext();
4796
__pyx_L4_argument_unpacking_done:;
4798
/* "Cython/Compiler/Visitor.py":255
4800
* def __call__(self, root):
4801
* return self._visit(root) # <<<<<<<<<<<<<<
4803
* class CythonTransform(VisitorTransform):
4805
__Pyx_XDECREF(__pyx_r);
4806
__pyx_t_1 = __pyx_v_root;
4807
__Pyx_INCREF(__pyx_t_1);
4808
__pyx_t_2 = ((struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_VisitorTransform *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_VisitorTransform *)__pyx_v_self)->__pyx_base.__pyx_vtab)->__pyx_base._visit(((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self), __pyx_t_1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 255; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4809
__Pyx_GOTREF(__pyx_t_2);
4810
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
4811
__pyx_r = __pyx_t_2;
4815
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
4818
__Pyx_XDECREF(__pyx_t_1);
4819
__Pyx_XDECREF(__pyx_t_2);
4820
__Pyx_AddTraceback("Cython.Compiler.Visitor.VisitorTransform.__call__");
4823
__Pyx_XGIVEREF(__pyx_r);
4824
__Pyx_RefNannyFinishContext();
4828
/* "Cython/Compiler/Visitor.py":264
4829
* - Tracks directives in effect in self.current_directives
4831
* def __init__(self, context): # <<<<<<<<<<<<<<
4832
* super(CythonTransform, self).__init__()
4833
* self.context = context
4836
static int __pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
4837
static int __pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
4838
PyObject *__pyx_v_context = 0;
4840
PyObject *__pyx_t_1 = NULL;
4841
PyObject *__pyx_t_2 = NULL;
4842
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__context,0};
4843
__Pyx_RefNannySetupContext("__init__");
4844
if (unlikely(__pyx_kwds)) {
4845
Py_ssize_t kw_args = PyDict_Size(__pyx_kwds);
4846
PyObject* values[1] = {0};
4847
switch (PyTuple_GET_SIZE(__pyx_args)) {
4848
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
4850
default: goto __pyx_L5_argtuple_error;
4852
switch (PyTuple_GET_SIZE(__pyx_args)) {
4854
values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__context);
4855
if (likely(values[0])) kw_args--;
4856
else goto __pyx_L5_argtuple_error;
4858
if (unlikely(kw_args > 0)) {
4859
if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 264; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
4861
__pyx_v_context = values[0];
4862
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
4863
goto __pyx_L5_argtuple_error;
4865
__pyx_v_context = PyTuple_GET_ITEM(__pyx_args, 0);
4867
goto __pyx_L4_argument_unpacking_done;
4868
__pyx_L5_argtuple_error:;
4869
__Pyx_RaiseArgtupleInvalid("__init__", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 264; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
4871
__Pyx_AddTraceback("Cython.Compiler.Visitor.CythonTransform.__init__");
4872
__Pyx_RefNannyFinishContext();
4874
__pyx_L4_argument_unpacking_done:;
4876
/* "Cython/Compiler/Visitor.py":265
4878
* def __init__(self, context):
4879
* super(CythonTransform, self).__init__() # <<<<<<<<<<<<<<
4880
* self.context = context
4883
__pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 265; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4884
__Pyx_GOTREF(((PyObject *)__pyx_t_1));
4885
__Pyx_INCREF(((PyObject *)((PyObject*)__pyx_ptype_6Cython_8Compiler_7Visitor_CythonTransform)));
4886
PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)((PyObject*)__pyx_ptype_6Cython_8Compiler_7Visitor_CythonTransform)));
4887
__Pyx_GIVEREF(((PyObject *)((PyObject*)__pyx_ptype_6Cython_8Compiler_7Visitor_CythonTransform)));
4888
__Pyx_INCREF(__pyx_v_self);
4889
PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_self);
4890
__Pyx_GIVEREF(__pyx_v_self);
4891
__pyx_t_2 = PyObject_Call(__pyx_builtin_super, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 265; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4892
__Pyx_GOTREF(__pyx_t_2);
4893
__Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0;
4894
__pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s____init__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 265; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4895
__Pyx_GOTREF(__pyx_t_1);
4896
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
4897
__pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 265; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4898
__Pyx_GOTREF(__pyx_t_2);
4899
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
4900
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
4902
/* "Cython/Compiler/Visitor.py":266
4903
* def __init__(self, context):
4904
* super(CythonTransform, self).__init__()
4905
* self.context = context # <<<<<<<<<<<<<<
4907
* def __call__(self, node):
4909
__Pyx_INCREF(__pyx_v_context);
4910
__Pyx_GIVEREF(__pyx_v_context);
4911
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->context);
4912
__Pyx_DECREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->context);
4913
((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->context = __pyx_v_context;
4918
__Pyx_XDECREF(__pyx_t_1);
4919
__Pyx_XDECREF(__pyx_t_2);
4920
__Pyx_AddTraceback("Cython.Compiler.Visitor.CythonTransform.__init__");
4923
__Pyx_RefNannyFinishContext();
4927
/* "Cython/Compiler/Visitor.py":268
4928
* self.context = context
4930
* def __call__(self, node): # <<<<<<<<<<<<<<
4932
* if isinstance(node, ModuleNode.ModuleNode):
4935
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_1__call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
4936
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_1__call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
4937
PyObject *__pyx_v_node = 0;
4938
PyObject *__pyx_v_ModuleNode;
4939
PyObject *__pyx_r = NULL;
4940
PyObject *__pyx_t_1 = NULL;
4941
PyObject *__pyx_t_2 = NULL;
4943
PyObject *__pyx_t_4 = NULL;
4944
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__node,0};
4945
__Pyx_RefNannySetupContext("__call__");
4946
if (unlikely(__pyx_kwds)) {
4947
Py_ssize_t kw_args = PyDict_Size(__pyx_kwds);
4948
PyObject* values[1] = {0};
4949
switch (PyTuple_GET_SIZE(__pyx_args)) {
4950
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
4952
default: goto __pyx_L5_argtuple_error;
4954
switch (PyTuple_GET_SIZE(__pyx_args)) {
4956
values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__node);
4957
if (likely(values[0])) kw_args--;
4958
else goto __pyx_L5_argtuple_error;
4960
if (unlikely(kw_args > 0)) {
4961
if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__call__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 268; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
4963
__pyx_v_node = values[0];
4964
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
4965
goto __pyx_L5_argtuple_error;
4967
__pyx_v_node = PyTuple_GET_ITEM(__pyx_args, 0);
4969
goto __pyx_L4_argument_unpacking_done;
4970
__pyx_L5_argtuple_error:;
4971
__Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 268; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
4973
__Pyx_AddTraceback("Cython.Compiler.Visitor.CythonTransform.__call__");
4974
__Pyx_RefNannyFinishContext();
4976
__pyx_L4_argument_unpacking_done:;
4977
__pyx_v_ModuleNode = Py_None; __Pyx_INCREF(Py_None);
4979
/* "Cython/Compiler/Visitor.py":269
4981
* def __call__(self, node):
4982
* import ModuleNode # <<<<<<<<<<<<<<
4983
* if isinstance(node, ModuleNode.ModuleNode):
4984
* self.current_directives = node.directives
4986
__pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__ModuleNode), 0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 269; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
4987
__Pyx_GOTREF(__pyx_t_1);
4988
__Pyx_DECREF(__pyx_v_ModuleNode);
4989
__pyx_v_ModuleNode = __pyx_t_1;
4992
/* "Cython/Compiler/Visitor.py":270
4993
* def __call__(self, node):
4995
* if isinstance(node, ModuleNode.ModuleNode): # <<<<<<<<<<<<<<
4996
* self.current_directives = node.directives
4997
* return super(CythonTransform, self).__call__(node)
4999
__pyx_t_1 = __pyx_v_node;
5000
__Pyx_INCREF(__pyx_t_1);
5001
__pyx_t_2 = PyObject_GetAttr(__pyx_v_ModuleNode, __pyx_n_s__ModuleNode); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 270; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5002
__Pyx_GOTREF(__pyx_t_2);
5003
__pyx_t_3 = PyObject_IsInstance(__pyx_t_1, __pyx_t_2); if (unlikely(__pyx_t_3 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 270; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5004
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
5005
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
5008
/* "Cython/Compiler/Visitor.py":271
5010
* if isinstance(node, ModuleNode.ModuleNode):
5011
* self.current_directives = node.directives # <<<<<<<<<<<<<<
5012
* return super(CythonTransform, self).__call__(node)
5015
__pyx_t_2 = PyObject_GetAttr(__pyx_v_node, __pyx_n_s__directives); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 271; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5016
__Pyx_GOTREF(__pyx_t_2);
5017
__Pyx_GIVEREF(__pyx_t_2);
5018
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->current_directives);
5019
__Pyx_DECREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->current_directives);
5020
((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->current_directives = __pyx_t_2;
5026
/* "Cython/Compiler/Visitor.py":272
5027
* if isinstance(node, ModuleNode.ModuleNode):
5028
* self.current_directives = node.directives
5029
* return super(CythonTransform, self).__call__(node) # <<<<<<<<<<<<<<
5031
* def visit_CompilerDirectivesNode(self, node):
5033
__Pyx_XDECREF(__pyx_r);
5034
__pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 272; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5035
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
5036
__Pyx_INCREF(((PyObject *)((PyObject*)__pyx_ptype_6Cython_8Compiler_7Visitor_CythonTransform)));
5037
PyTuple_SET_ITEM(__pyx_t_2, 0, ((PyObject *)((PyObject*)__pyx_ptype_6Cython_8Compiler_7Visitor_CythonTransform)));
5038
__Pyx_GIVEREF(((PyObject *)((PyObject*)__pyx_ptype_6Cython_8Compiler_7Visitor_CythonTransform)));
5039
__Pyx_INCREF(__pyx_v_self);
5040
PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_self);
5041
__Pyx_GIVEREF(__pyx_v_self);
5042
__pyx_t_1 = PyObject_Call(__pyx_builtin_super, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 272; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5043
__Pyx_GOTREF(__pyx_t_1);
5044
__Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0;
5045
__pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____call__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 272; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5046
__Pyx_GOTREF(__pyx_t_2);
5047
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
5048
__pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 272; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5049
__Pyx_GOTREF(((PyObject *)__pyx_t_1));
5050
__Pyx_INCREF(__pyx_v_node);
5051
PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_node);
5052
__Pyx_GIVEREF(__pyx_v_node);
5053
__pyx_t_4 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 272; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5054
__Pyx_GOTREF(__pyx_t_4);
5055
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
5056
__Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0;
5057
__pyx_r = __pyx_t_4;
5061
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
5064
__Pyx_XDECREF(__pyx_t_1);
5065
__Pyx_XDECREF(__pyx_t_2);
5066
__Pyx_XDECREF(__pyx_t_4);
5067
__Pyx_AddTraceback("Cython.Compiler.Visitor.CythonTransform.__call__");
5070
__Pyx_DECREF(__pyx_v_ModuleNode);
5071
__Pyx_XGIVEREF(__pyx_r);
5072
__Pyx_RefNannyFinishContext();
5076
/* "Cython/Compiler/Visitor.py":274
5077
* return super(CythonTransform, self).__call__(node)
5079
* def visit_CompilerDirectivesNode(self, node): # <<<<<<<<<<<<<<
5080
* old = self.current_directives
5081
* self.current_directives = node.directives
5084
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_2visit_CompilerDirectivesNode(PyObject *__pyx_v_self, PyObject *__pyx_v_node); /*proto*/
5085
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_2visit_CompilerDirectivesNode(PyObject *__pyx_v_self, PyObject *__pyx_v_node) {
5086
PyObject *__pyx_v_old;
5087
PyObject *__pyx_r = NULL;
5088
PyObject *__pyx_t_1 = NULL;
5089
PyObject *__pyx_t_2 = NULL;
5090
__Pyx_RefNannySetupContext("visit_CompilerDirectivesNode");
5091
__pyx_v_old = Py_None; __Pyx_INCREF(Py_None);
5093
/* "Cython/Compiler/Visitor.py":275
5095
* def visit_CompilerDirectivesNode(self, node):
5096
* old = self.current_directives # <<<<<<<<<<<<<<
5097
* self.current_directives = node.directives
5098
* self.visitchildren(node)
5100
__Pyx_INCREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->current_directives);
5101
__Pyx_DECREF(__pyx_v_old);
5102
__pyx_v_old = ((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->current_directives;
5104
/* "Cython/Compiler/Visitor.py":276
5105
* def visit_CompilerDirectivesNode(self, node):
5106
* old = self.current_directives
5107
* self.current_directives = node.directives # <<<<<<<<<<<<<<
5108
* self.visitchildren(node)
5109
* self.current_directives = old
5111
__pyx_t_1 = PyObject_GetAttr(__pyx_v_node, __pyx_n_s__directives); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 276; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5112
__Pyx_GOTREF(__pyx_t_1);
5113
__Pyx_GIVEREF(__pyx_t_1);
5114
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->current_directives);
5115
__Pyx_DECREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->current_directives);
5116
((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->current_directives = __pyx_t_1;
5119
/* "Cython/Compiler/Visitor.py":277
5120
* old = self.current_directives
5121
* self.current_directives = node.directives
5122
* self.visitchildren(node) # <<<<<<<<<<<<<<
5123
* self.current_directives = old
5126
__pyx_t_1 = __pyx_v_node;
5127
__Pyx_INCREF(__pyx_t_1);
5128
__pyx_t_2 = ((struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_CythonTransform *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->__pyx_base.__pyx_base.__pyx_vtab)->__pyx_base.__pyx_base.visitchildren(((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self), __pyx_t_1, 0, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 277; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5129
__Pyx_GOTREF(__pyx_t_2);
5130
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
5131
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
5133
/* "Cython/Compiler/Visitor.py":278
5134
* self.current_directives = node.directives
5135
* self.visitchildren(node)
5136
* self.current_directives = old # <<<<<<<<<<<<<<
5140
__Pyx_INCREF(__pyx_v_old);
5141
__Pyx_GIVEREF(__pyx_v_old);
5142
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->current_directives);
5143
__Pyx_DECREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->current_directives);
5144
((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->current_directives = __pyx_v_old;
5146
/* "Cython/Compiler/Visitor.py":279
5147
* self.visitchildren(node)
5148
* self.current_directives = old
5149
* return node # <<<<<<<<<<<<<<
5151
* def visit_Node(self, node):
5153
__Pyx_XDECREF(__pyx_r);
5154
__Pyx_INCREF(__pyx_v_node);
5155
__pyx_r = __pyx_v_node;
5158
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
5161
__Pyx_XDECREF(__pyx_t_1);
5162
__Pyx_XDECREF(__pyx_t_2);
5163
__Pyx_AddTraceback("Cython.Compiler.Visitor.CythonTransform.visit_CompilerDirectivesNode");
5166
__Pyx_DECREF(__pyx_v_old);
5167
__Pyx_XGIVEREF(__pyx_r);
5168
__Pyx_RefNannyFinishContext();
5172
/* "Cython/Compiler/Visitor.py":281
5175
* def visit_Node(self, node): # <<<<<<<<<<<<<<
5176
* self.visitchildren(node)
5180
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_3visit_Node(PyObject *__pyx_v_self, PyObject *__pyx_v_node); /*proto*/
5181
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_3visit_Node(PyObject *__pyx_v_self, PyObject *__pyx_v_node) {
5182
PyObject *__pyx_r = NULL;
5183
PyObject *__pyx_t_1 = NULL;
5184
PyObject *__pyx_t_2 = NULL;
5185
__Pyx_RefNannySetupContext("visit_Node");
5187
/* "Cython/Compiler/Visitor.py":282
5189
* def visit_Node(self, node):
5190
* self.visitchildren(node) # <<<<<<<<<<<<<<
5194
__pyx_t_1 = __pyx_v_node;
5195
__Pyx_INCREF(__pyx_t_1);
5196
__pyx_t_2 = ((struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_CythonTransform *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->__pyx_base.__pyx_base.__pyx_vtab)->__pyx_base.__pyx_base.visitchildren(((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self), __pyx_t_1, 0, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 282; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5197
__Pyx_GOTREF(__pyx_t_2);
5198
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
5199
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
5201
/* "Cython/Compiler/Visitor.py":283
5202
* def visit_Node(self, node):
5203
* self.visitchildren(node)
5204
* return node # <<<<<<<<<<<<<<
5206
* class ScopeTrackingTransform(CythonTransform):
5208
__Pyx_XDECREF(__pyx_r);
5209
__Pyx_INCREF(__pyx_v_node);
5210
__pyx_r = __pyx_v_node;
5213
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
5216
__Pyx_XDECREF(__pyx_t_1);
5217
__Pyx_XDECREF(__pyx_t_2);
5218
__Pyx_AddTraceback("Cython.Compiler.Visitor.CythonTransform.visit_Node");
5221
__Pyx_XGIVEREF(__pyx_r);
5222
__Pyx_RefNannyFinishContext();
5226
/* "Cython/Compiler/Visitor.pxd":20
5228
* cdef class CythonTransform(VisitorTransform):
5229
* cdef public context # <<<<<<<<<<<<<<
5230
* cdef public current_directives
5234
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_7context___get__(PyObject *__pyx_v_self); /*proto*/
5235
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_7context___get__(PyObject *__pyx_v_self) {
5236
PyObject *__pyx_r = NULL;
5237
__Pyx_RefNannySetupContext("__get__");
5238
__Pyx_XDECREF(__pyx_r);
5239
__Pyx_INCREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->context);
5240
__pyx_r = ((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->context;
5243
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
5245
__Pyx_XGIVEREF(__pyx_r);
5246
__Pyx_RefNannyFinishContext();
5250
static int __pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_7context_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/
5251
static int __pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_7context_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
5253
__Pyx_RefNannySetupContext("__set__");
5254
__Pyx_INCREF(__pyx_v_value);
5255
__Pyx_GIVEREF(__pyx_v_value);
5256
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->context);
5257
__Pyx_DECREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->context);
5258
((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->context = __pyx_v_value;
5261
__Pyx_RefNannyFinishContext();
5265
static int __pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_7context_2__del__(PyObject *__pyx_v_self); /*proto*/
5266
static int __pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_7context_2__del__(PyObject *__pyx_v_self) {
5268
__Pyx_RefNannySetupContext("__del__");
5269
__Pyx_INCREF(Py_None);
5270
__Pyx_GIVEREF(Py_None);
5271
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->context);
5272
__Pyx_DECREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->context);
5273
((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->context = Py_None;
5276
__Pyx_RefNannyFinishContext();
5280
/* "Cython/Compiler/Visitor.pxd":21
5281
* cdef class CythonTransform(VisitorTransform):
5282
* cdef public context
5283
* cdef public current_directives # <<<<<<<<<<<<<<
5285
* cdef class ScopeTrackingTransform(CythonTransform):
5288
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_18current_directives___get__(PyObject *__pyx_v_self); /*proto*/
5289
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_18current_directives___get__(PyObject *__pyx_v_self) {
5290
PyObject *__pyx_r = NULL;
5291
__Pyx_RefNannySetupContext("__get__");
5292
__Pyx_XDECREF(__pyx_r);
5293
__Pyx_INCREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->current_directives);
5294
__pyx_r = ((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->current_directives;
5297
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
5299
__Pyx_XGIVEREF(__pyx_r);
5300
__Pyx_RefNannyFinishContext();
5304
static int __pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_18current_directives_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/
5305
static int __pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_18current_directives_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
5307
__Pyx_RefNannySetupContext("__set__");
5308
__Pyx_INCREF(__pyx_v_value);
5309
__Pyx_GIVEREF(__pyx_v_value);
5310
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->current_directives);
5311
__Pyx_DECREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->current_directives);
5312
((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->current_directives = __pyx_v_value;
5315
__Pyx_RefNannyFinishContext();
5319
static int __pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_18current_directives_2__del__(PyObject *__pyx_v_self); /*proto*/
5320
static int __pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_18current_directives_2__del__(PyObject *__pyx_v_self) {
5322
__Pyx_RefNannySetupContext("__del__");
5323
__Pyx_INCREF(Py_None);
5324
__Pyx_GIVEREF(Py_None);
5325
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->current_directives);
5326
__Pyx_DECREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->current_directives);
5327
((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)__pyx_v_self)->current_directives = Py_None;
5330
__Pyx_RefNannyFinishContext();
5334
/* "Cython/Compiler/Visitor.py":290
5335
* #scope_node: the node that owns the current scope
5337
* def visit_ModuleNode(self, node): # <<<<<<<<<<<<<<
5338
* self.scope_type = 'module'
5339
* self.scope_node = node
5342
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_visit_ModuleNode(PyObject *__pyx_v_self, PyObject *__pyx_v_node); /*proto*/
5343
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_visit_ModuleNode(PyObject *__pyx_v_self, PyObject *__pyx_v_node) {
5344
PyObject *__pyx_r = NULL;
5345
PyObject *__pyx_t_1 = NULL;
5346
PyObject *__pyx_t_2 = NULL;
5347
__Pyx_RefNannySetupContext("visit_ModuleNode");
5349
/* "Cython/Compiler/Visitor.py":291
5351
* def visit_ModuleNode(self, node):
5352
* self.scope_type = 'module' # <<<<<<<<<<<<<<
5353
* self.scope_node = node
5354
* self.visitchildren(node)
5356
__Pyx_INCREF(((PyObject *)__pyx_n_s__module));
5357
__Pyx_GIVEREF(((PyObject *)__pyx_n_s__module));
5358
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->scope_type);
5359
__Pyx_DECREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->scope_type);
5360
((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->scope_type = ((PyObject *)__pyx_n_s__module);
5362
/* "Cython/Compiler/Visitor.py":292
5363
* def visit_ModuleNode(self, node):
5364
* self.scope_type = 'module'
5365
* self.scope_node = node # <<<<<<<<<<<<<<
5366
* self.visitchildren(node)
5369
__Pyx_INCREF(__pyx_v_node);
5370
__Pyx_GIVEREF(__pyx_v_node);
5371
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->scope_node);
5372
__Pyx_DECREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->scope_node);
5373
((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->scope_node = __pyx_v_node;
5375
/* "Cython/Compiler/Visitor.py":293
5376
* self.scope_type = 'module'
5377
* self.scope_node = node
5378
* self.visitchildren(node) # <<<<<<<<<<<<<<
5382
__pyx_t_1 = __pyx_v_node;
5383
__Pyx_INCREF(__pyx_t_1);
5384
__pyx_t_2 = ((struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->__pyx_base.__pyx_base.__pyx_base.__pyx_vtab)->__pyx_base.__pyx_base.__pyx_base.visitchildren(((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self), __pyx_t_1, 0, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 293; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5385
__Pyx_GOTREF(__pyx_t_2);
5386
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
5387
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
5389
/* "Cython/Compiler/Visitor.py":294
5390
* self.scope_node = node
5391
* self.visitchildren(node)
5392
* return node # <<<<<<<<<<<<<<
5394
* def visit_scope(self, node, scope_type):
5396
__Pyx_XDECREF(__pyx_r);
5397
__Pyx_INCREF(__pyx_v_node);
5398
__pyx_r = __pyx_v_node;
5401
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
5404
__Pyx_XDECREF(__pyx_t_1);
5405
__Pyx_XDECREF(__pyx_t_2);
5406
__Pyx_AddTraceback("Cython.Compiler.Visitor.ScopeTrackingTransform.visit_ModuleNode");
5409
__Pyx_XGIVEREF(__pyx_r);
5410
__Pyx_RefNannyFinishContext();
5414
/* "Cython/Compiler/Visitor.py":296
5417
* def visit_scope(self, node, scope_type): # <<<<<<<<<<<<<<
5418
* prev = self.scope_type, self.scope_node
5419
* self.scope_type = scope_type
5422
static PyObject *__pyx_f_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_visit_scope(struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *__pyx_v_self, PyObject *__pyx_v_node, PyObject *__pyx_v_scope_type) {
5423
PyObject *__pyx_v_prev;
5424
PyObject *__pyx_r = NULL;
5425
PyObject *__pyx_t_1 = NULL;
5426
PyObject *__pyx_t_2 = NULL;
5427
__Pyx_RefNannySetupContext("visit_scope");
5428
__pyx_v_prev = ((PyObject*)Py_None); __Pyx_INCREF(Py_None);
5430
/* "Cython/Compiler/Visitor.py":297
5432
* def visit_scope(self, node, scope_type):
5433
* prev = self.scope_type, self.scope_node # <<<<<<<<<<<<<<
5434
* self.scope_type = scope_type
5435
* self.scope_node = node
5437
__pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 297; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5438
__Pyx_GOTREF(((PyObject *)__pyx_t_1));
5439
__Pyx_INCREF(__pyx_v_self->scope_type);
5440
PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_self->scope_type);
5441
__Pyx_GIVEREF(__pyx_v_self->scope_type);
5442
__Pyx_INCREF(__pyx_v_self->scope_node);
5443
PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_self->scope_node);
5444
__Pyx_GIVEREF(__pyx_v_self->scope_node);
5445
__Pyx_DECREF(((PyObject *)__pyx_v_prev));
5446
__pyx_v_prev = __pyx_t_1;
5449
/* "Cython/Compiler/Visitor.py":298
5450
* def visit_scope(self, node, scope_type):
5451
* prev = self.scope_type, self.scope_node
5452
* self.scope_type = scope_type # <<<<<<<<<<<<<<
5453
* self.scope_node = node
5454
* self.visitchildren(node)
5456
__Pyx_INCREF(__pyx_v_scope_type);
5457
__Pyx_GIVEREF(__pyx_v_scope_type);
5458
__Pyx_GOTREF(__pyx_v_self->scope_type);
5459
__Pyx_DECREF(__pyx_v_self->scope_type);
5460
__pyx_v_self->scope_type = __pyx_v_scope_type;
5462
/* "Cython/Compiler/Visitor.py":299
5463
* prev = self.scope_type, self.scope_node
5464
* self.scope_type = scope_type
5465
* self.scope_node = node # <<<<<<<<<<<<<<
5466
* self.visitchildren(node)
5467
* self.scope_type, self.scope_node = prev
5469
__Pyx_INCREF(__pyx_v_node);
5470
__Pyx_GIVEREF(__pyx_v_node);
5471
__Pyx_GOTREF(__pyx_v_self->scope_node);
5472
__Pyx_DECREF(__pyx_v_self->scope_node);
5473
__pyx_v_self->scope_node = __pyx_v_node;
5475
/* "Cython/Compiler/Visitor.py":300
5476
* self.scope_type = scope_type
5477
* self.scope_node = node
5478
* self.visitchildren(node) # <<<<<<<<<<<<<<
5479
* self.scope_type, self.scope_node = prev
5482
__pyx_t_1 = __pyx_v_node;
5483
__Pyx_INCREF(__pyx_t_1);
5484
__pyx_t_2 = ((struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self->__pyx_base.__pyx_base.__pyx_base.__pyx_vtab)->__pyx_base.__pyx_base.__pyx_base.visitchildren(((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self), __pyx_t_1, 0, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 300; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5485
__Pyx_GOTREF(__pyx_t_2);
5486
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
5487
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
5489
/* "Cython/Compiler/Visitor.py":301
5490
* self.scope_node = node
5491
* self.visitchildren(node)
5492
* self.scope_type, self.scope_node = prev # <<<<<<<<<<<<<<
5496
if (likely(((PyObject *)__pyx_v_prev) != Py_None) && likely(PyTuple_GET_SIZE(((PyObject *)__pyx_v_prev)) == 2)) {
5497
PyObject* tuple = ((PyObject *)__pyx_v_prev);
5498
__pyx_t_2 = PyTuple_GET_ITEM(tuple, 0); __Pyx_INCREF(__pyx_t_2);
5499
__pyx_t_1 = PyTuple_GET_ITEM(tuple, 1); __Pyx_INCREF(__pyx_t_1);
5500
__Pyx_GIVEREF(__pyx_t_2);
5501
__Pyx_GOTREF(__pyx_v_self->scope_type);
5502
__Pyx_DECREF(__pyx_v_self->scope_type);
5503
__pyx_v_self->scope_type = __pyx_t_2;
5505
__Pyx_GIVEREF(__pyx_t_1);
5506
__Pyx_GOTREF(__pyx_v_self->scope_node);
5507
__Pyx_DECREF(__pyx_v_self->scope_node);
5508
__pyx_v_self->scope_node = __pyx_t_1;
5511
__Pyx_UnpackTupleError(((PyObject *)__pyx_v_prev), 2);
5512
{__pyx_filename = __pyx_f[0]; __pyx_lineno = 301; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5515
/* "Cython/Compiler/Visitor.py":302
5516
* self.visitchildren(node)
5517
* self.scope_type, self.scope_node = prev
5518
* return node # <<<<<<<<<<<<<<
5520
* def visit_CClassDefNode(self, node):
5522
__Pyx_XDECREF(__pyx_r);
5523
__Pyx_INCREF(__pyx_v_node);
5524
__pyx_r = __pyx_v_node;
5527
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
5530
__Pyx_XDECREF(__pyx_t_1);
5531
__Pyx_XDECREF(__pyx_t_2);
5532
__Pyx_AddTraceback("Cython.Compiler.Visitor.ScopeTrackingTransform.visit_scope");
5535
__Pyx_DECREF(__pyx_v_prev);
5536
__Pyx_XGIVEREF(__pyx_r);
5537
__Pyx_RefNannyFinishContext();
5541
/* "Cython/Compiler/Visitor.py":304
5544
* def visit_CClassDefNode(self, node): # <<<<<<<<<<<<<<
5545
* return self.visit_scope(node, 'cclass')
5549
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_1visit_CClassDefNode(PyObject *__pyx_v_self, PyObject *__pyx_v_node); /*proto*/
5550
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_1visit_CClassDefNode(PyObject *__pyx_v_self, PyObject *__pyx_v_node) {
5551
PyObject *__pyx_r = NULL;
5552
PyObject *__pyx_t_1 = NULL;
5553
PyObject *__pyx_t_2 = NULL;
5554
PyObject *__pyx_t_3 = NULL;
5555
__Pyx_RefNannySetupContext("visit_CClassDefNode");
5557
/* "Cython/Compiler/Visitor.py":305
5559
* def visit_CClassDefNode(self, node):
5560
* return self.visit_scope(node, 'cclass') # <<<<<<<<<<<<<<
5562
* def visit_PyClassDefNode(self, node):
5564
__Pyx_XDECREF(__pyx_r);
5565
__pyx_t_1 = __pyx_v_node;
5566
__Pyx_INCREF(__pyx_t_1);
5567
__pyx_t_2 = ((PyObject *)__pyx_n_s__cclass);
5568
__Pyx_INCREF(__pyx_t_2);
5569
__pyx_t_3 = ((struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->__pyx_base.__pyx_base.__pyx_base.__pyx_vtab)->visit_scope(((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self), __pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 305; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5570
__Pyx_GOTREF(__pyx_t_3);
5571
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
5572
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
5573
__pyx_r = __pyx_t_3;
5577
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
5580
__Pyx_XDECREF(__pyx_t_1);
5581
__Pyx_XDECREF(__pyx_t_2);
5582
__Pyx_XDECREF(__pyx_t_3);
5583
__Pyx_AddTraceback("Cython.Compiler.Visitor.ScopeTrackingTransform.visit_CClassDefNode");
5586
__Pyx_XGIVEREF(__pyx_r);
5587
__Pyx_RefNannyFinishContext();
5591
/* "Cython/Compiler/Visitor.py":307
5592
* return self.visit_scope(node, 'cclass')
5594
* def visit_PyClassDefNode(self, node): # <<<<<<<<<<<<<<
5595
* return self.visit_scope(node, 'pyclass')
5599
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_2visit_PyClassDefNode(PyObject *__pyx_v_self, PyObject *__pyx_v_node); /*proto*/
5600
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_2visit_PyClassDefNode(PyObject *__pyx_v_self, PyObject *__pyx_v_node) {
5601
PyObject *__pyx_r = NULL;
5602
PyObject *__pyx_t_1 = NULL;
5603
PyObject *__pyx_t_2 = NULL;
5604
PyObject *__pyx_t_3 = NULL;
5605
__Pyx_RefNannySetupContext("visit_PyClassDefNode");
5607
/* "Cython/Compiler/Visitor.py":308
5609
* def visit_PyClassDefNode(self, node):
5610
* return self.visit_scope(node, 'pyclass') # <<<<<<<<<<<<<<
5612
* def visit_FuncDefNode(self, node):
5614
__Pyx_XDECREF(__pyx_r);
5615
__pyx_t_1 = __pyx_v_node;
5616
__Pyx_INCREF(__pyx_t_1);
5617
__pyx_t_2 = ((PyObject *)__pyx_n_s__pyclass);
5618
__Pyx_INCREF(__pyx_t_2);
5619
__pyx_t_3 = ((struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->__pyx_base.__pyx_base.__pyx_base.__pyx_vtab)->visit_scope(((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self), __pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 308; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5620
__Pyx_GOTREF(__pyx_t_3);
5621
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
5622
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
5623
__pyx_r = __pyx_t_3;
5627
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
5630
__Pyx_XDECREF(__pyx_t_1);
5631
__Pyx_XDECREF(__pyx_t_2);
5632
__Pyx_XDECREF(__pyx_t_3);
5633
__Pyx_AddTraceback("Cython.Compiler.Visitor.ScopeTrackingTransform.visit_PyClassDefNode");
5636
__Pyx_XGIVEREF(__pyx_r);
5637
__Pyx_RefNannyFinishContext();
5641
/* "Cython/Compiler/Visitor.py":310
5642
* return self.visit_scope(node, 'pyclass')
5644
* def visit_FuncDefNode(self, node): # <<<<<<<<<<<<<<
5645
* return self.visit_scope(node, 'function')
5649
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_3visit_FuncDefNode(PyObject *__pyx_v_self, PyObject *__pyx_v_node); /*proto*/
5650
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_3visit_FuncDefNode(PyObject *__pyx_v_self, PyObject *__pyx_v_node) {
5651
PyObject *__pyx_r = NULL;
5652
PyObject *__pyx_t_1 = NULL;
5653
PyObject *__pyx_t_2 = NULL;
5654
PyObject *__pyx_t_3 = NULL;
5655
__Pyx_RefNannySetupContext("visit_FuncDefNode");
5657
/* "Cython/Compiler/Visitor.py":311
5659
* def visit_FuncDefNode(self, node):
5660
* return self.visit_scope(node, 'function') # <<<<<<<<<<<<<<
5662
* def visit_CStructOrUnionDefNode(self, node):
5664
__Pyx_XDECREF(__pyx_r);
5665
__pyx_t_1 = __pyx_v_node;
5666
__Pyx_INCREF(__pyx_t_1);
5667
__pyx_t_2 = ((PyObject *)__pyx_n_s__function);
5668
__Pyx_INCREF(__pyx_t_2);
5669
__pyx_t_3 = ((struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->__pyx_base.__pyx_base.__pyx_base.__pyx_vtab)->visit_scope(((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self), __pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 311; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5670
__Pyx_GOTREF(__pyx_t_3);
5671
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
5672
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
5673
__pyx_r = __pyx_t_3;
5677
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
5680
__Pyx_XDECREF(__pyx_t_1);
5681
__Pyx_XDECREF(__pyx_t_2);
5682
__Pyx_XDECREF(__pyx_t_3);
5683
__Pyx_AddTraceback("Cython.Compiler.Visitor.ScopeTrackingTransform.visit_FuncDefNode");
5686
__Pyx_XGIVEREF(__pyx_r);
5687
__Pyx_RefNannyFinishContext();
5691
/* "Cython/Compiler/Visitor.py":313
5692
* return self.visit_scope(node, 'function')
5694
* def visit_CStructOrUnionDefNode(self, node): # <<<<<<<<<<<<<<
5695
* return self.visit_scope(node, 'struct')
5699
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_4visit_CStructOrUnionDefNode(PyObject *__pyx_v_self, PyObject *__pyx_v_node); /*proto*/
5700
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_4visit_CStructOrUnionDefNode(PyObject *__pyx_v_self, PyObject *__pyx_v_node) {
5701
PyObject *__pyx_r = NULL;
5702
PyObject *__pyx_t_1 = NULL;
5703
PyObject *__pyx_t_2 = NULL;
5704
PyObject *__pyx_t_3 = NULL;
5705
__Pyx_RefNannySetupContext("visit_CStructOrUnionDefNode");
5707
/* "Cython/Compiler/Visitor.py":314
5709
* def visit_CStructOrUnionDefNode(self, node):
5710
* return self.visit_scope(node, 'struct') # <<<<<<<<<<<<<<
5714
__Pyx_XDECREF(__pyx_r);
5715
__pyx_t_1 = __pyx_v_node;
5716
__Pyx_INCREF(__pyx_t_1);
5717
__pyx_t_2 = ((PyObject *)__pyx_n_s__struct);
5718
__Pyx_INCREF(__pyx_t_2);
5719
__pyx_t_3 = ((struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->__pyx_base.__pyx_base.__pyx_base.__pyx_vtab)->visit_scope(((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self), __pyx_t_1, __pyx_t_2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 314; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5720
__Pyx_GOTREF(__pyx_t_3);
5721
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
5722
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
5723
__pyx_r = __pyx_t_3;
5727
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
5730
__Pyx_XDECREF(__pyx_t_1);
5731
__Pyx_XDECREF(__pyx_t_2);
5732
__Pyx_XDECREF(__pyx_t_3);
5733
__Pyx_AddTraceback("Cython.Compiler.Visitor.ScopeTrackingTransform.visit_CStructOrUnionDefNode");
5736
__Pyx_XGIVEREF(__pyx_r);
5737
__Pyx_RefNannyFinishContext();
5741
/* "Cython/Compiler/Visitor.pxd":24
5743
* cdef class ScopeTrackingTransform(CythonTransform):
5744
* cdef public scope_type # <<<<<<<<<<<<<<
5745
* cdef public scope_node
5746
* cdef visit_scope(self, node, scope_type)
5749
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_10scope_type___get__(PyObject *__pyx_v_self); /*proto*/
5750
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_10scope_type___get__(PyObject *__pyx_v_self) {
5751
PyObject *__pyx_r = NULL;
5752
__Pyx_RefNannySetupContext("__get__");
5753
__Pyx_XDECREF(__pyx_r);
5754
__Pyx_INCREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->scope_type);
5755
__pyx_r = ((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->scope_type;
5758
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
5760
__Pyx_XGIVEREF(__pyx_r);
5761
__Pyx_RefNannyFinishContext();
5765
static int __pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_10scope_type_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/
5766
static int __pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_10scope_type_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
5768
__Pyx_RefNannySetupContext("__set__");
5769
__Pyx_INCREF(__pyx_v_value);
5770
__Pyx_GIVEREF(__pyx_v_value);
5771
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->scope_type);
5772
__Pyx_DECREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->scope_type);
5773
((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->scope_type = __pyx_v_value;
5776
__Pyx_RefNannyFinishContext();
5780
static int __pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_10scope_type_2__del__(PyObject *__pyx_v_self); /*proto*/
5781
static int __pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_10scope_type_2__del__(PyObject *__pyx_v_self) {
5783
__Pyx_RefNannySetupContext("__del__");
5784
__Pyx_INCREF(Py_None);
5785
__Pyx_GIVEREF(Py_None);
5786
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->scope_type);
5787
__Pyx_DECREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->scope_type);
5788
((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->scope_type = Py_None;
5791
__Pyx_RefNannyFinishContext();
5795
/* "Cython/Compiler/Visitor.pxd":25
5796
* cdef class ScopeTrackingTransform(CythonTransform):
5797
* cdef public scope_type
5798
* cdef public scope_node # <<<<<<<<<<<<<<
5799
* cdef visit_scope(self, node, scope_type)
5803
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_10scope_node___get__(PyObject *__pyx_v_self); /*proto*/
5804
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_10scope_node___get__(PyObject *__pyx_v_self) {
5805
PyObject *__pyx_r = NULL;
5806
__Pyx_RefNannySetupContext("__get__");
5807
__Pyx_XDECREF(__pyx_r);
5808
__Pyx_INCREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->scope_node);
5809
__pyx_r = ((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->scope_node;
5812
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
5814
__Pyx_XGIVEREF(__pyx_r);
5815
__Pyx_RefNannyFinishContext();
5819
static int __pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_10scope_node_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/
5820
static int __pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_10scope_node_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
5822
__Pyx_RefNannySetupContext("__set__");
5823
__Pyx_INCREF(__pyx_v_value);
5824
__Pyx_GIVEREF(__pyx_v_value);
5825
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->scope_node);
5826
__Pyx_DECREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->scope_node);
5827
((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->scope_node = __pyx_v_value;
5830
__Pyx_RefNannyFinishContext();
5834
static int __pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_10scope_node_2__del__(PyObject *__pyx_v_self); /*proto*/
5835
static int __pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_10scope_node_2__del__(PyObject *__pyx_v_self) {
5837
__Pyx_RefNannySetupContext("__del__");
5838
__Pyx_INCREF(Py_None);
5839
__Pyx_GIVEREF(Py_None);
5840
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->scope_node);
5841
__Pyx_DECREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->scope_node);
5842
((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)__pyx_v_self)->scope_node = Py_None;
5845
__Pyx_RefNannyFinishContext();
5849
/* "Cython/Compiler/Visitor.py":321
5850
* This transformation keeps a stack of the environments.
5852
* def __call__(self, root): # <<<<<<<<<<<<<<
5853
* self.env_stack = [root.scope]
5854
* return super(EnvTransform, self).__call__(root)
5857
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_12EnvTransform___call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
5858
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_12EnvTransform___call__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
5859
PyObject *__pyx_v_root = 0;
5860
PyObject *__pyx_r = NULL;
5861
PyObject *__pyx_t_1 = NULL;
5862
PyObject *__pyx_t_2 = NULL;
5863
PyObject *__pyx_t_3 = NULL;
5864
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__root,0};
5865
__Pyx_RefNannySetupContext("__call__");
5866
if (unlikely(__pyx_kwds)) {
5867
Py_ssize_t kw_args = PyDict_Size(__pyx_kwds);
5868
PyObject* values[1] = {0};
5869
switch (PyTuple_GET_SIZE(__pyx_args)) {
5870
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
5872
default: goto __pyx_L5_argtuple_error;
5874
switch (PyTuple_GET_SIZE(__pyx_args)) {
5876
values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__root);
5877
if (likely(values[0])) kw_args--;
5878
else goto __pyx_L5_argtuple_error;
5880
if (unlikely(kw_args > 0)) {
5881
if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__call__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 321; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
5883
__pyx_v_root = values[0];
5884
} else if (PyTuple_GET_SIZE(__pyx_args) != 1) {
5885
goto __pyx_L5_argtuple_error;
5887
__pyx_v_root = PyTuple_GET_ITEM(__pyx_args, 0);
5889
goto __pyx_L4_argument_unpacking_done;
5890
__pyx_L5_argtuple_error:;
5891
__Pyx_RaiseArgtupleInvalid("__call__", 1, 1, 1, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 321; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
5893
__Pyx_AddTraceback("Cython.Compiler.Visitor.EnvTransform.__call__");
5894
__Pyx_RefNannyFinishContext();
5896
__pyx_L4_argument_unpacking_done:;
5898
/* "Cython/Compiler/Visitor.py":322
5900
* def __call__(self, root):
5901
* self.env_stack = [root.scope] # <<<<<<<<<<<<<<
5902
* return super(EnvTransform, self).__call__(root)
5905
__pyx_t_1 = PyObject_GetAttr(__pyx_v_root, __pyx_n_s__scope); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 322; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5906
__Pyx_GOTREF(__pyx_t_1);
5907
__pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 322; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5908
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
5909
PyList_SET_ITEM(__pyx_t_2, 0, __pyx_t_1);
5910
__Pyx_GIVEREF(__pyx_t_1);
5912
__Pyx_GIVEREF(((PyObject *)__pyx_t_2));
5913
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_EnvTransform *)__pyx_v_self)->env_stack);
5914
__Pyx_DECREF(((PyObject *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_EnvTransform *)__pyx_v_self)->env_stack));
5915
((struct __pyx_obj_6Cython_8Compiler_7Visitor_EnvTransform *)__pyx_v_self)->env_stack = __pyx_t_2;
5918
/* "Cython/Compiler/Visitor.py":323
5919
* def __call__(self, root):
5920
* self.env_stack = [root.scope]
5921
* return super(EnvTransform, self).__call__(root) # <<<<<<<<<<<<<<
5923
* def current_env(self):
5925
__Pyx_XDECREF(__pyx_r);
5926
__pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 323; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5927
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
5928
__Pyx_INCREF(((PyObject *)((PyObject*)__pyx_ptype_6Cython_8Compiler_7Visitor_EnvTransform)));
5929
PyTuple_SET_ITEM(__pyx_t_2, 0, ((PyObject *)((PyObject*)__pyx_ptype_6Cython_8Compiler_7Visitor_EnvTransform)));
5930
__Pyx_GIVEREF(((PyObject *)((PyObject*)__pyx_ptype_6Cython_8Compiler_7Visitor_EnvTransform)));
5931
__Pyx_INCREF(__pyx_v_self);
5932
PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_v_self);
5933
__Pyx_GIVEREF(__pyx_v_self);
5934
__pyx_t_1 = PyObject_Call(__pyx_builtin_super, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 323; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5935
__Pyx_GOTREF(__pyx_t_1);
5936
__Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0;
5937
__pyx_t_2 = PyObject_GetAttr(__pyx_t_1, __pyx_n_s____call__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 323; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5938
__Pyx_GOTREF(__pyx_t_2);
5939
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
5940
__pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 323; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5941
__Pyx_GOTREF(((PyObject *)__pyx_t_1));
5942
__Pyx_INCREF(__pyx_v_root);
5943
PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_root);
5944
__Pyx_GIVEREF(__pyx_v_root);
5945
__pyx_t_3 = PyObject_Call(__pyx_t_2, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 323; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5946
__Pyx_GOTREF(__pyx_t_3);
5947
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
5948
__Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0;
5949
__pyx_r = __pyx_t_3;
5953
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
5956
__Pyx_XDECREF(__pyx_t_1);
5957
__Pyx_XDECREF(__pyx_t_2);
5958
__Pyx_XDECREF(__pyx_t_3);
5959
__Pyx_AddTraceback("Cython.Compiler.Visitor.EnvTransform.__call__");
5962
__Pyx_XGIVEREF(__pyx_r);
5963
__Pyx_RefNannyFinishContext();
5967
/* "Cython/Compiler/Visitor.py":325
5968
* return super(EnvTransform, self).__call__(root)
5970
* def current_env(self): # <<<<<<<<<<<<<<
5971
* return self.env_stack[-1]
5975
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_12EnvTransform_1current_env(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused); /*proto*/
5976
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_12EnvTransform_1current_env(PyObject *__pyx_v_self, CYTHON_UNUSED PyObject *unused) {
5977
PyObject *__pyx_r = NULL;
5978
PyObject *__pyx_t_1 = NULL;
5979
__Pyx_RefNannySetupContext("current_env");
5981
/* "Cython/Compiler/Visitor.py":326
5983
* def current_env(self):
5984
* return self.env_stack[-1] # <<<<<<<<<<<<<<
5986
* def visit_FuncDefNode(self, node):
5988
__Pyx_XDECREF(__pyx_r);
5989
__pyx_t_1 = __Pyx_GetItemInt_List(((PyObject *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_EnvTransform *)__pyx_v_self)->env_stack), -1, sizeof(long), PyInt_FromLong); if (!__pyx_t_1) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 326; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
5990
__Pyx_GOTREF(__pyx_t_1);
5991
__pyx_r = __pyx_t_1;
5995
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
5998
__Pyx_XDECREF(__pyx_t_1);
5999
__Pyx_AddTraceback("Cython.Compiler.Visitor.EnvTransform.current_env");
6002
__Pyx_XGIVEREF(__pyx_r);
6003
__Pyx_RefNannyFinishContext();
6007
/* "Cython/Compiler/Visitor.py":328
6008
* return self.env_stack[-1]
6010
* def visit_FuncDefNode(self, node): # <<<<<<<<<<<<<<
6011
* self.env_stack.append(node.local_scope)
6012
* self.visitchildren(node)
6015
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_12EnvTransform_2visit_FuncDefNode(PyObject *__pyx_v_self, PyObject *__pyx_v_node); /*proto*/
6016
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_12EnvTransform_2visit_FuncDefNode(PyObject *__pyx_v_self, PyObject *__pyx_v_node) {
6017
PyObject *__pyx_r = NULL;
6018
PyObject *__pyx_t_1 = NULL;
6020
PyObject *__pyx_t_3 = NULL;
6021
__Pyx_RefNannySetupContext("visit_FuncDefNode");
6023
/* "Cython/Compiler/Visitor.py":329
6025
* def visit_FuncDefNode(self, node):
6026
* self.env_stack.append(node.local_scope) # <<<<<<<<<<<<<<
6027
* self.visitchildren(node)
6028
* self.env_stack.pop()
6030
if (unlikely(((struct __pyx_obj_6Cython_8Compiler_7Visitor_EnvTransform *)__pyx_v_self)->env_stack == Py_None)) {
6031
PyErr_SetString(PyExc_AttributeError, "'NoneType' object has no attribute 'append'"); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 329; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6033
__pyx_t_1 = PyObject_GetAttr(__pyx_v_node, __pyx_n_s__local_scope); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 329; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6034
__Pyx_GOTREF(__pyx_t_1);
6035
__pyx_t_2 = PyList_Append(((struct __pyx_obj_6Cython_8Compiler_7Visitor_EnvTransform *)__pyx_v_self)->env_stack, __pyx_t_1); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 329; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6036
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
6038
/* "Cython/Compiler/Visitor.py":330
6039
* def visit_FuncDefNode(self, node):
6040
* self.env_stack.append(node.local_scope)
6041
* self.visitchildren(node) # <<<<<<<<<<<<<<
6042
* self.env_stack.pop()
6045
__pyx_t_1 = __pyx_v_node;
6046
__Pyx_INCREF(__pyx_t_1);
6047
__pyx_t_3 = ((struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_EnvTransform *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_EnvTransform *)__pyx_v_self)->__pyx_base.__pyx_base.__pyx_base.__pyx_vtab)->__pyx_base.__pyx_base.__pyx_base.visitchildren(((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self), __pyx_t_1, 0, NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 330; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6048
__Pyx_GOTREF(__pyx_t_3);
6049
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
6050
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
6052
/* "Cython/Compiler/Visitor.py":331
6053
* self.env_stack.append(node.local_scope)
6054
* self.visitchildren(node)
6055
* self.env_stack.pop() # <<<<<<<<<<<<<<
6059
__pyx_t_3 = __Pyx_PyObject_Pop(((PyObject *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_EnvTransform *)__pyx_v_self)->env_stack)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 331; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6060
__Pyx_GOTREF(__pyx_t_3);
6061
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
6063
/* "Cython/Compiler/Visitor.py":332
6064
* self.visitchildren(node)
6065
* self.env_stack.pop()
6066
* return node # <<<<<<<<<<<<<<
6070
__Pyx_XDECREF(__pyx_r);
6071
__Pyx_INCREF(__pyx_v_node);
6072
__pyx_r = __pyx_v_node;
6075
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
6078
__Pyx_XDECREF(__pyx_t_1);
6079
__Pyx_XDECREF(__pyx_t_3);
6080
__Pyx_AddTraceback("Cython.Compiler.Visitor.EnvTransform.visit_FuncDefNode");
6083
__Pyx_XGIVEREF(__pyx_r);
6084
__Pyx_RefNannyFinishContext();
6088
/* "Cython/Compiler/Visitor.pxd":29
6090
* cdef class EnvTransform(CythonTransform):
6091
* cdef public list env_stack # <<<<<<<<<<<<<<
6093
* cdef class RecursiveNodeReplacer(VisitorTransform):
6096
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_12EnvTransform_9env_stack___get__(PyObject *__pyx_v_self); /*proto*/
6097
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_12EnvTransform_9env_stack___get__(PyObject *__pyx_v_self) {
6098
PyObject *__pyx_r = NULL;
6099
__Pyx_RefNannySetupContext("__get__");
6100
__Pyx_XDECREF(__pyx_r);
6101
__Pyx_INCREF(((PyObject *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_EnvTransform *)__pyx_v_self)->env_stack));
6102
__pyx_r = ((PyObject *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_EnvTransform *)__pyx_v_self)->env_stack);
6105
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
6107
__Pyx_XGIVEREF(__pyx_r);
6108
__Pyx_RefNannyFinishContext();
6112
static int __pyx_pf_6Cython_8Compiler_7Visitor_12EnvTransform_9env_stack_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/
6113
static int __pyx_pf_6Cython_8Compiler_7Visitor_12EnvTransform_9env_stack_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
6115
__Pyx_RefNannySetupContext("__set__");
6116
if (!(likely(PyList_CheckExact(__pyx_v_value))||((__pyx_v_value) == Py_None)||(PyErr_Format(PyExc_TypeError, "Expected list, got %.200s", Py_TYPE(__pyx_v_value)->tp_name), 0))) {__pyx_filename = __pyx_f[1]; __pyx_lineno = 29; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6117
__Pyx_INCREF(__pyx_v_value);
6118
__Pyx_GIVEREF(__pyx_v_value);
6119
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_EnvTransform *)__pyx_v_self)->env_stack);
6120
__Pyx_DECREF(((PyObject *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_EnvTransform *)__pyx_v_self)->env_stack));
6121
((struct __pyx_obj_6Cython_8Compiler_7Visitor_EnvTransform *)__pyx_v_self)->env_stack = ((PyObject*)__pyx_v_value);
6126
__Pyx_AddTraceback("Cython.Compiler.Visitor.EnvTransform.env_stack.__set__");
6129
__Pyx_RefNannyFinishContext();
6133
static int __pyx_pf_6Cython_8Compiler_7Visitor_12EnvTransform_9env_stack_2__del__(PyObject *__pyx_v_self); /*proto*/
6134
static int __pyx_pf_6Cython_8Compiler_7Visitor_12EnvTransform_9env_stack_2__del__(PyObject *__pyx_v_self) {
6136
__Pyx_RefNannySetupContext("__del__");
6137
__Pyx_INCREF(Py_None);
6138
__Pyx_GIVEREF(Py_None);
6139
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_EnvTransform *)__pyx_v_self)->env_stack);
6140
__Pyx_DECREF(((PyObject *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_EnvTransform *)__pyx_v_self)->env_stack));
6141
((struct __pyx_obj_6Cython_8Compiler_7Visitor_EnvTransform *)__pyx_v_self)->env_stack = ((PyObject*)Py_None);
6144
__Pyx_RefNannyFinishContext();
6148
/* "Cython/Compiler/Visitor.py":340
6151
* def __init__(self, orig_node, new_node): # <<<<<<<<<<<<<<
6152
* super(RecursiveNodeReplacer, self).__init__()
6153
* self.orig_node, self.new_node = orig_node, new_node
6156
static int __pyx_pf_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
6157
static int __pyx_pf_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer___init__(PyObject *__pyx_v_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
6158
PyObject *__pyx_v_orig_node = 0;
6159
PyObject *__pyx_v_new_node = 0;
6161
PyObject *__pyx_t_1 = NULL;
6162
PyObject *__pyx_t_2 = NULL;
6163
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__orig_node,&__pyx_n_s__new_node,0};
6164
__Pyx_RefNannySetupContext("__init__");
6165
if (unlikely(__pyx_kwds)) {
6166
Py_ssize_t kw_args = PyDict_Size(__pyx_kwds);
6167
PyObject* values[2] = {0,0};
6168
switch (PyTuple_GET_SIZE(__pyx_args)) {
6169
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
6170
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
6172
default: goto __pyx_L5_argtuple_error;
6174
switch (PyTuple_GET_SIZE(__pyx_args)) {
6176
values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__orig_node);
6177
if (likely(values[0])) kw_args--;
6178
else goto __pyx_L5_argtuple_error;
6180
values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__new_node);
6181
if (likely(values[1])) kw_args--;
6183
__Pyx_RaiseArgtupleInvalid("__init__", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 340; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
6186
if (unlikely(kw_args > 0)) {
6187
if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__init__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 340; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
6189
__pyx_v_orig_node = values[0];
6190
__pyx_v_new_node = values[1];
6191
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
6192
goto __pyx_L5_argtuple_error;
6194
__pyx_v_orig_node = PyTuple_GET_ITEM(__pyx_args, 0);
6195
__pyx_v_new_node = PyTuple_GET_ITEM(__pyx_args, 1);
6197
goto __pyx_L4_argument_unpacking_done;
6198
__pyx_L5_argtuple_error:;
6199
__Pyx_RaiseArgtupleInvalid("__init__", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 340; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
6201
__Pyx_AddTraceback("Cython.Compiler.Visitor.RecursiveNodeReplacer.__init__");
6202
__Pyx_RefNannyFinishContext();
6204
__pyx_L4_argument_unpacking_done:;
6206
/* "Cython/Compiler/Visitor.py":341
6208
* def __init__(self, orig_node, new_node):
6209
* super(RecursiveNodeReplacer, self).__init__() # <<<<<<<<<<<<<<
6210
* self.orig_node, self.new_node = orig_node, new_node
6213
__pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6214
__Pyx_GOTREF(((PyObject *)__pyx_t_1));
6215
__Pyx_INCREF(((PyObject *)((PyObject*)__pyx_ptype_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer)));
6216
PyTuple_SET_ITEM(__pyx_t_1, 0, ((PyObject *)((PyObject*)__pyx_ptype_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer)));
6217
__Pyx_GIVEREF(((PyObject *)((PyObject*)__pyx_ptype_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer)));
6218
__Pyx_INCREF(__pyx_v_self);
6219
PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_self);
6220
__Pyx_GIVEREF(__pyx_v_self);
6221
__pyx_t_2 = PyObject_Call(__pyx_builtin_super, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6222
__Pyx_GOTREF(__pyx_t_2);
6223
__Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0;
6224
__pyx_t_1 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s____init__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6225
__Pyx_GOTREF(__pyx_t_1);
6226
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
6227
__pyx_t_2 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 341; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6228
__Pyx_GOTREF(__pyx_t_2);
6229
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
6230
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
6232
/* "Cython/Compiler/Visitor.py":342
6233
* def __init__(self, orig_node, new_node):
6234
* super(RecursiveNodeReplacer, self).__init__()
6235
* self.orig_node, self.new_node = orig_node, new_node # <<<<<<<<<<<<<<
6237
* def visit_Node(self, node):
6239
__pyx_t_2 = __pyx_v_orig_node;
6240
__Pyx_INCREF(__pyx_t_2);
6241
__pyx_t_1 = __pyx_v_new_node;
6242
__Pyx_INCREF(__pyx_t_1);
6243
__Pyx_GIVEREF(__pyx_t_2);
6244
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_v_self)->orig_node);
6245
__Pyx_DECREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_v_self)->orig_node);
6246
((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_v_self)->orig_node = __pyx_t_2;
6248
__Pyx_GIVEREF(__pyx_t_1);
6249
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_v_self)->new_node);
6250
__Pyx_DECREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_v_self)->new_node);
6251
((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_v_self)->new_node = __pyx_t_1;
6257
__Pyx_XDECREF(__pyx_t_1);
6258
__Pyx_XDECREF(__pyx_t_2);
6259
__Pyx_AddTraceback("Cython.Compiler.Visitor.RecursiveNodeReplacer.__init__");
6262
__Pyx_RefNannyFinishContext();
6266
/* "Cython/Compiler/Visitor.py":344
6267
* self.orig_node, self.new_node = orig_node, new_node
6269
* def visit_Node(self, node): # <<<<<<<<<<<<<<
6270
* self.visitchildren(node)
6271
* if node is self.orig_node:
6274
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_1visit_Node(PyObject *__pyx_v_self, PyObject *__pyx_v_node); /*proto*/
6275
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_1visit_Node(PyObject *__pyx_v_self, PyObject *__pyx_v_node) {
6276
PyObject *__pyx_r = NULL;
6277
PyObject *__pyx_t_1 = NULL;
6278
PyObject *__pyx_t_2 = NULL;
6280
__Pyx_RefNannySetupContext("visit_Node");
6282
/* "Cython/Compiler/Visitor.py":345
6284
* def visit_Node(self, node):
6285
* self.visitchildren(node) # <<<<<<<<<<<<<<
6286
* if node is self.orig_node:
6287
* return self.new_node
6289
__pyx_t_1 = __pyx_v_node;
6290
__Pyx_INCREF(__pyx_t_1);
6291
__pyx_t_2 = ((struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_v_self)->__pyx_base.__pyx_base.__pyx_vtab)->__pyx_base.__pyx_base.visitchildren(((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)__pyx_v_self), __pyx_t_1, 0, NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 345; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6292
__Pyx_GOTREF(__pyx_t_2);
6293
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
6294
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
6296
/* "Cython/Compiler/Visitor.py":346
6297
* def visit_Node(self, node):
6298
* self.visitchildren(node)
6299
* if node is self.orig_node: # <<<<<<<<<<<<<<
6300
* return self.new_node
6303
__pyx_t_3 = (__pyx_v_node == ((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_v_self)->orig_node);
6306
/* "Cython/Compiler/Visitor.py":347
6307
* self.visitchildren(node)
6308
* if node is self.orig_node:
6309
* return self.new_node # <<<<<<<<<<<<<<
6313
__Pyx_XDECREF(__pyx_r);
6314
__Pyx_INCREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_v_self)->new_node);
6315
__pyx_r = ((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_v_self)->new_node;
6321
/* "Cython/Compiler/Visitor.py":349
6322
* return self.new_node
6324
* return node # <<<<<<<<<<<<<<
6326
* def recursively_replace_node(tree, old_node, new_node):
6328
__Pyx_XDECREF(__pyx_r);
6329
__Pyx_INCREF(__pyx_v_node);
6330
__pyx_r = __pyx_v_node;
6335
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
6338
__Pyx_XDECREF(__pyx_t_1);
6339
__Pyx_XDECREF(__pyx_t_2);
6340
__Pyx_AddTraceback("Cython.Compiler.Visitor.RecursiveNodeReplacer.visit_Node");
6343
__Pyx_XGIVEREF(__pyx_r);
6344
__Pyx_RefNannyFinishContext();
6348
/* "Cython/Compiler/Visitor.pxd":32
6350
* cdef class RecursiveNodeReplacer(VisitorTransform):
6351
* cdef public orig_node # <<<<<<<<<<<<<<
6352
* cdef public new_node
6355
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_9orig_node___get__(PyObject *__pyx_v_self); /*proto*/
6356
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_9orig_node___get__(PyObject *__pyx_v_self) {
6357
PyObject *__pyx_r = NULL;
6358
__Pyx_RefNannySetupContext("__get__");
6359
__Pyx_XDECREF(__pyx_r);
6360
__Pyx_INCREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_v_self)->orig_node);
6361
__pyx_r = ((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_v_self)->orig_node;
6364
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
6366
__Pyx_XGIVEREF(__pyx_r);
6367
__Pyx_RefNannyFinishContext();
6371
static int __pyx_pf_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_9orig_node_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/
6372
static int __pyx_pf_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_9orig_node_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
6374
__Pyx_RefNannySetupContext("__set__");
6375
__Pyx_INCREF(__pyx_v_value);
6376
__Pyx_GIVEREF(__pyx_v_value);
6377
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_v_self)->orig_node);
6378
__Pyx_DECREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_v_self)->orig_node);
6379
((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_v_self)->orig_node = __pyx_v_value;
6382
__Pyx_RefNannyFinishContext();
6386
static int __pyx_pf_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_9orig_node_2__del__(PyObject *__pyx_v_self); /*proto*/
6387
static int __pyx_pf_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_9orig_node_2__del__(PyObject *__pyx_v_self) {
6389
__Pyx_RefNannySetupContext("__del__");
6390
__Pyx_INCREF(Py_None);
6391
__Pyx_GIVEREF(Py_None);
6392
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_v_self)->orig_node);
6393
__Pyx_DECREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_v_self)->orig_node);
6394
((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_v_self)->orig_node = Py_None;
6397
__Pyx_RefNannyFinishContext();
6401
/* "Cython/Compiler/Visitor.pxd":33
6402
* cdef class RecursiveNodeReplacer(VisitorTransform):
6403
* cdef public orig_node
6404
* cdef public new_node # <<<<<<<<<<<<<<
6407
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_8new_node___get__(PyObject *__pyx_v_self); /*proto*/
6408
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_8new_node___get__(PyObject *__pyx_v_self) {
6409
PyObject *__pyx_r = NULL;
6410
__Pyx_RefNannySetupContext("__get__");
6411
__Pyx_XDECREF(__pyx_r);
6412
__Pyx_INCREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_v_self)->new_node);
6413
__pyx_r = ((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_v_self)->new_node;
6416
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
6418
__Pyx_XGIVEREF(__pyx_r);
6419
__Pyx_RefNannyFinishContext();
6423
static int __pyx_pf_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_8new_node_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value); /*proto*/
6424
static int __pyx_pf_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_8new_node_1__set__(PyObject *__pyx_v_self, PyObject *__pyx_v_value) {
6426
__Pyx_RefNannySetupContext("__set__");
6427
__Pyx_INCREF(__pyx_v_value);
6428
__Pyx_GIVEREF(__pyx_v_value);
6429
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_v_self)->new_node);
6430
__Pyx_DECREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_v_self)->new_node);
6431
((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_v_self)->new_node = __pyx_v_value;
6434
__Pyx_RefNannyFinishContext();
6438
static int __pyx_pf_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_8new_node_2__del__(PyObject *__pyx_v_self); /*proto*/
6439
static int __pyx_pf_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_8new_node_2__del__(PyObject *__pyx_v_self) {
6441
__Pyx_RefNannySetupContext("__del__");
6442
__Pyx_INCREF(Py_None);
6443
__Pyx_GIVEREF(Py_None);
6444
__Pyx_GOTREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_v_self)->new_node);
6445
__Pyx_DECREF(((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_v_self)->new_node);
6446
((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_v_self)->new_node = Py_None;
6449
__Pyx_RefNannyFinishContext();
6453
/* "Cython/Compiler/Visitor.py":351
6456
* def recursively_replace_node(tree, old_node, new_node): # <<<<<<<<<<<<<<
6457
* replace_in = RecursiveNodeReplacer(old_node, new_node)
6461
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_recursively_replace_node(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
6462
static PyMethodDef __pyx_mdef_6Cython_8Compiler_7Visitor_recursively_replace_node = {__Pyx_NAMESTR("recursively_replace_node"), (PyCFunction)__pyx_pf_6Cython_8Compiler_7Visitor_recursively_replace_node, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
6463
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_recursively_replace_node(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
6464
PyObject *__pyx_v_tree = 0;
6465
PyObject *__pyx_v_old_node = 0;
6466
PyObject *__pyx_v_new_node = 0;
6467
struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *__pyx_v_replace_in;
6468
PyObject *__pyx_r = NULL;
6469
PyObject *__pyx_t_1 = NULL;
6470
PyObject *__pyx_t_2 = NULL;
6471
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__tree,&__pyx_n_s__old_node,&__pyx_n_s__new_node,0};
6472
__Pyx_RefNannySetupContext("recursively_replace_node");
6473
__pyx_self = __pyx_self;
6474
if (unlikely(__pyx_kwds)) {
6475
Py_ssize_t kw_args = PyDict_Size(__pyx_kwds);
6476
PyObject* values[3] = {0,0,0};
6477
switch (PyTuple_GET_SIZE(__pyx_args)) {
6478
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
6479
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
6480
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
6482
default: goto __pyx_L5_argtuple_error;
6484
switch (PyTuple_GET_SIZE(__pyx_args)) {
6486
values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__tree);
6487
if (likely(values[0])) kw_args--;
6488
else goto __pyx_L5_argtuple_error;
6490
values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__old_node);
6491
if (likely(values[1])) kw_args--;
6493
__Pyx_RaiseArgtupleInvalid("recursively_replace_node", 1, 3, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
6496
values[2] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__new_node);
6497
if (likely(values[2])) kw_args--;
6499
__Pyx_RaiseArgtupleInvalid("recursively_replace_node", 1, 3, 3, 2); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
6502
if (unlikely(kw_args > 0)) {
6503
if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "recursively_replace_node") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
6505
__pyx_v_tree = values[0];
6506
__pyx_v_old_node = values[1];
6507
__pyx_v_new_node = values[2];
6508
} else if (PyTuple_GET_SIZE(__pyx_args) != 3) {
6509
goto __pyx_L5_argtuple_error;
6511
__pyx_v_tree = PyTuple_GET_ITEM(__pyx_args, 0);
6512
__pyx_v_old_node = PyTuple_GET_ITEM(__pyx_args, 1);
6513
__pyx_v_new_node = PyTuple_GET_ITEM(__pyx_args, 2);
6515
goto __pyx_L4_argument_unpacking_done;
6516
__pyx_L5_argtuple_error:;
6517
__Pyx_RaiseArgtupleInvalid("recursively_replace_node", 1, 3, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
6519
__Pyx_AddTraceback("Cython.Compiler.Visitor.recursively_replace_node");
6520
__Pyx_RefNannyFinishContext();
6522
__pyx_L4_argument_unpacking_done:;
6523
__pyx_v_replace_in = ((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)Py_None); __Pyx_INCREF(Py_None);
6525
/* "Cython/Compiler/Visitor.py":352
6527
* def recursively_replace_node(tree, old_node, new_node):
6528
* replace_in = RecursiveNodeReplacer(old_node, new_node) # <<<<<<<<<<<<<<
6532
__pyx_t_1 = PyTuple_New(2); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 352; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6533
__Pyx_GOTREF(((PyObject *)__pyx_t_1));
6534
__Pyx_INCREF(__pyx_v_old_node);
6535
PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_old_node);
6536
__Pyx_GIVEREF(__pyx_v_old_node);
6537
__Pyx_INCREF(__pyx_v_new_node);
6538
PyTuple_SET_ITEM(__pyx_t_1, 1, __pyx_v_new_node);
6539
__Pyx_GIVEREF(__pyx_v_new_node);
6540
__pyx_t_2 = PyObject_Call(((PyObject *)((PyObject*)__pyx_ptype_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer)), ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 352; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6541
__Pyx_GOTREF(__pyx_t_2);
6542
__Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0;
6543
__Pyx_DECREF(((PyObject *)__pyx_v_replace_in));
6544
__pyx_v_replace_in = ((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)__pyx_t_2);
6547
/* "Cython/Compiler/Visitor.py":353
6548
* def recursively_replace_node(tree, old_node, new_node):
6549
* replace_in = RecursiveNodeReplacer(old_node, new_node)
6550
* replace_in(tree) # <<<<<<<<<<<<<<
6554
__pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6555
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
6556
__Pyx_INCREF(__pyx_v_tree);
6557
PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_tree);
6558
__Pyx_GIVEREF(__pyx_v_tree);
6559
__pyx_t_1 = PyObject_Call(((PyObject *)__pyx_v_replace_in), ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 353; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6560
__Pyx_GOTREF(__pyx_t_1);
6561
__Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0;
6562
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
6564
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
6567
__Pyx_XDECREF(__pyx_t_1);
6568
__Pyx_XDECREF(__pyx_t_2);
6569
__Pyx_AddTraceback("Cython.Compiler.Visitor.recursively_replace_node");
6572
__Pyx_DECREF((PyObject *)__pyx_v_replace_in);
6573
__Pyx_XGIVEREF(__pyx_r);
6574
__Pyx_RefNannyFinishContext();
6578
/* "Cython/Compiler/Visitor.py":357
6581
* def ensure_statlist(node): # <<<<<<<<<<<<<<
6582
* if not isinstance(node, Nodes.StatListNode):
6583
* node = Nodes.StatListNode(pos=node.pos, stats=[node])
6586
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_1ensure_statlist(PyObject *__pyx_self, PyObject *__pyx_v_node); /*proto*/
6587
static PyMethodDef __pyx_mdef_6Cython_8Compiler_7Visitor_1ensure_statlist = {__Pyx_NAMESTR("ensure_statlist"), (PyCFunction)__pyx_pf_6Cython_8Compiler_7Visitor_1ensure_statlist, METH_O, __Pyx_DOCSTR(0)};
6588
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_1ensure_statlist(PyObject *__pyx_self, PyObject *__pyx_v_node) {
6589
PyObject *__pyx_r = NULL;
6590
PyObject *__pyx_t_1 = NULL;
6591
PyObject *__pyx_t_2 = NULL;
6592
PyObject *__pyx_t_3 = NULL;
6595
__Pyx_RefNannySetupContext("ensure_statlist");
6596
__pyx_self = __pyx_self;
6597
__Pyx_INCREF(__pyx_v_node);
6599
/* "Cython/Compiler/Visitor.py":358
6601
* def ensure_statlist(node):
6602
* if not isinstance(node, Nodes.StatListNode): # <<<<<<<<<<<<<<
6603
* node = Nodes.StatListNode(pos=node.pos, stats=[node])
6606
__pyx_t_1 = __pyx_v_node;
6607
__Pyx_INCREF(__pyx_t_1);
6608
__pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__Nodes); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6609
__Pyx_GOTREF(__pyx_t_2);
6610
__pyx_t_3 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__StatListNode); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6611
__Pyx_GOTREF(__pyx_t_3);
6612
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
6613
__pyx_t_4 = PyObject_IsInstance(__pyx_t_1, __pyx_t_3); if (unlikely(__pyx_t_4 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 358; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6614
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
6615
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
6616
__pyx_t_5 = (!__pyx_t_4);
6619
/* "Cython/Compiler/Visitor.py":359
6620
* def ensure_statlist(node):
6621
* if not isinstance(node, Nodes.StatListNode):
6622
* node = Nodes.StatListNode(pos=node.pos, stats=[node]) # <<<<<<<<<<<<<<
6626
__pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__Nodes); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6627
__Pyx_GOTREF(__pyx_t_3);
6628
__pyx_t_1 = PyObject_GetAttr(__pyx_t_3, __pyx_n_s__StatListNode); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6629
__Pyx_GOTREF(__pyx_t_1);
6630
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
6631
__pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6632
__Pyx_GOTREF(((PyObject *)__pyx_t_3));
6633
__pyx_t_2 = PyObject_GetAttr(__pyx_v_node, __pyx_n_s__pos); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6634
__Pyx_GOTREF(__pyx_t_2);
6635
if (PyDict_SetItem(__pyx_t_3, ((PyObject *)__pyx_n_s__pos), __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6636
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
6637
__pyx_t_2 = PyList_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6638
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
6639
__Pyx_INCREF(__pyx_v_node);
6640
PyList_SET_ITEM(__pyx_t_2, 0, __pyx_v_node);
6641
__Pyx_GIVEREF(__pyx_v_node);
6642
if (PyDict_SetItem(__pyx_t_3, ((PyObject *)__pyx_n_s__stats), ((PyObject *)__pyx_t_2)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6643
__Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0;
6644
__pyx_t_2 = PyEval_CallObjectWithKeywords(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 359; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6645
__Pyx_GOTREF(__pyx_t_2);
6646
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
6647
__Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0;
6648
__Pyx_DECREF(__pyx_v_node);
6649
__pyx_v_node = __pyx_t_2;
6655
/* "Cython/Compiler/Visitor.py":360
6656
* if not isinstance(node, Nodes.StatListNode):
6657
* node = Nodes.StatListNode(pos=node.pos, stats=[node])
6658
* return node # <<<<<<<<<<<<<<
6660
* def replace_node(ptr, value):
6662
__Pyx_XDECREF(__pyx_r);
6663
__Pyx_INCREF(__pyx_v_node);
6664
__pyx_r = __pyx_v_node;
6667
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
6670
__Pyx_XDECREF(__pyx_t_1);
6671
__Pyx_XDECREF(__pyx_t_2);
6672
__Pyx_XDECREF(__pyx_t_3);
6673
__Pyx_AddTraceback("Cython.Compiler.Visitor.ensure_statlist");
6676
__Pyx_DECREF(__pyx_v_node);
6677
__Pyx_XGIVEREF(__pyx_r);
6678
__Pyx_RefNannyFinishContext();
6682
/* "Cython/Compiler/Visitor.py":362
6685
* def replace_node(ptr, value): # <<<<<<<<<<<<<<
6686
* """Replaces a node. ptr is of the form used on the access path stack
6687
* (parent, attrname, listidx|None)
6690
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_2replace_node(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
6691
static char __pyx_doc_6Cython_8Compiler_7Visitor_2replace_node[] = "Replaces a node. ptr is of the form used on the access path stack\n (parent, attrname, listidx|None)\n ";
6692
static PyMethodDef __pyx_mdef_6Cython_8Compiler_7Visitor_2replace_node = {__Pyx_NAMESTR("replace_node"), (PyCFunction)__pyx_pf_6Cython_8Compiler_7Visitor_2replace_node, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(__pyx_doc_6Cython_8Compiler_7Visitor_2replace_node)};
6693
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_2replace_node(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
6694
PyObject *__pyx_v_ptr = 0;
6695
PyObject *__pyx_v_value = 0;
6696
PyObject *__pyx_v_parent;
6697
PyObject *__pyx_v_attrname;
6698
PyObject *__pyx_v_listidx;
6699
PyObject *__pyx_r = NULL;
6700
PyObject *__pyx_t_1 = NULL;
6701
PyObject *__pyx_t_2 = NULL;
6702
PyObject *__pyx_t_3 = NULL;
6703
PyObject *__pyx_t_4 = NULL;
6706
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__ptr,&__pyx_n_s__value,0};
6707
__Pyx_RefNannySetupContext("replace_node");
6708
__pyx_self = __pyx_self;
6709
if (unlikely(__pyx_kwds)) {
6710
Py_ssize_t kw_args = PyDict_Size(__pyx_kwds);
6711
PyObject* values[2] = {0,0};
6712
switch (PyTuple_GET_SIZE(__pyx_args)) {
6713
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
6714
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
6716
default: goto __pyx_L5_argtuple_error;
6718
switch (PyTuple_GET_SIZE(__pyx_args)) {
6720
values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__ptr);
6721
if (likely(values[0])) kw_args--;
6722
else goto __pyx_L5_argtuple_error;
6724
values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__value);
6725
if (likely(values[1])) kw_args--;
6727
__Pyx_RaiseArgtupleInvalid("replace_node", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 362; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
6730
if (unlikely(kw_args > 0)) {
6731
if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "replace_node") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 362; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
6733
__pyx_v_ptr = values[0];
6734
__pyx_v_value = values[1];
6735
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
6736
goto __pyx_L5_argtuple_error;
6738
__pyx_v_ptr = PyTuple_GET_ITEM(__pyx_args, 0);
6739
__pyx_v_value = PyTuple_GET_ITEM(__pyx_args, 1);
6741
goto __pyx_L4_argument_unpacking_done;
6742
__pyx_L5_argtuple_error:;
6743
__Pyx_RaiseArgtupleInvalid("replace_node", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 362; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
6745
__Pyx_AddTraceback("Cython.Compiler.Visitor.replace_node");
6746
__Pyx_RefNannyFinishContext();
6748
__pyx_L4_argument_unpacking_done:;
6749
__pyx_v_parent = Py_None; __Pyx_INCREF(Py_None);
6750
__pyx_v_attrname = Py_None; __Pyx_INCREF(Py_None);
6751
__pyx_v_listidx = Py_None; __Pyx_INCREF(Py_None);
6753
/* "Cython/Compiler/Visitor.py":366
6754
* (parent, attrname, listidx|None)
6756
* parent, attrname, listidx = ptr # <<<<<<<<<<<<<<
6757
* if listidx is None:
6758
* setattr(parent, attrname, value)
6760
if (PyTuple_CheckExact(__pyx_v_ptr) && likely(PyTuple_GET_SIZE(__pyx_v_ptr) == 3)) {
6761
PyObject* tuple = __pyx_v_ptr;
6762
__pyx_t_1 = PyTuple_GET_ITEM(tuple, 0); __Pyx_INCREF(__pyx_t_1);
6763
__pyx_t_2 = PyTuple_GET_ITEM(tuple, 1); __Pyx_INCREF(__pyx_t_2);
6764
__pyx_t_3 = PyTuple_GET_ITEM(tuple, 2); __Pyx_INCREF(__pyx_t_3);
6765
__Pyx_DECREF(__pyx_v_parent);
6766
__pyx_v_parent = __pyx_t_1;
6768
__Pyx_DECREF(__pyx_v_attrname);
6769
__pyx_v_attrname = __pyx_t_2;
6771
__Pyx_DECREF(__pyx_v_listidx);
6772
__pyx_v_listidx = __pyx_t_3;
6775
__pyx_t_4 = PyObject_GetIter(__pyx_v_ptr); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 366; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6776
__Pyx_GOTREF(__pyx_t_4);
6777
__pyx_t_1 = __Pyx_UnpackItem(__pyx_t_4, 0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 366; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6778
__Pyx_GOTREF(__pyx_t_1);
6779
__pyx_t_2 = __Pyx_UnpackItem(__pyx_t_4, 1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 366; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6780
__Pyx_GOTREF(__pyx_t_2);
6781
__pyx_t_3 = __Pyx_UnpackItem(__pyx_t_4, 2); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 366; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6782
__Pyx_GOTREF(__pyx_t_3);
6783
if (__Pyx_EndUnpack(__pyx_t_4, 3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 366; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6784
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
6785
__Pyx_DECREF(__pyx_v_parent);
6786
__pyx_v_parent = __pyx_t_1;
6788
__Pyx_DECREF(__pyx_v_attrname);
6789
__pyx_v_attrname = __pyx_t_2;
6791
__Pyx_DECREF(__pyx_v_listidx);
6792
__pyx_v_listidx = __pyx_t_3;
6796
/* "Cython/Compiler/Visitor.py":367
6798
* parent, attrname, listidx = ptr
6799
* if listidx is None: # <<<<<<<<<<<<<<
6800
* setattr(parent, attrname, value)
6803
__pyx_t_5 = (__pyx_v_listidx == Py_None);
6806
/* "Cython/Compiler/Visitor.py":368
6807
* parent, attrname, listidx = ptr
6808
* if listidx is None:
6809
* setattr(parent, attrname, value) # <<<<<<<<<<<<<<
6811
* getattr(parent, attrname)[listidx] = value
6813
__pyx_t_3 = __pyx_v_value;
6814
__Pyx_INCREF(__pyx_t_3);
6815
__pyx_t_6 = PyObject_SetAttr(__pyx_v_parent, __pyx_v_attrname, __pyx_t_3); if (unlikely(__pyx_t_6 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 368; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6816
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
6821
/* "Cython/Compiler/Visitor.py":370
6822
* setattr(parent, attrname, value)
6824
* getattr(parent, attrname)[listidx] = value # <<<<<<<<<<<<<<
6826
* class PrintTree(TreeVisitor):
6828
__pyx_t_3 = PyObject_GetAttr(__pyx_v_parent, __pyx_v_attrname); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 370; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6829
__Pyx_GOTREF(__pyx_t_3);
6830
if (PyObject_SetItem(__pyx_t_3, __pyx_v_listidx, __pyx_v_value) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 370; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6831
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
6835
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
6838
__Pyx_XDECREF(__pyx_t_1);
6839
__Pyx_XDECREF(__pyx_t_2);
6840
__Pyx_XDECREF(__pyx_t_3);
6841
__Pyx_XDECREF(__pyx_t_4);
6842
__Pyx_AddTraceback("Cython.Compiler.Visitor.replace_node");
6845
__Pyx_DECREF(__pyx_v_parent);
6846
__Pyx_DECREF(__pyx_v_attrname);
6847
__Pyx_DECREF(__pyx_v_listidx);
6848
__Pyx_XGIVEREF(__pyx_r);
6849
__Pyx_RefNannyFinishContext();
6853
/* "Cython/Compiler/Visitor.py":376
6854
* Subclass and override repr_of to provide more information
6856
* def __init__(self): # <<<<<<<<<<<<<<
6857
* TreeVisitor.__init__(self)
6861
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_9PrintTree___init__(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
6862
static PyMethodDef __pyx_mdef_6Cython_8Compiler_7Visitor_9PrintTree___init__ = {__Pyx_NAMESTR("__init__"), (PyCFunction)__pyx_pf_6Cython_8Compiler_7Visitor_9PrintTree___init__, METH_O, __Pyx_DOCSTR(0)};
6863
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_9PrintTree___init__(PyObject *__pyx_self, PyObject *__pyx_v_self) {
6864
PyObject *__pyx_r = NULL;
6865
PyObject *__pyx_t_1 = NULL;
6866
PyObject *__pyx_t_2 = NULL;
6867
PyObject *__pyx_t_3 = NULL;
6868
__Pyx_RefNannySetupContext("__init__");
6869
__pyx_self = __pyx_self;
6871
/* "Cython/Compiler/Visitor.py":377
6873
* def __init__(self):
6874
* TreeVisitor.__init__(self) # <<<<<<<<<<<<<<
6878
__pyx_t_1 = PyObject_GetAttr(((PyObject *)((PyObject*)__pyx_ptype_6Cython_8Compiler_7Visitor_TreeVisitor)), __pyx_n_s____init__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 377; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6879
__Pyx_GOTREF(__pyx_t_1);
6880
__pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 377; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6881
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
6882
__Pyx_INCREF(__pyx_v_self);
6883
PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_self);
6884
__Pyx_GIVEREF(__pyx_v_self);
6885
__pyx_t_3 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 377; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6886
__Pyx_GOTREF(__pyx_t_3);
6887
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
6888
__Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0;
6889
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
6891
/* "Cython/Compiler/Visitor.py":378
6892
* def __init__(self):
6893
* TreeVisitor.__init__(self)
6894
* self._indent = "" # <<<<<<<<<<<<<<
6898
if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s___indent, ((PyObject *)__pyx_kp_s_10)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 378; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6900
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
6903
__Pyx_XDECREF(__pyx_t_1);
6904
__Pyx_XDECREF(__pyx_t_2);
6905
__Pyx_XDECREF(__pyx_t_3);
6906
__Pyx_AddTraceback("Cython.Compiler.Visitor.PrintTree.__init__");
6909
__Pyx_XGIVEREF(__pyx_r);
6910
__Pyx_RefNannyFinishContext();
6914
/* "Cython/Compiler/Visitor.py":380
6917
* def indent(self): # <<<<<<<<<<<<<<
6918
* self._indent += " "
6919
* def unindent(self):
6922
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_9PrintTree_1indent(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
6923
static PyMethodDef __pyx_mdef_6Cython_8Compiler_7Visitor_9PrintTree_1indent = {__Pyx_NAMESTR("indent"), (PyCFunction)__pyx_pf_6Cython_8Compiler_7Visitor_9PrintTree_1indent, METH_O, __Pyx_DOCSTR(0)};
6924
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_9PrintTree_1indent(PyObject *__pyx_self, PyObject *__pyx_v_self) {
6925
PyObject *__pyx_r = NULL;
6926
PyObject *__pyx_t_1 = NULL;
6927
PyObject *__pyx_t_2 = NULL;
6928
__Pyx_RefNannySetupContext("indent");
6929
__pyx_self = __pyx_self;
6931
/* "Cython/Compiler/Visitor.py":381
6934
* self._indent += " " # <<<<<<<<<<<<<<
6935
* def unindent(self):
6936
* self._indent = self._indent[:-2]
6938
__pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s___indent); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 381; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6939
__Pyx_GOTREF(__pyx_t_1);
6940
__pyx_t_2 = PyNumber_InPlaceAdd(__pyx_t_1, ((PyObject *)__pyx_kp_s_20)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 381; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6941
__Pyx_GOTREF(__pyx_t_2);
6942
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
6943
if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s___indent, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 381; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6944
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
6946
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
6949
__Pyx_XDECREF(__pyx_t_1);
6950
__Pyx_XDECREF(__pyx_t_2);
6951
__Pyx_AddTraceback("Cython.Compiler.Visitor.PrintTree.indent");
6954
__Pyx_XGIVEREF(__pyx_r);
6955
__Pyx_RefNannyFinishContext();
6959
/* "Cython/Compiler/Visitor.py":382
6961
* self._indent += " "
6962
* def unindent(self): # <<<<<<<<<<<<<<
6963
* self._indent = self._indent[:-2]
6967
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_9PrintTree_2unindent(PyObject *__pyx_self, PyObject *__pyx_v_self); /*proto*/
6968
static PyMethodDef __pyx_mdef_6Cython_8Compiler_7Visitor_9PrintTree_2unindent = {__Pyx_NAMESTR("unindent"), (PyCFunction)__pyx_pf_6Cython_8Compiler_7Visitor_9PrintTree_2unindent, METH_O, __Pyx_DOCSTR(0)};
6969
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_9PrintTree_2unindent(PyObject *__pyx_self, PyObject *__pyx_v_self) {
6970
PyObject *__pyx_r = NULL;
6971
PyObject *__pyx_t_1 = NULL;
6972
PyObject *__pyx_t_2 = NULL;
6973
__Pyx_RefNannySetupContext("unindent");
6974
__pyx_self = __pyx_self;
6976
/* "Cython/Compiler/Visitor.py":383
6977
* self._indent += " "
6978
* def unindent(self):
6979
* self._indent = self._indent[:-2] # <<<<<<<<<<<<<<
6981
* def __call__(self, tree, phase=None):
6983
__pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s___indent); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 383; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6984
__Pyx_GOTREF(__pyx_t_1);
6985
__pyx_t_2 = __Pyx_PySequence_GetSlice(__pyx_t_1, 0, -2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 383; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6986
__Pyx_GOTREF(__pyx_t_2);
6987
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
6988
if (PyObject_SetAttr(__pyx_v_self, __pyx_n_s___indent, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 383; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
6989
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
6991
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
6994
__Pyx_XDECREF(__pyx_t_1);
6995
__Pyx_XDECREF(__pyx_t_2);
6996
__Pyx_AddTraceback("Cython.Compiler.Visitor.PrintTree.unindent");
6999
__Pyx_XGIVEREF(__pyx_r);
7000
__Pyx_RefNannyFinishContext();
7004
/* "Cython/Compiler/Visitor.py":385
7005
* self._indent = self._indent[:-2]
7007
* def __call__(self, tree, phase=None): # <<<<<<<<<<<<<<
7008
* print("Parse tree dump at phase '%s'" % phase)
7012
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_9PrintTree_3__call__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
7013
static PyMethodDef __pyx_mdef_6Cython_8Compiler_7Visitor_9PrintTree_3__call__ = {__Pyx_NAMESTR("__call__"), (PyCFunction)__pyx_pf_6Cython_8Compiler_7Visitor_9PrintTree_3__call__, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
7014
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_9PrintTree_3__call__(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
7015
PyObject *__pyx_v_self = 0;
7016
PyObject *__pyx_v_tree = 0;
7017
PyObject *__pyx_v_phase = 0;
7018
PyObject *__pyx_r = NULL;
7019
PyObject *__pyx_t_1 = NULL;
7020
PyObject *__pyx_t_2 = NULL;
7021
PyObject *__pyx_t_3 = NULL;
7022
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__tree,&__pyx_n_s__phase,0};
7023
__Pyx_RefNannySetupContext("__call__");
7024
__pyx_self = __pyx_self;
7025
if (unlikely(__pyx_kwds)) {
7026
Py_ssize_t kw_args = PyDict_Size(__pyx_kwds);
7027
PyObject* values[3] = {0,0,0};
7028
values[2] = ((PyObject *)Py_None);
7029
switch (PyTuple_GET_SIZE(__pyx_args)) {
7030
case 3: values[2] = PyTuple_GET_ITEM(__pyx_args, 2);
7031
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
7032
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
7034
default: goto __pyx_L5_argtuple_error;
7036
switch (PyTuple_GET_SIZE(__pyx_args)) {
7038
values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self);
7039
if (likely(values[0])) kw_args--;
7040
else goto __pyx_L5_argtuple_error;
7042
values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__tree);
7043
if (likely(values[1])) kw_args--;
7045
__Pyx_RaiseArgtupleInvalid("__call__", 0, 2, 3, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 385; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
7049
PyObject* value = PyDict_GetItem(__pyx_kwds, __pyx_n_s__phase);
7050
if (value) { values[2] = value; kw_args--; }
7053
if (unlikely(kw_args > 0)) {
7054
if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "__call__") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 385; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
7056
__pyx_v_self = values[0];
7057
__pyx_v_tree = values[1];
7058
__pyx_v_phase = values[2];
7060
__pyx_v_phase = ((PyObject *)Py_None);
7061
switch (PyTuple_GET_SIZE(__pyx_args)) {
7063
__pyx_v_phase = PyTuple_GET_ITEM(__pyx_args, 2);
7065
__pyx_v_tree = PyTuple_GET_ITEM(__pyx_args, 1);
7066
__pyx_v_self = PyTuple_GET_ITEM(__pyx_args, 0);
7068
default: goto __pyx_L5_argtuple_error;
7071
goto __pyx_L4_argument_unpacking_done;
7072
__pyx_L5_argtuple_error:;
7073
__Pyx_RaiseArgtupleInvalid("__call__", 0, 2, 3, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 385; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
7075
__Pyx_AddTraceback("Cython.Compiler.Visitor.PrintTree.__call__");
7076
__Pyx_RefNannyFinishContext();
7078
__pyx_L4_argument_unpacking_done:;
7080
/* "Cython/Compiler/Visitor.py":386
7082
* def __call__(self, tree, phase=None):
7083
* print("Parse tree dump at phase '%s'" % phase) # <<<<<<<<<<<<<<
7087
__pyx_t_1 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_21), __pyx_v_phase); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 386; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7088
__Pyx_GOTREF(((PyObject *)__pyx_t_1));
7089
if (__Pyx_PrintOne(0, ((PyObject *)__pyx_t_1)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 386; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7090
__Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0;
7092
/* "Cython/Compiler/Visitor.py":387
7093
* def __call__(self, tree, phase=None):
7094
* print("Parse tree dump at phase '%s'" % phase)
7095
* self._visit(tree) # <<<<<<<<<<<<<<
7099
__pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s___visit); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 387; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7100
__Pyx_GOTREF(__pyx_t_1);
7101
__pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 387; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7102
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
7103
__Pyx_INCREF(__pyx_v_tree);
7104
PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_tree);
7105
__Pyx_GIVEREF(__pyx_v_tree);
7106
__pyx_t_3 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_t_2), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 387; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7107
__Pyx_GOTREF(__pyx_t_3);
7108
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
7109
__Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0;
7110
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
7112
/* "Cython/Compiler/Visitor.py":388
7113
* print("Parse tree dump at phase '%s'" % phase)
7115
* return tree # <<<<<<<<<<<<<<
7117
* # Don't do anything about process_list, the defaults gives
7119
__Pyx_XDECREF(__pyx_r);
7120
__Pyx_INCREF(__pyx_v_tree);
7121
__pyx_r = __pyx_v_tree;
7124
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
7127
__Pyx_XDECREF(__pyx_t_1);
7128
__Pyx_XDECREF(__pyx_t_2);
7129
__Pyx_XDECREF(__pyx_t_3);
7130
__Pyx_AddTraceback("Cython.Compiler.Visitor.PrintTree.__call__");
7133
__Pyx_XGIVEREF(__pyx_r);
7134
__Pyx_RefNannyFinishContext();
7138
/* "Cython/Compiler/Visitor.py":394
7139
* # under the parent-node, not displaying the list itself in
7141
* def visit_Node(self, node): # <<<<<<<<<<<<<<
7142
* if len(self.access_path) == 0:
7146
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_9PrintTree_4visit_Node(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
7147
static PyMethodDef __pyx_mdef_6Cython_8Compiler_7Visitor_9PrintTree_4visit_Node = {__Pyx_NAMESTR("visit_Node"), (PyCFunction)__pyx_pf_6Cython_8Compiler_7Visitor_9PrintTree_4visit_Node, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
7148
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_9PrintTree_4visit_Node(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
7149
PyObject *__pyx_v_self = 0;
7150
PyObject *__pyx_v_node = 0;
7151
PyObject *__pyx_v_name;
7152
PyObject *__pyx_v_parent;
7153
PyObject *__pyx_v_attr;
7154
PyObject *__pyx_v_idx;
7155
PyObject *__pyx_r = NULL;
7156
PyObject *__pyx_t_1 = NULL;
7157
Py_ssize_t __pyx_t_2;
7159
PyObject *__pyx_t_4 = NULL;
7160
PyObject *__pyx_t_5 = NULL;
7161
PyObject *__pyx_t_6 = NULL;
7162
PyObject *__pyx_t_7 = NULL;
7163
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__node,0};
7164
__Pyx_RefNannySetupContext("visit_Node");
7165
__pyx_self = __pyx_self;
7166
if (unlikely(__pyx_kwds)) {
7167
Py_ssize_t kw_args = PyDict_Size(__pyx_kwds);
7168
PyObject* values[2] = {0,0};
7169
switch (PyTuple_GET_SIZE(__pyx_args)) {
7170
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
7171
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
7173
default: goto __pyx_L5_argtuple_error;
7175
switch (PyTuple_GET_SIZE(__pyx_args)) {
7177
values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self);
7178
if (likely(values[0])) kw_args--;
7179
else goto __pyx_L5_argtuple_error;
7181
values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__node);
7182
if (likely(values[1])) kw_args--;
7184
__Pyx_RaiseArgtupleInvalid("visit_Node", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 394; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
7187
if (unlikely(kw_args > 0)) {
7188
if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "visit_Node") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 394; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
7190
__pyx_v_self = values[0];
7191
__pyx_v_node = values[1];
7192
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
7193
goto __pyx_L5_argtuple_error;
7195
__pyx_v_self = PyTuple_GET_ITEM(__pyx_args, 0);
7196
__pyx_v_node = PyTuple_GET_ITEM(__pyx_args, 1);
7198
goto __pyx_L4_argument_unpacking_done;
7199
__pyx_L5_argtuple_error:;
7200
__Pyx_RaiseArgtupleInvalid("visit_Node", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 394; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
7202
__Pyx_AddTraceback("Cython.Compiler.Visitor.PrintTree.visit_Node");
7203
__Pyx_RefNannyFinishContext();
7205
__pyx_L4_argument_unpacking_done:;
7206
__pyx_v_name = Py_None; __Pyx_INCREF(Py_None);
7207
__pyx_v_parent = Py_None; __Pyx_INCREF(Py_None);
7208
__pyx_v_attr = Py_None; __Pyx_INCREF(Py_None);
7209
__pyx_v_idx = Py_None; __Pyx_INCREF(Py_None);
7211
/* "Cython/Compiler/Visitor.py":395
7213
* def visit_Node(self, node):
7214
* if len(self.access_path) == 0: # <<<<<<<<<<<<<<
7218
__pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__access_path); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 395; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7219
__Pyx_GOTREF(__pyx_t_1);
7220
__pyx_t_2 = PyObject_Length(__pyx_t_1); if (unlikely(__pyx_t_2 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 395; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7221
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
7222
__pyx_t_3 = (__pyx_t_2 == 0);
7225
/* "Cython/Compiler/Visitor.py":396
7226
* def visit_Node(self, node):
7227
* if len(self.access_path) == 0:
7228
* name = "(root)" # <<<<<<<<<<<<<<
7230
* parent, attr, idx = self.access_path[-1]
7232
__Pyx_INCREF(((PyObject *)__pyx_kp_s_22));
7233
__Pyx_DECREF(__pyx_v_name);
7234
__pyx_v_name = ((PyObject *)__pyx_kp_s_22);
7239
/* "Cython/Compiler/Visitor.py":398
7242
* parent, attr, idx = self.access_path[-1] # <<<<<<<<<<<<<<
7243
* if idx is not None:
7244
* name = "%s[%d]" % (attr, idx)
7246
__pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__access_path); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7247
__Pyx_GOTREF(__pyx_t_1);
7248
__pyx_t_4 = __Pyx_GetItemInt(__pyx_t_1, -1, sizeof(long), PyInt_FromLong); if (!__pyx_t_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7249
__Pyx_GOTREF(__pyx_t_4);
7250
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
7251
if (PyTuple_CheckExact(__pyx_t_4) && likely(PyTuple_GET_SIZE(__pyx_t_4) == 3)) {
7252
PyObject* tuple = __pyx_t_4;
7253
__pyx_t_1 = PyTuple_GET_ITEM(tuple, 0); __Pyx_INCREF(__pyx_t_1);
7254
__pyx_t_5 = PyTuple_GET_ITEM(tuple, 1); __Pyx_INCREF(__pyx_t_5);
7255
__pyx_t_6 = PyTuple_GET_ITEM(tuple, 2); __Pyx_INCREF(__pyx_t_6);
7256
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
7257
__Pyx_DECREF(__pyx_v_parent);
7258
__pyx_v_parent = __pyx_t_1;
7260
__Pyx_DECREF(__pyx_v_attr);
7261
__pyx_v_attr = __pyx_t_5;
7263
__Pyx_DECREF(__pyx_v_idx);
7264
__pyx_v_idx = __pyx_t_6;
7267
__pyx_t_7 = PyObject_GetIter(__pyx_t_4); if (unlikely(!__pyx_t_7)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7268
__Pyx_GOTREF(__pyx_t_7);
7269
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
7270
__pyx_t_1 = __Pyx_UnpackItem(__pyx_t_7, 0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7271
__Pyx_GOTREF(__pyx_t_1);
7272
__pyx_t_5 = __Pyx_UnpackItem(__pyx_t_7, 1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7273
__Pyx_GOTREF(__pyx_t_5);
7274
__pyx_t_6 = __Pyx_UnpackItem(__pyx_t_7, 2); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7275
__Pyx_GOTREF(__pyx_t_6);
7276
if (__Pyx_EndUnpack(__pyx_t_7, 3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 398; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7277
__Pyx_DECREF(__pyx_t_7); __pyx_t_7 = 0;
7278
__Pyx_DECREF(__pyx_v_parent);
7279
__pyx_v_parent = __pyx_t_1;
7281
__Pyx_DECREF(__pyx_v_attr);
7282
__pyx_v_attr = __pyx_t_5;
7284
__Pyx_DECREF(__pyx_v_idx);
7285
__pyx_v_idx = __pyx_t_6;
7289
/* "Cython/Compiler/Visitor.py":399
7291
* parent, attr, idx = self.access_path[-1]
7292
* if idx is not None: # <<<<<<<<<<<<<<
7293
* name = "%s[%d]" % (attr, idx)
7296
__pyx_t_3 = (__pyx_v_idx != Py_None);
7299
/* "Cython/Compiler/Visitor.py":400
7300
* parent, attr, idx = self.access_path[-1]
7301
* if idx is not None:
7302
* name = "%s[%d]" % (attr, idx) # <<<<<<<<<<<<<<
7306
__pyx_t_4 = PyTuple_New(2); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 400; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7307
__Pyx_GOTREF(((PyObject *)__pyx_t_4));
7308
__Pyx_INCREF(__pyx_v_attr);
7309
PyTuple_SET_ITEM(__pyx_t_4, 0, __pyx_v_attr);
7310
__Pyx_GIVEREF(__pyx_v_attr);
7311
__Pyx_INCREF(__pyx_v_idx);
7312
PyTuple_SET_ITEM(__pyx_t_4, 1, __pyx_v_idx);
7313
__Pyx_GIVEREF(__pyx_v_idx);
7314
__pyx_t_6 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_23), ((PyObject *)__pyx_t_4)); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 400; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7315
__Pyx_GOTREF(((PyObject *)__pyx_t_6));
7316
__Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0;
7317
__Pyx_DECREF(__pyx_v_name);
7318
__pyx_v_name = ((PyObject *)__pyx_t_6);
7324
/* "Cython/Compiler/Visitor.py":402
7325
* name = "%s[%d]" % (attr, idx)
7327
* name = attr # <<<<<<<<<<<<<<
7328
* print("%s- %s: %s" % (self._indent, name, self.repr_of(node)))
7331
__Pyx_INCREF(__pyx_v_attr);
7332
__Pyx_DECREF(__pyx_v_name);
7333
__pyx_v_name = __pyx_v_attr;
7339
/* "Cython/Compiler/Visitor.py":403
7342
* print("%s- %s: %s" % (self._indent, name, self.repr_of(node))) # <<<<<<<<<<<<<<
7344
* self.visitchildren(node)
7346
__pyx_t_6 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s___indent); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 403; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7347
__Pyx_GOTREF(__pyx_t_6);
7348
__pyx_t_4 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__repr_of); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 403; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7349
__Pyx_GOTREF(__pyx_t_4);
7350
__pyx_t_5 = PyTuple_New(1); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 403; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7351
__Pyx_GOTREF(((PyObject *)__pyx_t_5));
7352
__Pyx_INCREF(__pyx_v_node);
7353
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_v_node);
7354
__Pyx_GIVEREF(__pyx_v_node);
7355
__pyx_t_1 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_t_5), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 403; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7356
__Pyx_GOTREF(__pyx_t_1);
7357
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
7358
__Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0;
7359
__pyx_t_5 = PyTuple_New(3); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 403; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7360
__Pyx_GOTREF(((PyObject *)__pyx_t_5));
7361
PyTuple_SET_ITEM(__pyx_t_5, 0, __pyx_t_6);
7362
__Pyx_GIVEREF(__pyx_t_6);
7363
__Pyx_INCREF(__pyx_v_name);
7364
PyTuple_SET_ITEM(__pyx_t_5, 1, __pyx_v_name);
7365
__Pyx_GIVEREF(__pyx_v_name);
7366
PyTuple_SET_ITEM(__pyx_t_5, 2, __pyx_t_1);
7367
__Pyx_GIVEREF(__pyx_t_1);
7370
__pyx_t_1 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_24), ((PyObject *)__pyx_t_5)); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 403; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7371
__Pyx_GOTREF(((PyObject *)__pyx_t_1));
7372
__Pyx_DECREF(((PyObject *)__pyx_t_5)); __pyx_t_5 = 0;
7373
if (__Pyx_PrintOne(0, ((PyObject *)__pyx_t_1)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 403; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7374
__Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0;
7376
/* "Cython/Compiler/Visitor.py":404
7378
* print("%s- %s: %s" % (self._indent, name, self.repr_of(node)))
7379
* self.indent() # <<<<<<<<<<<<<<
7380
* self.visitchildren(node)
7383
__pyx_t_1 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__indent); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 404; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7384
__Pyx_GOTREF(__pyx_t_1);
7385
__pyx_t_5 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 404; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7386
__Pyx_GOTREF(__pyx_t_5);
7387
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
7388
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
7390
/* "Cython/Compiler/Visitor.py":405
7391
* print("%s- %s: %s" % (self._indent, name, self.repr_of(node)))
7393
* self.visitchildren(node) # <<<<<<<<<<<<<<
7397
__pyx_t_5 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__visitchildren); if (unlikely(!__pyx_t_5)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 405; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7398
__Pyx_GOTREF(__pyx_t_5);
7399
__pyx_t_1 = PyTuple_New(1); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 405; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7400
__Pyx_GOTREF(((PyObject *)__pyx_t_1));
7401
__Pyx_INCREF(__pyx_v_node);
7402
PyTuple_SET_ITEM(__pyx_t_1, 0, __pyx_v_node);
7403
__Pyx_GIVEREF(__pyx_v_node);
7404
__pyx_t_6 = PyObject_Call(__pyx_t_5, ((PyObject *)__pyx_t_1), NULL); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 405; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7405
__Pyx_GOTREF(__pyx_t_6);
7406
__Pyx_DECREF(__pyx_t_5); __pyx_t_5 = 0;
7407
__Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0;
7408
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
7410
/* "Cython/Compiler/Visitor.py":406
7412
* self.visitchildren(node)
7413
* self.unindent() # <<<<<<<<<<<<<<
7417
__pyx_t_6 = PyObject_GetAttr(__pyx_v_self, __pyx_n_s__unindent); if (unlikely(!__pyx_t_6)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 406; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7418
__Pyx_GOTREF(__pyx_t_6);
7419
__pyx_t_1 = PyObject_Call(__pyx_t_6, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 406; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7420
__Pyx_GOTREF(__pyx_t_1);
7421
__Pyx_DECREF(__pyx_t_6); __pyx_t_6 = 0;
7422
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
7424
/* "Cython/Compiler/Visitor.py":407
7425
* self.visitchildren(node)
7427
* return node # <<<<<<<<<<<<<<
7429
* def repr_of(self, node):
7431
__Pyx_XDECREF(__pyx_r);
7432
__Pyx_INCREF(__pyx_v_node);
7433
__pyx_r = __pyx_v_node;
7436
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
7439
__Pyx_XDECREF(__pyx_t_1);
7440
__Pyx_XDECREF(__pyx_t_4);
7441
__Pyx_XDECREF(__pyx_t_5);
7442
__Pyx_XDECREF(__pyx_t_6);
7443
__Pyx_XDECREF(__pyx_t_7);
7444
__Pyx_AddTraceback("Cython.Compiler.Visitor.PrintTree.visit_Node");
7447
__Pyx_DECREF(__pyx_v_name);
7448
__Pyx_DECREF(__pyx_v_parent);
7449
__Pyx_DECREF(__pyx_v_attr);
7450
__Pyx_DECREF(__pyx_v_idx);
7451
__Pyx_XGIVEREF(__pyx_r);
7452
__Pyx_RefNannyFinishContext();
7456
/* "Cython/Compiler/Visitor.py":409
7459
* def repr_of(self, node): # <<<<<<<<<<<<<<
7464
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_9PrintTree_5repr_of(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds); /*proto*/
7465
static PyMethodDef __pyx_mdef_6Cython_8Compiler_7Visitor_9PrintTree_5repr_of = {__Pyx_NAMESTR("repr_of"), (PyCFunction)__pyx_pf_6Cython_8Compiler_7Visitor_9PrintTree_5repr_of, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)};
7466
static PyObject *__pyx_pf_6Cython_8Compiler_7Visitor_9PrintTree_5repr_of(PyObject *__pyx_self, PyObject *__pyx_args, PyObject *__pyx_kwds) {
7467
PyObject *__pyx_v_self = 0;
7468
PyObject *__pyx_v_node = 0;
7469
PyObject *__pyx_v_result;
7470
PyObject *__pyx_v_t;
7471
PyObject *__pyx_v_pos;
7472
PyObject *__pyx_v_path;
7473
PyObject *__pyx_r = NULL;
7475
PyObject *__pyx_t_2 = NULL;
7476
PyObject *__pyx_t_3 = NULL;
7477
PyObject *__pyx_t_4 = NULL;
7478
static PyObject **__pyx_pyargnames[] = {&__pyx_n_s__self,&__pyx_n_s__node,0};
7479
__Pyx_RefNannySetupContext("repr_of");
7480
__pyx_self = __pyx_self;
7481
if (unlikely(__pyx_kwds)) {
7482
Py_ssize_t kw_args = PyDict_Size(__pyx_kwds);
7483
PyObject* values[2] = {0,0};
7484
switch (PyTuple_GET_SIZE(__pyx_args)) {
7485
case 2: values[1] = PyTuple_GET_ITEM(__pyx_args, 1);
7486
case 1: values[0] = PyTuple_GET_ITEM(__pyx_args, 0);
7488
default: goto __pyx_L5_argtuple_error;
7490
switch (PyTuple_GET_SIZE(__pyx_args)) {
7492
values[0] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__self);
7493
if (likely(values[0])) kw_args--;
7494
else goto __pyx_L5_argtuple_error;
7496
values[1] = PyDict_GetItem(__pyx_kwds, __pyx_n_s__node);
7497
if (likely(values[1])) kw_args--;
7499
__Pyx_RaiseArgtupleInvalid("repr_of", 1, 2, 2, 1); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 409; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
7502
if (unlikely(kw_args > 0)) {
7503
if (unlikely(__Pyx_ParseOptionalKeywords(__pyx_kwds, __pyx_pyargnames, 0, values, PyTuple_GET_SIZE(__pyx_args), "repr_of") < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 409; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
7505
__pyx_v_self = values[0];
7506
__pyx_v_node = values[1];
7507
} else if (PyTuple_GET_SIZE(__pyx_args) != 2) {
7508
goto __pyx_L5_argtuple_error;
7510
__pyx_v_self = PyTuple_GET_ITEM(__pyx_args, 0);
7511
__pyx_v_node = PyTuple_GET_ITEM(__pyx_args, 1);
7513
goto __pyx_L4_argument_unpacking_done;
7514
__pyx_L5_argtuple_error:;
7515
__Pyx_RaiseArgtupleInvalid("repr_of", 1, 2, 2, PyTuple_GET_SIZE(__pyx_args)); {__pyx_filename = __pyx_f[0]; __pyx_lineno = 409; __pyx_clineno = __LINE__; goto __pyx_L3_error;}
7517
__Pyx_AddTraceback("Cython.Compiler.Visitor.PrintTree.repr_of");
7518
__Pyx_RefNannyFinishContext();
7520
__pyx_L4_argument_unpacking_done:;
7521
__pyx_v_result = Py_None; __Pyx_INCREF(Py_None);
7522
__pyx_v_t = Py_None; __Pyx_INCREF(Py_None);
7523
__pyx_v_pos = Py_None; __Pyx_INCREF(Py_None);
7524
__pyx_v_path = Py_None; __Pyx_INCREF(Py_None);
7526
/* "Cython/Compiler/Visitor.py":410
7528
* def repr_of(self, node):
7529
* if node is None: # <<<<<<<<<<<<<<
7533
__pyx_t_1 = (__pyx_v_node == Py_None);
7536
/* "Cython/Compiler/Visitor.py":411
7537
* def repr_of(self, node):
7539
* return "(none)" # <<<<<<<<<<<<<<
7541
* result = node.__class__.__name__
7543
__Pyx_XDECREF(__pyx_r);
7544
__Pyx_INCREF(((PyObject *)__pyx_kp_s_25));
7545
__pyx_r = ((PyObject *)__pyx_kp_s_25);
7551
/* "Cython/Compiler/Visitor.py":413
7554
* result = node.__class__.__name__ # <<<<<<<<<<<<<<
7555
* if isinstance(node, ExprNodes.NameNode):
7556
* result += "(type=%s, name=\"%s\")" % (repr(node.type), node.name)
7558
__pyx_t_2 = PyObject_GetAttr(__pyx_v_node, __pyx_n_s____class__); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 413; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7559
__Pyx_GOTREF(__pyx_t_2);
7560
__pyx_t_3 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s____name__); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 413; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7561
__Pyx_GOTREF(__pyx_t_3);
7562
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
7563
__Pyx_DECREF(__pyx_v_result);
7564
__pyx_v_result = __pyx_t_3;
7567
/* "Cython/Compiler/Visitor.py":414
7569
* result = node.__class__.__name__
7570
* if isinstance(node, ExprNodes.NameNode): # <<<<<<<<<<<<<<
7571
* result += "(type=%s, name=\"%s\")" % (repr(node.type), node.name)
7572
* elif isinstance(node, Nodes.DefNode):
7574
__pyx_t_3 = __pyx_v_node;
7575
__Pyx_INCREF(__pyx_t_3);
7576
__pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__ExprNodes); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 414; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7577
__Pyx_GOTREF(__pyx_t_2);
7578
__pyx_t_4 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__NameNode); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 414; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7579
__Pyx_GOTREF(__pyx_t_4);
7580
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
7581
__pyx_t_1 = PyObject_IsInstance(__pyx_t_3, __pyx_t_4); if (unlikely(__pyx_t_1 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 414; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7582
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
7583
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
7586
/* "Cython/Compiler/Visitor.py":415
7587
* result = node.__class__.__name__
7588
* if isinstance(node, ExprNodes.NameNode):
7589
* result += "(type=%s, name=\"%s\")" % (repr(node.type), node.name) # <<<<<<<<<<<<<<
7590
* elif isinstance(node, Nodes.DefNode):
7591
* result += "(name=\"%s\")" % node.name
7593
__pyx_t_4 = PyObject_GetAttr(__pyx_v_node, __pyx_n_s__type); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 415; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7594
__Pyx_GOTREF(__pyx_t_4);
7595
__pyx_t_3 = PyObject_Repr(__pyx_t_4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 415; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7596
__Pyx_GOTREF(__pyx_t_3);
7597
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
7598
__pyx_t_4 = PyObject_GetAttr(__pyx_v_node, __pyx_n_s__name); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 415; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7599
__Pyx_GOTREF(__pyx_t_4);
7600
__pyx_t_2 = PyTuple_New(2); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 415; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7601
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
7602
PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_t_3);
7603
__Pyx_GIVEREF(__pyx_t_3);
7604
PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_4);
7605
__Pyx_GIVEREF(__pyx_t_4);
7608
__pyx_t_4 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_26), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 415; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7609
__Pyx_GOTREF(((PyObject *)__pyx_t_4));
7610
__Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0;
7611
__pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_result, ((PyObject *)__pyx_t_4)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 415; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7612
__Pyx_GOTREF(__pyx_t_2);
7613
__Pyx_DECREF(((PyObject *)__pyx_t_4)); __pyx_t_4 = 0;
7614
__Pyx_DECREF(__pyx_v_result);
7615
__pyx_v_result = __pyx_t_2;
7620
/* "Cython/Compiler/Visitor.py":416
7621
* if isinstance(node, ExprNodes.NameNode):
7622
* result += "(type=%s, name=\"%s\")" % (repr(node.type), node.name)
7623
* elif isinstance(node, Nodes.DefNode): # <<<<<<<<<<<<<<
7624
* result += "(name=\"%s\")" % node.name
7625
* elif isinstance(node, ExprNodes.ExprNode):
7627
__pyx_t_2 = __pyx_v_node;
7628
__Pyx_INCREF(__pyx_t_2);
7629
__pyx_t_4 = __Pyx_GetName(__pyx_m, __pyx_n_s__Nodes); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 416; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7630
__Pyx_GOTREF(__pyx_t_4);
7631
__pyx_t_3 = PyObject_GetAttr(__pyx_t_4, __pyx_n_s__DefNode); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 416; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7632
__Pyx_GOTREF(__pyx_t_3);
7633
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
7634
__pyx_t_1 = PyObject_IsInstance(__pyx_t_2, __pyx_t_3); if (unlikely(__pyx_t_1 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 416; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7635
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
7636
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
7639
/* "Cython/Compiler/Visitor.py":417
7640
* result += "(type=%s, name=\"%s\")" % (repr(node.type), node.name)
7641
* elif isinstance(node, Nodes.DefNode):
7642
* result += "(name=\"%s\")" % node.name # <<<<<<<<<<<<<<
7643
* elif isinstance(node, ExprNodes.ExprNode):
7646
__pyx_t_3 = PyObject_GetAttr(__pyx_v_node, __pyx_n_s__name); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 417; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7647
__Pyx_GOTREF(__pyx_t_3);
7648
__pyx_t_2 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_27), __pyx_t_3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 417; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7649
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
7650
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
7651
__pyx_t_3 = PyNumber_InPlaceAdd(__pyx_v_result, ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 417; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7652
__Pyx_GOTREF(__pyx_t_3);
7653
__Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0;
7654
__Pyx_DECREF(__pyx_v_result);
7655
__pyx_v_result = __pyx_t_3;
7660
/* "Cython/Compiler/Visitor.py":418
7661
* elif isinstance(node, Nodes.DefNode):
7662
* result += "(name=\"%s\")" % node.name
7663
* elif isinstance(node, ExprNodes.ExprNode): # <<<<<<<<<<<<<<
7665
* result += "(type=%s)" % repr(t)
7667
__pyx_t_3 = __pyx_v_node;
7668
__Pyx_INCREF(__pyx_t_3);
7669
__pyx_t_2 = __Pyx_GetName(__pyx_m, __pyx_n_s__ExprNodes); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 418; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7670
__Pyx_GOTREF(__pyx_t_2);
7671
__pyx_t_4 = PyObject_GetAttr(__pyx_t_2, __pyx_n_s__ExprNode); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 418; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7672
__Pyx_GOTREF(__pyx_t_4);
7673
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
7674
__pyx_t_1 = PyObject_IsInstance(__pyx_t_3, __pyx_t_4); if (unlikely(__pyx_t_1 == -1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 418; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7675
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
7676
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
7679
/* "Cython/Compiler/Visitor.py":419
7680
* result += "(name=\"%s\")" % node.name
7681
* elif isinstance(node, ExprNodes.ExprNode):
7682
* t = node.type # <<<<<<<<<<<<<<
7683
* result += "(type=%s)" % repr(t)
7686
__pyx_t_4 = PyObject_GetAttr(__pyx_v_node, __pyx_n_s__type); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 419; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7687
__Pyx_GOTREF(__pyx_t_4);
7688
__Pyx_DECREF(__pyx_v_t);
7689
__pyx_v_t = __pyx_t_4;
7692
/* "Cython/Compiler/Visitor.py":420
7693
* elif isinstance(node, ExprNodes.ExprNode):
7695
* result += "(type=%s)" % repr(t) # <<<<<<<<<<<<<<
7699
__pyx_t_4 = PyObject_Repr(__pyx_v_t); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 420; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7700
__Pyx_GOTREF(__pyx_t_4);
7701
__pyx_t_3 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_28), __pyx_t_4); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 420; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7702
__Pyx_GOTREF(((PyObject *)__pyx_t_3));
7703
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
7704
__pyx_t_4 = PyNumber_InPlaceAdd(__pyx_v_result, ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 420; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7705
__Pyx_GOTREF(__pyx_t_4);
7706
__Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0;
7707
__Pyx_DECREF(__pyx_v_result);
7708
__pyx_v_result = __pyx_t_4;
7713
/* "Cython/Compiler/Visitor.py":421
7715
* result += "(type=%s)" % repr(t)
7716
* elif node.pos: # <<<<<<<<<<<<<<
7718
* path = pos[0].get_description()
7720
__pyx_t_4 = PyObject_GetAttr(__pyx_v_node, __pyx_n_s__pos); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 421; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7721
__Pyx_GOTREF(__pyx_t_4);
7722
__pyx_t_1 = __Pyx_PyObject_IsTrue(__pyx_t_4); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 421; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7723
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
7726
/* "Cython/Compiler/Visitor.py":422
7727
* result += "(type=%s)" % repr(t)
7729
* pos = node.pos # <<<<<<<<<<<<<<
7730
* path = pos[0].get_description()
7733
__pyx_t_4 = PyObject_GetAttr(__pyx_v_node, __pyx_n_s__pos); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 422; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7734
__Pyx_GOTREF(__pyx_t_4);
7735
__Pyx_DECREF(__pyx_v_pos);
7736
__pyx_v_pos = __pyx_t_4;
7739
/* "Cython/Compiler/Visitor.py":423
7742
* path = pos[0].get_description() # <<<<<<<<<<<<<<
7744
* path = path.split('/')[-1]
7746
__pyx_t_4 = __Pyx_GetItemInt(__pyx_v_pos, 0, sizeof(long), PyInt_FromLong); if (!__pyx_t_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 423; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7747
__Pyx_GOTREF(__pyx_t_4);
7748
__pyx_t_3 = PyObject_GetAttr(__pyx_t_4, __pyx_n_s__get_description); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 423; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7749
__Pyx_GOTREF(__pyx_t_3);
7750
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
7751
__pyx_t_4 = PyObject_Call(__pyx_t_3, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 423; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7752
__Pyx_GOTREF(__pyx_t_4);
7753
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
7754
__Pyx_DECREF(__pyx_v_path);
7755
__pyx_v_path = __pyx_t_4;
7758
/* "Cython/Compiler/Visitor.py":424
7760
* path = pos[0].get_description()
7761
* if '/' in path: # <<<<<<<<<<<<<<
7762
* path = path.split('/')[-1]
7765
__pyx_t_1 = ((PySequence_Contains(__pyx_v_path, ((PyObject *)__pyx_kp_s_29)))); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 424; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7768
/* "Cython/Compiler/Visitor.py":425
7769
* path = pos[0].get_description()
7771
* path = path.split('/')[-1] # <<<<<<<<<<<<<<
7773
* path = path.split('\\')[-1]
7775
__pyx_t_4 = PyObject_GetAttr(__pyx_v_path, __pyx_n_s__split); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 425; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7776
__Pyx_GOTREF(__pyx_t_4);
7777
__pyx_t_3 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_k_tuple_30), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 425; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7778
__Pyx_GOTREF(__pyx_t_3);
7779
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
7780
__pyx_t_4 = __Pyx_GetItemInt(__pyx_t_3, -1, sizeof(long), PyInt_FromLong); if (!__pyx_t_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 425; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7781
__Pyx_GOTREF(__pyx_t_4);
7782
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
7783
__Pyx_DECREF(__pyx_v_path);
7784
__pyx_v_path = __pyx_t_4;
7790
/* "Cython/Compiler/Visitor.py":426
7792
* path = path.split('/')[-1]
7793
* if '\\' in path: # <<<<<<<<<<<<<<
7794
* path = path.split('\\')[-1]
7795
* result += "(pos=(%s:%s:%s))" % (path, pos[1], pos[2])
7797
__pyx_t_1 = ((PySequence_Contains(__pyx_v_path, ((PyObject *)__pyx_kp_s_31)))); if (unlikely(__pyx_t_1 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 426; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7800
/* "Cython/Compiler/Visitor.py":427
7801
* path = path.split('/')[-1]
7803
* path = path.split('\\')[-1] # <<<<<<<<<<<<<<
7804
* result += "(pos=(%s:%s:%s))" % (path, pos[1], pos[2])
7807
__pyx_t_4 = PyObject_GetAttr(__pyx_v_path, __pyx_n_s__split); if (unlikely(!__pyx_t_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 427; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7808
__Pyx_GOTREF(__pyx_t_4);
7809
__pyx_t_3 = PyObject_Call(__pyx_t_4, ((PyObject *)__pyx_k_tuple_32), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 427; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7810
__Pyx_GOTREF(__pyx_t_3);
7811
__Pyx_DECREF(__pyx_t_4); __pyx_t_4 = 0;
7812
__pyx_t_4 = __Pyx_GetItemInt(__pyx_t_3, -1, sizeof(long), PyInt_FromLong); if (!__pyx_t_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 427; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7813
__Pyx_GOTREF(__pyx_t_4);
7814
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
7815
__Pyx_DECREF(__pyx_v_path);
7816
__pyx_v_path = __pyx_t_4;
7822
/* "Cython/Compiler/Visitor.py":428
7824
* path = path.split('\\')[-1]
7825
* result += "(pos=(%s:%s:%s))" % (path, pos[1], pos[2]) # <<<<<<<<<<<<<<
7829
__pyx_t_4 = __Pyx_GetItemInt(__pyx_v_pos, 1, sizeof(long), PyInt_FromLong); if (!__pyx_t_4) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 428; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7830
__Pyx_GOTREF(__pyx_t_4);
7831
__pyx_t_3 = __Pyx_GetItemInt(__pyx_v_pos, 2, sizeof(long), PyInt_FromLong); if (!__pyx_t_3) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 428; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7832
__Pyx_GOTREF(__pyx_t_3);
7833
__pyx_t_2 = PyTuple_New(3); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 428; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7834
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
7835
__Pyx_INCREF(__pyx_v_path);
7836
PyTuple_SET_ITEM(__pyx_t_2, 0, __pyx_v_path);
7837
__Pyx_GIVEREF(__pyx_v_path);
7838
PyTuple_SET_ITEM(__pyx_t_2, 1, __pyx_t_4);
7839
__Pyx_GIVEREF(__pyx_t_4);
7840
PyTuple_SET_ITEM(__pyx_t_2, 2, __pyx_t_3);
7841
__Pyx_GIVEREF(__pyx_t_3);
7844
__pyx_t_3 = PyNumber_Remainder(((PyObject *)__pyx_kp_s_33), ((PyObject *)__pyx_t_2)); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 428; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7845
__Pyx_GOTREF(((PyObject *)__pyx_t_3));
7846
__Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0;
7847
__pyx_t_2 = PyNumber_InPlaceAdd(__pyx_v_result, ((PyObject *)__pyx_t_3)); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 428; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
7848
__Pyx_GOTREF(__pyx_t_2);
7849
__Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0;
7850
__Pyx_DECREF(__pyx_v_result);
7851
__pyx_v_result = __pyx_t_2;
7857
/* "Cython/Compiler/Visitor.py":430
7858
* result += "(pos=(%s:%s:%s))" % (path, pos[1], pos[2])
7860
* return result # <<<<<<<<<<<<<<
7862
* if __name__ == "__main__":
7864
__Pyx_XDECREF(__pyx_r);
7865
__Pyx_INCREF(__pyx_v_result);
7866
__pyx_r = __pyx_v_result;
7871
__pyx_r = Py_None; __Pyx_INCREF(Py_None);
7874
__Pyx_XDECREF(__pyx_t_2);
7875
__Pyx_XDECREF(__pyx_t_3);
7876
__Pyx_XDECREF(__pyx_t_4);
7877
__Pyx_AddTraceback("Cython.Compiler.Visitor.PrintTree.repr_of");
7880
__Pyx_DECREF(__pyx_v_result);
7881
__Pyx_DECREF(__pyx_v_t);
7882
__Pyx_DECREF(__pyx_v_pos);
7883
__Pyx_DECREF(__pyx_v_path);
7884
__Pyx_XGIVEREF(__pyx_r);
7885
__Pyx_RefNannyFinishContext();
7888
static struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_TreeVisitor __pyx_vtable_6Cython_8Compiler_7Visitor_TreeVisitor;
7890
static PyObject *__pyx_tp_new_6Cython_8Compiler_7Visitor_TreeVisitor(PyTypeObject *t, PyObject *a, PyObject *k) {
7891
struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *p;
7892
PyObject *o = (*t->tp_alloc)(t, 0);
7894
p = ((struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)o);
7895
p->__pyx_vtab = __pyx_vtabptr_6Cython_8Compiler_7Visitor_TreeVisitor;
7896
p->access_path = ((PyObject*)Py_None); Py_INCREF(Py_None);
7897
p->dispatch_table = ((PyObject*)Py_None); Py_INCREF(Py_None);
7901
static void __pyx_tp_dealloc_6Cython_8Compiler_7Visitor_TreeVisitor(PyObject *o) {
7902
struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *p = (struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)o;
7903
Py_XDECREF(((PyObject *)p->access_path));
7904
Py_XDECREF(((PyObject *)p->dispatch_table));
7905
(*Py_TYPE(o)->tp_free)(o);
7908
static int __pyx_tp_traverse_6Cython_8Compiler_7Visitor_TreeVisitor(PyObject *o, visitproc v, void *a) {
7910
struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *p = (struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)o;
7911
if (p->access_path) {
7912
e = (*v)(p->access_path, a); if (e) return e;
7914
if (p->dispatch_table) {
7915
e = (*v)(p->dispatch_table, a); if (e) return e;
7920
static int __pyx_tp_clear_6Cython_8Compiler_7Visitor_TreeVisitor(PyObject *o) {
7921
struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *p = (struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *)o;
7923
tmp = ((PyObject*)p->access_path);
7924
p->access_path = ((PyObject*)Py_None); Py_INCREF(Py_None);
7926
tmp = ((PyObject*)p->dispatch_table);
7927
p->dispatch_table = ((PyObject*)Py_None); Py_INCREF(Py_None);
7932
static PyObject *__pyx_getprop_6Cython_8Compiler_7Visitor_11TreeVisitor_access_path(PyObject *o, void *x) {
7933
return __pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_11access_path___get__(o);
7936
static int __pyx_setprop_6Cython_8Compiler_7Visitor_11TreeVisitor_access_path(PyObject *o, PyObject *v, void *x) {
7938
return __pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_11access_path_1__set__(o, v);
7941
return __pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_11access_path_2__del__(o);
7945
static PyMethodDef __pyx_methods_6Cython_8Compiler_7Visitor_TreeVisitor[] = {
7946
{__Pyx_NAMESTR("dump_node"), (PyCFunction)__pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_1dump_node, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)},
7947
{__Pyx_NAMESTR("_find_node_path"), (PyCFunction)__pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_2_find_node_path, METH_O, __Pyx_DOCSTR(0)},
7948
{__Pyx_NAMESTR("_raise_compiler_error"), (PyCFunction)__pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_3_raise_compiler_error, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)},
7949
{__Pyx_NAMESTR("visit"), (PyCFunction)__pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_4visit, METH_O, __Pyx_DOCSTR(0)},
7950
{__Pyx_NAMESTR("visitchildren"), (PyCFunction)__pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor_5visitchildren, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)},
7954
static struct PyGetSetDef __pyx_getsets_6Cython_8Compiler_7Visitor_TreeVisitor[] = {
7955
{(char *)"access_path", __pyx_getprop_6Cython_8Compiler_7Visitor_11TreeVisitor_access_path, __pyx_setprop_6Cython_8Compiler_7Visitor_11TreeVisitor_access_path, 0, 0},
7959
static PyNumberMethods __pyx_tp_as_number_TreeVisitor = {
7963
#if PY_MAJOR_VERSION < 3
7979
#if PY_MAJOR_VERSION < 3
7983
#if PY_MAJOR_VERSION < 3
7989
#if PY_MAJOR_VERSION < 3
7992
#if PY_MAJOR_VERSION < 3
7995
0, /*nb_inplace_add*/
7996
0, /*nb_inplace_subtract*/
7997
0, /*nb_inplace_multiply*/
7998
#if PY_MAJOR_VERSION < 3
7999
0, /*nb_inplace_divide*/
8001
0, /*nb_inplace_remainder*/
8002
0, /*nb_inplace_power*/
8003
0, /*nb_inplace_lshift*/
8004
0, /*nb_inplace_rshift*/
8005
0, /*nb_inplace_and*/
8006
0, /*nb_inplace_xor*/
8007
0, /*nb_inplace_or*/
8008
0, /*nb_floor_divide*/
8009
0, /*nb_true_divide*/
8010
0, /*nb_inplace_floor_divide*/
8011
0, /*nb_inplace_true_divide*/
8012
#if PY_VERSION_HEX >= 0x02050000
8017
static PySequenceMethods __pyx_tp_as_sequence_TreeVisitor = {
8026
0, /*sq_inplace_concat*/
8027
0, /*sq_inplace_repeat*/
8030
static PyMappingMethods __pyx_tp_as_mapping_TreeVisitor = {
8033
0, /*mp_ass_subscript*/
8036
static PyBufferProcs __pyx_tp_as_buffer_TreeVisitor = {
8037
#if PY_MAJOR_VERSION < 3
8038
0, /*bf_getreadbuffer*/
8040
#if PY_MAJOR_VERSION < 3
8041
0, /*bf_getwritebuffer*/
8043
#if PY_MAJOR_VERSION < 3
8044
0, /*bf_getsegcount*/
8046
#if PY_MAJOR_VERSION < 3
8047
0, /*bf_getcharbuffer*/
8049
#if PY_VERSION_HEX >= 0x02060000
8052
#if PY_VERSION_HEX >= 0x02060000
8053
0, /*bf_releasebuffer*/
8057
static PyTypeObject __pyx_type_6Cython_8Compiler_7Visitor_TreeVisitor = {
8058
PyVarObject_HEAD_INIT(0, 0)
8059
__Pyx_NAMESTR("Cython.Compiler.Visitor.TreeVisitor"), /*tp_name*/
8060
sizeof(struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor), /*tp_basicsize*/
8062
__pyx_tp_dealloc_6Cython_8Compiler_7Visitor_TreeVisitor, /*tp_dealloc*/
8066
#if PY_MAJOR_VERSION < 3
8072
&__pyx_tp_as_number_TreeVisitor, /*tp_as_number*/
8073
&__pyx_tp_as_sequence_TreeVisitor, /*tp_as_sequence*/
8074
&__pyx_tp_as_mapping_TreeVisitor, /*tp_as_mapping*/
8080
&__pyx_tp_as_buffer_TreeVisitor, /*tp_as_buffer*/
8081
Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC, /*tp_flags*/
8082
__Pyx_DOCSTR("\n Base class for writing visitors for a Cython tree, contains utilities for\n recursing such trees using visitors. Each node is\n expected to have a child_attrs iterable containing the names of attributes\n containing child nodes or lists of child nodes. Lists are not considered\n part of the tree structure (i.e. contained nodes are considered direct\n children of the parent node).\n\n visit_children visits each of the children of a given node (see the visit_children\n documentation). When recursing the tree using visit_children, an attribute\n access_path is maintained which gives information about the current location\n in the tree as a stack of tuples: (parent_node, attrname, index), representing\n the node, attribute and optional list index that was taken in each step in the path to\n the current node.\n\n Example:\n\n >>> class SampleNode(object):\n ... child_attrs = [\"head\", \"body\"]\n ... def __init__(self, value, head=None, body=None):\n ... self.value = value\n ... self.head = head\n ... self.body = body\n ... def __repr__(self): return \"SampleNode(%s)\" % self.value\n ...\n >>> tree = SampleNode(0, SampleNode(1), [SampleNode(2), SampleNode(3)])\n >>> class MyVisitor(TreeVisitor):\n ... def visit_SampleNode(self, node):\n ... print \"in\", node.value, self.access_path\n ... self.visitchildren(node)\n ... print \"out\", node.value\n ...\n >>> MyVisitor().visit(tree)\n in 0 []\n in 1 [(SampleNode(0), 'head', None)]\n out 1\n in 2 [(SampleNode(0), 'body', 0)]\n out 2\n in 3 [(SampleNode(0), 'body', 1)]\n out 3\n out 0\n "), /*tp_doc*/
8083
__pyx_tp_traverse_6Cython_8Compiler_7Visitor_TreeVisitor, /*tp_traverse*/
8084
__pyx_tp_clear_6Cython_8Compiler_7Visitor_TreeVisitor, /*tp_clear*/
8085
0, /*tp_richcompare*/
8086
0, /*tp_weaklistoffset*/
8089
__pyx_methods_6Cython_8Compiler_7Visitor_TreeVisitor, /*tp_methods*/
8091
__pyx_getsets_6Cython_8Compiler_7Visitor_TreeVisitor, /*tp_getset*/
8096
0, /*tp_dictoffset*/
8097
__pyx_pf_6Cython_8Compiler_7Visitor_11TreeVisitor___init__, /*tp_init*/
8099
__pyx_tp_new_6Cython_8Compiler_7Visitor_TreeVisitor, /*tp_new*/
8105
0, /*tp_subclasses*/
8108
#if PY_VERSION_HEX >= 0x02060000
8109
0, /*tp_version_tag*/
8112
static struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_VisitorTransform __pyx_vtable_6Cython_8Compiler_7Visitor_VisitorTransform;
8114
static PyObject *__pyx_tp_new_6Cython_8Compiler_7Visitor_VisitorTransform(PyTypeObject *t, PyObject *a, PyObject *k) {
8115
struct __pyx_obj_6Cython_8Compiler_7Visitor_VisitorTransform *p;
8116
PyObject *o = __pyx_tp_new_6Cython_8Compiler_7Visitor_TreeVisitor(t, a, k);
8118
p = ((struct __pyx_obj_6Cython_8Compiler_7Visitor_VisitorTransform *)o);
8119
p->__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_TreeVisitor*)__pyx_vtabptr_6Cython_8Compiler_7Visitor_VisitorTransform;
8123
static PyMethodDef __pyx_methods_6Cython_8Compiler_7Visitor_VisitorTransform[] = {
8124
{__Pyx_NAMESTR("visitchildren"), (PyCFunction)__pyx_pf_6Cython_8Compiler_7Visitor_16VisitorTransform_visitchildren, METH_VARARGS|METH_KEYWORDS, __Pyx_DOCSTR(0)},
8125
{__Pyx_NAMESTR("recurse_to_children"), (PyCFunction)__pyx_pf_6Cython_8Compiler_7Visitor_16VisitorTransform_1recurse_to_children, METH_O, __Pyx_DOCSTR(0)},
8129
static PyNumberMethods __pyx_tp_as_number_VisitorTransform = {
8133
#if PY_MAJOR_VERSION < 3
8149
#if PY_MAJOR_VERSION < 3
8153
#if PY_MAJOR_VERSION < 3
8159
#if PY_MAJOR_VERSION < 3
8162
#if PY_MAJOR_VERSION < 3
8165
0, /*nb_inplace_add*/
8166
0, /*nb_inplace_subtract*/
8167
0, /*nb_inplace_multiply*/
8168
#if PY_MAJOR_VERSION < 3
8169
0, /*nb_inplace_divide*/
8171
0, /*nb_inplace_remainder*/
8172
0, /*nb_inplace_power*/
8173
0, /*nb_inplace_lshift*/
8174
0, /*nb_inplace_rshift*/
8175
0, /*nb_inplace_and*/
8176
0, /*nb_inplace_xor*/
8177
0, /*nb_inplace_or*/
8178
0, /*nb_floor_divide*/
8179
0, /*nb_true_divide*/
8180
0, /*nb_inplace_floor_divide*/
8181
0, /*nb_inplace_true_divide*/
8182
#if PY_VERSION_HEX >= 0x02050000
8187
static PySequenceMethods __pyx_tp_as_sequence_VisitorTransform = {
8196
0, /*sq_inplace_concat*/
8197
0, /*sq_inplace_repeat*/
8200
static PyMappingMethods __pyx_tp_as_mapping_VisitorTransform = {
8203
0, /*mp_ass_subscript*/
8206
static PyBufferProcs __pyx_tp_as_buffer_VisitorTransform = {
8207
#if PY_MAJOR_VERSION < 3
8208
0, /*bf_getreadbuffer*/
8210
#if PY_MAJOR_VERSION < 3
8211
0, /*bf_getwritebuffer*/
8213
#if PY_MAJOR_VERSION < 3
8214
0, /*bf_getsegcount*/
8216
#if PY_MAJOR_VERSION < 3
8217
0, /*bf_getcharbuffer*/
8219
#if PY_VERSION_HEX >= 0x02060000
8222
#if PY_VERSION_HEX >= 0x02060000
8223
0, /*bf_releasebuffer*/
8227
static PyTypeObject __pyx_type_6Cython_8Compiler_7Visitor_VisitorTransform = {
8228
PyVarObject_HEAD_INIT(0, 0)
8229
__Pyx_NAMESTR("Cython.Compiler.Visitor.VisitorTransform"), /*tp_name*/
8230
sizeof(struct __pyx_obj_6Cython_8Compiler_7Visitor_VisitorTransform), /*tp_basicsize*/
8232
__pyx_tp_dealloc_6Cython_8Compiler_7Visitor_TreeVisitor, /*tp_dealloc*/
8236
#if PY_MAJOR_VERSION < 3
8242
&__pyx_tp_as_number_VisitorTransform, /*tp_as_number*/
8243
&__pyx_tp_as_sequence_VisitorTransform, /*tp_as_sequence*/
8244
&__pyx_tp_as_mapping_VisitorTransform, /*tp_as_mapping*/
8246
__pyx_pf_6Cython_8Compiler_7Visitor_16VisitorTransform_2__call__, /*tp_call*/
8250
&__pyx_tp_as_buffer_VisitorTransform, /*tp_as_buffer*/
8251
Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC, /*tp_flags*/
8252
__Pyx_DOCSTR("\n A tree transform is a base class for visitors that wants to do stream\n processing of the structure (rather than attributes etc.) of a tree.\n\n It implements __call__ to simply visit the argument node.\n\n It requires the visitor methods to return the nodes which should take\n the place of the visited node in the result tree (which can be the same\n or one or more replacement). Specifically, if the return value from\n a visitor method is:\n\n - [] or None; the visited node will be removed (set to None if an attribute and\n removed if in a list)\n - A single node; the visited node will be replaced by the returned node.\n - A list of nodes; the visited nodes will be replaced by all the nodes in the\n list. This will only work if the node was already a member of a list; if it\n was not, an exception will be raised. (Typically you want to ensure that you\n are within a StatListNode or similar before doing this.)\n "), /*tp_doc*/
8253
__pyx_tp_traverse_6Cython_8Compiler_7Visitor_TreeVisitor, /*tp_traverse*/
8254
__pyx_tp_clear_6Cython_8Compiler_7Visitor_TreeVisitor, /*tp_clear*/
8255
0, /*tp_richcompare*/
8256
0, /*tp_weaklistoffset*/
8259
__pyx_methods_6Cython_8Compiler_7Visitor_VisitorTransform, /*tp_methods*/
8266
0, /*tp_dictoffset*/
8269
__pyx_tp_new_6Cython_8Compiler_7Visitor_VisitorTransform, /*tp_new*/
8275
0, /*tp_subclasses*/
8278
#if PY_VERSION_HEX >= 0x02060000
8279
0, /*tp_version_tag*/
8282
static struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_CythonTransform __pyx_vtable_6Cython_8Compiler_7Visitor_CythonTransform;
8284
static PyObject *__pyx_tp_new_6Cython_8Compiler_7Visitor_CythonTransform(PyTypeObject *t, PyObject *a, PyObject *k) {
8285
struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *p;
8286
PyObject *o = __pyx_tp_new_6Cython_8Compiler_7Visitor_TreeVisitor(t, a, k);
8288
p = ((struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)o);
8289
p->__pyx_base.__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_TreeVisitor*)__pyx_vtabptr_6Cython_8Compiler_7Visitor_CythonTransform;
8290
p->context = Py_None; Py_INCREF(Py_None);
8291
p->current_directives = Py_None; Py_INCREF(Py_None);
8295
static void __pyx_tp_dealloc_6Cython_8Compiler_7Visitor_CythonTransform(PyObject *o) {
8296
struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *p = (struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)o;
8297
Py_XDECREF(p->context);
8298
Py_XDECREF(p->current_directives);
8299
__pyx_tp_dealloc_6Cython_8Compiler_7Visitor_TreeVisitor(o);
8302
static int __pyx_tp_traverse_6Cython_8Compiler_7Visitor_CythonTransform(PyObject *o, visitproc v, void *a) {
8304
struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *p = (struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)o;
8305
e = __pyx_tp_traverse_6Cython_8Compiler_7Visitor_TreeVisitor(o, v, a); if (e) return e;
8307
e = (*v)(p->context, a); if (e) return e;
8309
if (p->current_directives) {
8310
e = (*v)(p->current_directives, a); if (e) return e;
8315
static int __pyx_tp_clear_6Cython_8Compiler_7Visitor_CythonTransform(PyObject *o) {
8316
struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *p = (struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform *)o;
8318
__pyx_tp_clear_6Cython_8Compiler_7Visitor_TreeVisitor(o);
8319
tmp = ((PyObject*)p->context);
8320
p->context = Py_None; Py_INCREF(Py_None);
8322
tmp = ((PyObject*)p->current_directives);
8323
p->current_directives = Py_None; Py_INCREF(Py_None);
8328
static PyObject *__pyx_getprop_6Cython_8Compiler_7Visitor_15CythonTransform_context(PyObject *o, void *x) {
8329
return __pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_7context___get__(o);
8332
static int __pyx_setprop_6Cython_8Compiler_7Visitor_15CythonTransform_context(PyObject *o, PyObject *v, void *x) {
8334
return __pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_7context_1__set__(o, v);
8337
return __pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_7context_2__del__(o);
8341
static PyObject *__pyx_getprop_6Cython_8Compiler_7Visitor_15CythonTransform_current_directives(PyObject *o, void *x) {
8342
return __pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_18current_directives___get__(o);
8345
static int __pyx_setprop_6Cython_8Compiler_7Visitor_15CythonTransform_current_directives(PyObject *o, PyObject *v, void *x) {
8347
return __pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_18current_directives_1__set__(o, v);
8350
return __pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_18current_directives_2__del__(o);
8354
static PyMethodDef __pyx_methods_6Cython_8Compiler_7Visitor_CythonTransform[] = {
8355
{__Pyx_NAMESTR("visit_CompilerDirectivesNode"), (PyCFunction)__pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_2visit_CompilerDirectivesNode, METH_O, __Pyx_DOCSTR(0)},
8356
{__Pyx_NAMESTR("visit_Node"), (PyCFunction)__pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_3visit_Node, METH_O, __Pyx_DOCSTR(0)},
8360
static struct PyGetSetDef __pyx_getsets_6Cython_8Compiler_7Visitor_CythonTransform[] = {
8361
{(char *)"context", __pyx_getprop_6Cython_8Compiler_7Visitor_15CythonTransform_context, __pyx_setprop_6Cython_8Compiler_7Visitor_15CythonTransform_context, 0, 0},
8362
{(char *)"current_directives", __pyx_getprop_6Cython_8Compiler_7Visitor_15CythonTransform_current_directives, __pyx_setprop_6Cython_8Compiler_7Visitor_15CythonTransform_current_directives, 0, 0},
8366
static PyNumberMethods __pyx_tp_as_number_CythonTransform = {
8370
#if PY_MAJOR_VERSION < 3
8386
#if PY_MAJOR_VERSION < 3
8390
#if PY_MAJOR_VERSION < 3
8396
#if PY_MAJOR_VERSION < 3
8399
#if PY_MAJOR_VERSION < 3
8402
0, /*nb_inplace_add*/
8403
0, /*nb_inplace_subtract*/
8404
0, /*nb_inplace_multiply*/
8405
#if PY_MAJOR_VERSION < 3
8406
0, /*nb_inplace_divide*/
8408
0, /*nb_inplace_remainder*/
8409
0, /*nb_inplace_power*/
8410
0, /*nb_inplace_lshift*/
8411
0, /*nb_inplace_rshift*/
8412
0, /*nb_inplace_and*/
8413
0, /*nb_inplace_xor*/
8414
0, /*nb_inplace_or*/
8415
0, /*nb_floor_divide*/
8416
0, /*nb_true_divide*/
8417
0, /*nb_inplace_floor_divide*/
8418
0, /*nb_inplace_true_divide*/
8419
#if PY_VERSION_HEX >= 0x02050000
8424
static PySequenceMethods __pyx_tp_as_sequence_CythonTransform = {
8433
0, /*sq_inplace_concat*/
8434
0, /*sq_inplace_repeat*/
8437
static PyMappingMethods __pyx_tp_as_mapping_CythonTransform = {
8440
0, /*mp_ass_subscript*/
8443
static PyBufferProcs __pyx_tp_as_buffer_CythonTransform = {
8444
#if PY_MAJOR_VERSION < 3
8445
0, /*bf_getreadbuffer*/
8447
#if PY_MAJOR_VERSION < 3
8448
0, /*bf_getwritebuffer*/
8450
#if PY_MAJOR_VERSION < 3
8451
0, /*bf_getsegcount*/
8453
#if PY_MAJOR_VERSION < 3
8454
0, /*bf_getcharbuffer*/
8456
#if PY_VERSION_HEX >= 0x02060000
8459
#if PY_VERSION_HEX >= 0x02060000
8460
0, /*bf_releasebuffer*/
8464
static PyTypeObject __pyx_type_6Cython_8Compiler_7Visitor_CythonTransform = {
8465
PyVarObject_HEAD_INIT(0, 0)
8466
__Pyx_NAMESTR("Cython.Compiler.Visitor.CythonTransform"), /*tp_name*/
8467
sizeof(struct __pyx_obj_6Cython_8Compiler_7Visitor_CythonTransform), /*tp_basicsize*/
8469
__pyx_tp_dealloc_6Cython_8Compiler_7Visitor_CythonTransform, /*tp_dealloc*/
8473
#if PY_MAJOR_VERSION < 3
8479
&__pyx_tp_as_number_CythonTransform, /*tp_as_number*/
8480
&__pyx_tp_as_sequence_CythonTransform, /*tp_as_sequence*/
8481
&__pyx_tp_as_mapping_CythonTransform, /*tp_as_mapping*/
8483
__pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform_1__call__, /*tp_call*/
8487
&__pyx_tp_as_buffer_CythonTransform, /*tp_as_buffer*/
8488
Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC, /*tp_flags*/
8489
__Pyx_DOCSTR("\n Certain common conventions and utilities for Cython transforms.\n\n - Sets up the context of the pipeline in self.context\n - Tracks directives in effect in self.current_directives\n "), /*tp_doc*/
8490
__pyx_tp_traverse_6Cython_8Compiler_7Visitor_CythonTransform, /*tp_traverse*/
8491
__pyx_tp_clear_6Cython_8Compiler_7Visitor_CythonTransform, /*tp_clear*/
8492
0, /*tp_richcompare*/
8493
0, /*tp_weaklistoffset*/
8496
__pyx_methods_6Cython_8Compiler_7Visitor_CythonTransform, /*tp_methods*/
8498
__pyx_getsets_6Cython_8Compiler_7Visitor_CythonTransform, /*tp_getset*/
8503
0, /*tp_dictoffset*/
8504
__pyx_pf_6Cython_8Compiler_7Visitor_15CythonTransform___init__, /*tp_init*/
8506
__pyx_tp_new_6Cython_8Compiler_7Visitor_CythonTransform, /*tp_new*/
8512
0, /*tp_subclasses*/
8515
#if PY_VERSION_HEX >= 0x02060000
8516
0, /*tp_version_tag*/
8519
static struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_ScopeTrackingTransform __pyx_vtable_6Cython_8Compiler_7Visitor_ScopeTrackingTransform;
8521
static PyObject *__pyx_tp_new_6Cython_8Compiler_7Visitor_ScopeTrackingTransform(PyTypeObject *t, PyObject *a, PyObject *k) {
8522
struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *p;
8523
PyObject *o = __pyx_tp_new_6Cython_8Compiler_7Visitor_CythonTransform(t, a, k);
8525
p = ((struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)o);
8526
p->__pyx_base.__pyx_base.__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_TreeVisitor*)__pyx_vtabptr_6Cython_8Compiler_7Visitor_ScopeTrackingTransform;
8527
p->scope_type = Py_None; Py_INCREF(Py_None);
8528
p->scope_node = Py_None; Py_INCREF(Py_None);
8532
static void __pyx_tp_dealloc_6Cython_8Compiler_7Visitor_ScopeTrackingTransform(PyObject *o) {
8533
struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *p = (struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)o;
8534
Py_XDECREF(p->scope_type);
8535
Py_XDECREF(p->scope_node);
8536
__pyx_tp_dealloc_6Cython_8Compiler_7Visitor_CythonTransform(o);
8539
static int __pyx_tp_traverse_6Cython_8Compiler_7Visitor_ScopeTrackingTransform(PyObject *o, visitproc v, void *a) {
8541
struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *p = (struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)o;
8542
e = __pyx_tp_traverse_6Cython_8Compiler_7Visitor_CythonTransform(o, v, a); if (e) return e;
8543
if (p->scope_type) {
8544
e = (*v)(p->scope_type, a); if (e) return e;
8546
if (p->scope_node) {
8547
e = (*v)(p->scope_node, a); if (e) return e;
8552
static int __pyx_tp_clear_6Cython_8Compiler_7Visitor_ScopeTrackingTransform(PyObject *o) {
8553
struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *p = (struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *)o;
8555
__pyx_tp_clear_6Cython_8Compiler_7Visitor_CythonTransform(o);
8556
tmp = ((PyObject*)p->scope_type);
8557
p->scope_type = Py_None; Py_INCREF(Py_None);
8559
tmp = ((PyObject*)p->scope_node);
8560
p->scope_node = Py_None; Py_INCREF(Py_None);
8565
static PyObject *__pyx_getprop_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_scope_type(PyObject *o, void *x) {
8566
return __pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_10scope_type___get__(o);
8569
static int __pyx_setprop_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_scope_type(PyObject *o, PyObject *v, void *x) {
8571
return __pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_10scope_type_1__set__(o, v);
8574
return __pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_10scope_type_2__del__(o);
8578
static PyObject *__pyx_getprop_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_scope_node(PyObject *o, void *x) {
8579
return __pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_10scope_node___get__(o);
8582
static int __pyx_setprop_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_scope_node(PyObject *o, PyObject *v, void *x) {
8584
return __pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_10scope_node_1__set__(o, v);
8587
return __pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_10scope_node_2__del__(o);
8591
static PyMethodDef __pyx_methods_6Cython_8Compiler_7Visitor_ScopeTrackingTransform[] = {
8592
{__Pyx_NAMESTR("visit_ModuleNode"), (PyCFunction)__pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_visit_ModuleNode, METH_O, __Pyx_DOCSTR(0)},
8593
{__Pyx_NAMESTR("visit_CClassDefNode"), (PyCFunction)__pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_1visit_CClassDefNode, METH_O, __Pyx_DOCSTR(0)},
8594
{__Pyx_NAMESTR("visit_PyClassDefNode"), (PyCFunction)__pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_2visit_PyClassDefNode, METH_O, __Pyx_DOCSTR(0)},
8595
{__Pyx_NAMESTR("visit_FuncDefNode"), (PyCFunction)__pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_3visit_FuncDefNode, METH_O, __Pyx_DOCSTR(0)},
8596
{__Pyx_NAMESTR("visit_CStructOrUnionDefNode"), (PyCFunction)__pyx_pf_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_4visit_CStructOrUnionDefNode, METH_O, __Pyx_DOCSTR(0)},
8600
static struct PyGetSetDef __pyx_getsets_6Cython_8Compiler_7Visitor_ScopeTrackingTransform[] = {
8601
{(char *)"scope_type", __pyx_getprop_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_scope_type, __pyx_setprop_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_scope_type, 0, 0},
8602
{(char *)"scope_node", __pyx_getprop_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_scope_node, __pyx_setprop_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_scope_node, 0, 0},
8606
static PyNumberMethods __pyx_tp_as_number_ScopeTrackingTransform = {
8610
#if PY_MAJOR_VERSION < 3
8626
#if PY_MAJOR_VERSION < 3
8630
#if PY_MAJOR_VERSION < 3
8636
#if PY_MAJOR_VERSION < 3
8639
#if PY_MAJOR_VERSION < 3
8642
0, /*nb_inplace_add*/
8643
0, /*nb_inplace_subtract*/
8644
0, /*nb_inplace_multiply*/
8645
#if PY_MAJOR_VERSION < 3
8646
0, /*nb_inplace_divide*/
8648
0, /*nb_inplace_remainder*/
8649
0, /*nb_inplace_power*/
8650
0, /*nb_inplace_lshift*/
8651
0, /*nb_inplace_rshift*/
8652
0, /*nb_inplace_and*/
8653
0, /*nb_inplace_xor*/
8654
0, /*nb_inplace_or*/
8655
0, /*nb_floor_divide*/
8656
0, /*nb_true_divide*/
8657
0, /*nb_inplace_floor_divide*/
8658
0, /*nb_inplace_true_divide*/
8659
#if PY_VERSION_HEX >= 0x02050000
8664
static PySequenceMethods __pyx_tp_as_sequence_ScopeTrackingTransform = {
8673
0, /*sq_inplace_concat*/
8674
0, /*sq_inplace_repeat*/
8677
static PyMappingMethods __pyx_tp_as_mapping_ScopeTrackingTransform = {
8680
0, /*mp_ass_subscript*/
8683
static PyBufferProcs __pyx_tp_as_buffer_ScopeTrackingTransform = {
8684
#if PY_MAJOR_VERSION < 3
8685
0, /*bf_getreadbuffer*/
8687
#if PY_MAJOR_VERSION < 3
8688
0, /*bf_getwritebuffer*/
8690
#if PY_MAJOR_VERSION < 3
8691
0, /*bf_getsegcount*/
8693
#if PY_MAJOR_VERSION < 3
8694
0, /*bf_getcharbuffer*/
8696
#if PY_VERSION_HEX >= 0x02060000
8699
#if PY_VERSION_HEX >= 0x02060000
8700
0, /*bf_releasebuffer*/
8704
static PyTypeObject __pyx_type_6Cython_8Compiler_7Visitor_ScopeTrackingTransform = {
8705
PyVarObject_HEAD_INIT(0, 0)
8706
__Pyx_NAMESTR("Cython.Compiler.Visitor.ScopeTrackingTransform"), /*tp_name*/
8707
sizeof(struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform), /*tp_basicsize*/
8709
__pyx_tp_dealloc_6Cython_8Compiler_7Visitor_ScopeTrackingTransform, /*tp_dealloc*/
8713
#if PY_MAJOR_VERSION < 3
8719
&__pyx_tp_as_number_ScopeTrackingTransform, /*tp_as_number*/
8720
&__pyx_tp_as_sequence_ScopeTrackingTransform, /*tp_as_sequence*/
8721
&__pyx_tp_as_mapping_ScopeTrackingTransform, /*tp_as_mapping*/
8727
&__pyx_tp_as_buffer_ScopeTrackingTransform, /*tp_as_buffer*/
8728
Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC, /*tp_flags*/
8730
__pyx_tp_traverse_6Cython_8Compiler_7Visitor_ScopeTrackingTransform, /*tp_traverse*/
8731
__pyx_tp_clear_6Cython_8Compiler_7Visitor_ScopeTrackingTransform, /*tp_clear*/
8732
0, /*tp_richcompare*/
8733
0, /*tp_weaklistoffset*/
8736
__pyx_methods_6Cython_8Compiler_7Visitor_ScopeTrackingTransform, /*tp_methods*/
8738
__pyx_getsets_6Cython_8Compiler_7Visitor_ScopeTrackingTransform, /*tp_getset*/
8743
0, /*tp_dictoffset*/
8746
__pyx_tp_new_6Cython_8Compiler_7Visitor_ScopeTrackingTransform, /*tp_new*/
8752
0, /*tp_subclasses*/
8755
#if PY_VERSION_HEX >= 0x02060000
8756
0, /*tp_version_tag*/
8759
static struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_EnvTransform __pyx_vtable_6Cython_8Compiler_7Visitor_EnvTransform;
8761
static PyObject *__pyx_tp_new_6Cython_8Compiler_7Visitor_EnvTransform(PyTypeObject *t, PyObject *a, PyObject *k) {
8762
struct __pyx_obj_6Cython_8Compiler_7Visitor_EnvTransform *p;
8763
PyObject *o = __pyx_tp_new_6Cython_8Compiler_7Visitor_CythonTransform(t, a, k);
8765
p = ((struct __pyx_obj_6Cython_8Compiler_7Visitor_EnvTransform *)o);
8766
p->__pyx_base.__pyx_base.__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_TreeVisitor*)__pyx_vtabptr_6Cython_8Compiler_7Visitor_EnvTransform;
8767
p->env_stack = ((PyObject*)Py_None); Py_INCREF(Py_None);
8771
static void __pyx_tp_dealloc_6Cython_8Compiler_7Visitor_EnvTransform(PyObject *o) {
8772
struct __pyx_obj_6Cython_8Compiler_7Visitor_EnvTransform *p = (struct __pyx_obj_6Cython_8Compiler_7Visitor_EnvTransform *)o;
8773
Py_XDECREF(((PyObject *)p->env_stack));
8774
__pyx_tp_dealloc_6Cython_8Compiler_7Visitor_CythonTransform(o);
8777
static int __pyx_tp_traverse_6Cython_8Compiler_7Visitor_EnvTransform(PyObject *o, visitproc v, void *a) {
8779
struct __pyx_obj_6Cython_8Compiler_7Visitor_EnvTransform *p = (struct __pyx_obj_6Cython_8Compiler_7Visitor_EnvTransform *)o;
8780
e = __pyx_tp_traverse_6Cython_8Compiler_7Visitor_CythonTransform(o, v, a); if (e) return e;
8782
e = (*v)(p->env_stack, a); if (e) return e;
8787
static int __pyx_tp_clear_6Cython_8Compiler_7Visitor_EnvTransform(PyObject *o) {
8788
struct __pyx_obj_6Cython_8Compiler_7Visitor_EnvTransform *p = (struct __pyx_obj_6Cython_8Compiler_7Visitor_EnvTransform *)o;
8790
__pyx_tp_clear_6Cython_8Compiler_7Visitor_CythonTransform(o);
8791
tmp = ((PyObject*)p->env_stack);
8792
p->env_stack = ((PyObject*)Py_None); Py_INCREF(Py_None);
8797
static PyObject *__pyx_getprop_6Cython_8Compiler_7Visitor_12EnvTransform_env_stack(PyObject *o, void *x) {
8798
return __pyx_pf_6Cython_8Compiler_7Visitor_12EnvTransform_9env_stack___get__(o);
8801
static int __pyx_setprop_6Cython_8Compiler_7Visitor_12EnvTransform_env_stack(PyObject *o, PyObject *v, void *x) {
8803
return __pyx_pf_6Cython_8Compiler_7Visitor_12EnvTransform_9env_stack_1__set__(o, v);
8806
return __pyx_pf_6Cython_8Compiler_7Visitor_12EnvTransform_9env_stack_2__del__(o);
8810
static PyMethodDef __pyx_methods_6Cython_8Compiler_7Visitor_EnvTransform[] = {
8811
{__Pyx_NAMESTR("current_env"), (PyCFunction)__pyx_pf_6Cython_8Compiler_7Visitor_12EnvTransform_1current_env, METH_NOARGS, __Pyx_DOCSTR(0)},
8812
{__Pyx_NAMESTR("visit_FuncDefNode"), (PyCFunction)__pyx_pf_6Cython_8Compiler_7Visitor_12EnvTransform_2visit_FuncDefNode, METH_O, __Pyx_DOCSTR(0)},
8816
static struct PyGetSetDef __pyx_getsets_6Cython_8Compiler_7Visitor_EnvTransform[] = {
8817
{(char *)"env_stack", __pyx_getprop_6Cython_8Compiler_7Visitor_12EnvTransform_env_stack, __pyx_setprop_6Cython_8Compiler_7Visitor_12EnvTransform_env_stack, 0, 0},
8821
static PyNumberMethods __pyx_tp_as_number_EnvTransform = {
8825
#if PY_MAJOR_VERSION < 3
8841
#if PY_MAJOR_VERSION < 3
8845
#if PY_MAJOR_VERSION < 3
8851
#if PY_MAJOR_VERSION < 3
8854
#if PY_MAJOR_VERSION < 3
8857
0, /*nb_inplace_add*/
8858
0, /*nb_inplace_subtract*/
8859
0, /*nb_inplace_multiply*/
8860
#if PY_MAJOR_VERSION < 3
8861
0, /*nb_inplace_divide*/
8863
0, /*nb_inplace_remainder*/
8864
0, /*nb_inplace_power*/
8865
0, /*nb_inplace_lshift*/
8866
0, /*nb_inplace_rshift*/
8867
0, /*nb_inplace_and*/
8868
0, /*nb_inplace_xor*/
8869
0, /*nb_inplace_or*/
8870
0, /*nb_floor_divide*/
8871
0, /*nb_true_divide*/
8872
0, /*nb_inplace_floor_divide*/
8873
0, /*nb_inplace_true_divide*/
8874
#if PY_VERSION_HEX >= 0x02050000
8879
static PySequenceMethods __pyx_tp_as_sequence_EnvTransform = {
8888
0, /*sq_inplace_concat*/
8889
0, /*sq_inplace_repeat*/
8892
static PyMappingMethods __pyx_tp_as_mapping_EnvTransform = {
8895
0, /*mp_ass_subscript*/
8898
static PyBufferProcs __pyx_tp_as_buffer_EnvTransform = {
8899
#if PY_MAJOR_VERSION < 3
8900
0, /*bf_getreadbuffer*/
8902
#if PY_MAJOR_VERSION < 3
8903
0, /*bf_getwritebuffer*/
8905
#if PY_MAJOR_VERSION < 3
8906
0, /*bf_getsegcount*/
8908
#if PY_MAJOR_VERSION < 3
8909
0, /*bf_getcharbuffer*/
8911
#if PY_VERSION_HEX >= 0x02060000
8914
#if PY_VERSION_HEX >= 0x02060000
8915
0, /*bf_releasebuffer*/
8919
static PyTypeObject __pyx_type_6Cython_8Compiler_7Visitor_EnvTransform = {
8920
PyVarObject_HEAD_INIT(0, 0)
8921
__Pyx_NAMESTR("Cython.Compiler.Visitor.EnvTransform"), /*tp_name*/
8922
sizeof(struct __pyx_obj_6Cython_8Compiler_7Visitor_EnvTransform), /*tp_basicsize*/
8924
__pyx_tp_dealloc_6Cython_8Compiler_7Visitor_EnvTransform, /*tp_dealloc*/
8928
#if PY_MAJOR_VERSION < 3
8934
&__pyx_tp_as_number_EnvTransform, /*tp_as_number*/
8935
&__pyx_tp_as_sequence_EnvTransform, /*tp_as_sequence*/
8936
&__pyx_tp_as_mapping_EnvTransform, /*tp_as_mapping*/
8938
__pyx_pf_6Cython_8Compiler_7Visitor_12EnvTransform___call__, /*tp_call*/
8942
&__pyx_tp_as_buffer_EnvTransform, /*tp_as_buffer*/
8943
Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC, /*tp_flags*/
8944
__Pyx_DOCSTR("\n This transformation keeps a stack of the environments.\n "), /*tp_doc*/
8945
__pyx_tp_traverse_6Cython_8Compiler_7Visitor_EnvTransform, /*tp_traverse*/
8946
__pyx_tp_clear_6Cython_8Compiler_7Visitor_EnvTransform, /*tp_clear*/
8947
0, /*tp_richcompare*/
8948
0, /*tp_weaklistoffset*/
8951
__pyx_methods_6Cython_8Compiler_7Visitor_EnvTransform, /*tp_methods*/
8953
__pyx_getsets_6Cython_8Compiler_7Visitor_EnvTransform, /*tp_getset*/
8958
0, /*tp_dictoffset*/
8961
__pyx_tp_new_6Cython_8Compiler_7Visitor_EnvTransform, /*tp_new*/
8967
0, /*tp_subclasses*/
8970
#if PY_VERSION_HEX >= 0x02060000
8971
0, /*tp_version_tag*/
8974
static struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer __pyx_vtable_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer;
8976
static PyObject *__pyx_tp_new_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer(PyTypeObject *t, PyObject *a, PyObject *k) {
8977
struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *p;
8978
PyObject *o = __pyx_tp_new_6Cython_8Compiler_7Visitor_TreeVisitor(t, a, k);
8980
p = ((struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)o);
8981
p->__pyx_base.__pyx_base.__pyx_vtab = (struct __pyx_vtabstruct_6Cython_8Compiler_7Visitor_TreeVisitor*)__pyx_vtabptr_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer;
8982
p->orig_node = Py_None; Py_INCREF(Py_None);
8983
p->new_node = Py_None; Py_INCREF(Py_None);
8987
static void __pyx_tp_dealloc_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer(PyObject *o) {
8988
struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *p = (struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)o;
8989
Py_XDECREF(p->orig_node);
8990
Py_XDECREF(p->new_node);
8991
__pyx_tp_dealloc_6Cython_8Compiler_7Visitor_TreeVisitor(o);
8994
static int __pyx_tp_traverse_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer(PyObject *o, visitproc v, void *a) {
8996
struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *p = (struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)o;
8997
e = __pyx_tp_traverse_6Cython_8Compiler_7Visitor_TreeVisitor(o, v, a); if (e) return e;
8999
e = (*v)(p->orig_node, a); if (e) return e;
9002
e = (*v)(p->new_node, a); if (e) return e;
9007
static int __pyx_tp_clear_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer(PyObject *o) {
9008
struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *p = (struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer *)o;
9010
__pyx_tp_clear_6Cython_8Compiler_7Visitor_TreeVisitor(o);
9011
tmp = ((PyObject*)p->orig_node);
9012
p->orig_node = Py_None; Py_INCREF(Py_None);
9014
tmp = ((PyObject*)p->new_node);
9015
p->new_node = Py_None; Py_INCREF(Py_None);
9020
static PyObject *__pyx_getprop_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_orig_node(PyObject *o, void *x) {
9021
return __pyx_pf_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_9orig_node___get__(o);
9024
static int __pyx_setprop_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_orig_node(PyObject *o, PyObject *v, void *x) {
9026
return __pyx_pf_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_9orig_node_1__set__(o, v);
9029
return __pyx_pf_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_9orig_node_2__del__(o);
9033
static PyObject *__pyx_getprop_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_new_node(PyObject *o, void *x) {
9034
return __pyx_pf_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_8new_node___get__(o);
9037
static int __pyx_setprop_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_new_node(PyObject *o, PyObject *v, void *x) {
9039
return __pyx_pf_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_8new_node_1__set__(o, v);
9042
return __pyx_pf_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_8new_node_2__del__(o);
9046
static PyMethodDef __pyx_methods_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer[] = {
9047
{__Pyx_NAMESTR("visit_Node"), (PyCFunction)__pyx_pf_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_1visit_Node, METH_O, __Pyx_DOCSTR(0)},
9051
static struct PyGetSetDef __pyx_getsets_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer[] = {
9052
{(char *)"orig_node", __pyx_getprop_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_orig_node, __pyx_setprop_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_orig_node, 0, 0},
9053
{(char *)"new_node", __pyx_getprop_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_new_node, __pyx_setprop_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer_new_node, 0, 0},
9057
static PyNumberMethods __pyx_tp_as_number_RecursiveNodeReplacer = {
9061
#if PY_MAJOR_VERSION < 3
9077
#if PY_MAJOR_VERSION < 3
9081
#if PY_MAJOR_VERSION < 3
9087
#if PY_MAJOR_VERSION < 3
9090
#if PY_MAJOR_VERSION < 3
9093
0, /*nb_inplace_add*/
9094
0, /*nb_inplace_subtract*/
9095
0, /*nb_inplace_multiply*/
9096
#if PY_MAJOR_VERSION < 3
9097
0, /*nb_inplace_divide*/
9099
0, /*nb_inplace_remainder*/
9100
0, /*nb_inplace_power*/
9101
0, /*nb_inplace_lshift*/
9102
0, /*nb_inplace_rshift*/
9103
0, /*nb_inplace_and*/
9104
0, /*nb_inplace_xor*/
9105
0, /*nb_inplace_or*/
9106
0, /*nb_floor_divide*/
9107
0, /*nb_true_divide*/
9108
0, /*nb_inplace_floor_divide*/
9109
0, /*nb_inplace_true_divide*/
9110
#if PY_VERSION_HEX >= 0x02050000
9115
static PySequenceMethods __pyx_tp_as_sequence_RecursiveNodeReplacer = {
9124
0, /*sq_inplace_concat*/
9125
0, /*sq_inplace_repeat*/
9128
static PyMappingMethods __pyx_tp_as_mapping_RecursiveNodeReplacer = {
9131
0, /*mp_ass_subscript*/
9134
static PyBufferProcs __pyx_tp_as_buffer_RecursiveNodeReplacer = {
9135
#if PY_MAJOR_VERSION < 3
9136
0, /*bf_getreadbuffer*/
9138
#if PY_MAJOR_VERSION < 3
9139
0, /*bf_getwritebuffer*/
9141
#if PY_MAJOR_VERSION < 3
9142
0, /*bf_getsegcount*/
9144
#if PY_MAJOR_VERSION < 3
9145
0, /*bf_getcharbuffer*/
9147
#if PY_VERSION_HEX >= 0x02060000
9150
#if PY_VERSION_HEX >= 0x02060000
9151
0, /*bf_releasebuffer*/
9155
static PyTypeObject __pyx_type_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer = {
9156
PyVarObject_HEAD_INIT(0, 0)
9157
__Pyx_NAMESTR("Cython.Compiler.Visitor.RecursiveNodeReplacer"), /*tp_name*/
9158
sizeof(struct __pyx_obj_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer), /*tp_basicsize*/
9160
__pyx_tp_dealloc_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer, /*tp_dealloc*/
9164
#if PY_MAJOR_VERSION < 3
9170
&__pyx_tp_as_number_RecursiveNodeReplacer, /*tp_as_number*/
9171
&__pyx_tp_as_sequence_RecursiveNodeReplacer, /*tp_as_sequence*/
9172
&__pyx_tp_as_mapping_RecursiveNodeReplacer, /*tp_as_mapping*/
9178
&__pyx_tp_as_buffer_RecursiveNodeReplacer, /*tp_as_buffer*/
9179
Py_TPFLAGS_DEFAULT|Py_TPFLAGS_CHECKTYPES|Py_TPFLAGS_HAVE_NEWBUFFER|Py_TPFLAGS_BASETYPE|Py_TPFLAGS_HAVE_GC, /*tp_flags*/
9180
__Pyx_DOCSTR("\n Recursively replace all occurrences of a node in a subtree by\n another node.\n "), /*tp_doc*/
9181
__pyx_tp_traverse_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer, /*tp_traverse*/
9182
__pyx_tp_clear_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer, /*tp_clear*/
9183
0, /*tp_richcompare*/
9184
0, /*tp_weaklistoffset*/
9187
__pyx_methods_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer, /*tp_methods*/
9189
__pyx_getsets_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer, /*tp_getset*/
9194
0, /*tp_dictoffset*/
9195
__pyx_pf_6Cython_8Compiler_7Visitor_21RecursiveNodeReplacer___init__, /*tp_init*/
9197
__pyx_tp_new_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer, /*tp_new*/
9203
0, /*tp_subclasses*/
9206
#if PY_VERSION_HEX >= 0x02060000
9207
0, /*tp_version_tag*/
9211
static PyMethodDef __pyx_methods[] = {
9215
#if PY_MAJOR_VERSION >= 3
9216
static struct PyModuleDef __pyx_moduledef = {
9217
PyModuleDef_HEAD_INIT,
9218
__Pyx_NAMESTR("Visitor"),
9221
__pyx_methods /* m_methods */,
9222
NULL, /* m_reload */
9223
NULL, /* m_traverse */
9229
static __Pyx_StringTabEntry __pyx_string_tab[] = {
9230
{&__pyx_n_s_1, __pyx_k_1, sizeof(__pyx_k_1), 0, 0, 1, 1},
9231
{&__pyx_kp_s_10, __pyx_k_10, sizeof(__pyx_k_10), 0, 0, 1, 0},
9232
{&__pyx_kp_u_11, __pyx_k_11, sizeof(__pyx_k_11), 0, 1, 0, 0},
9233
{&__pyx_kp_u_12, __pyx_k_12, sizeof(__pyx_k_12), 0, 1, 0, 0},
9234
{&__pyx_kp_u_13, __pyx_k_13, sizeof(__pyx_k_13), 0, 1, 0, 0},
9235
{&__pyx_kp_u_14, __pyx_k_14, sizeof(__pyx_k_14), 0, 1, 0, 0},
9236
{&__pyx_kp_s_15, __pyx_k_15, sizeof(__pyx_k_15), 0, 0, 1, 0},
9237
{&__pyx_kp_s_16, __pyx_k_16, sizeof(__pyx_k_16), 0, 0, 1, 0},
9238
{&__pyx_n_s_17, __pyx_k_17, sizeof(__pyx_k_17), 0, 0, 1, 1},
9239
{&__pyx_n_s_18, __pyx_k_18, sizeof(__pyx_k_18), 0, 0, 1, 1},
9240
{&__pyx_kp_s_19, __pyx_k_19, sizeof(__pyx_k_19), 0, 0, 1, 0},
9241
{&__pyx_kp_u_2, __pyx_k_2, sizeof(__pyx_k_2), 0, 1, 0, 0},
9242
{&__pyx_kp_s_20, __pyx_k_20, sizeof(__pyx_k_20), 0, 0, 1, 0},
9243
{&__pyx_kp_s_21, __pyx_k_21, sizeof(__pyx_k_21), 0, 0, 1, 0},
9244
{&__pyx_kp_s_22, __pyx_k_22, sizeof(__pyx_k_22), 0, 0, 1, 0},
9245
{&__pyx_kp_s_23, __pyx_k_23, sizeof(__pyx_k_23), 0, 0, 1, 0},
9246
{&__pyx_kp_s_24, __pyx_k_24, sizeof(__pyx_k_24), 0, 0, 1, 0},
9247
{&__pyx_kp_s_25, __pyx_k_25, sizeof(__pyx_k_25), 0, 0, 1, 0},
9248
{&__pyx_kp_s_26, __pyx_k_26, sizeof(__pyx_k_26), 0, 0, 1, 0},
9249
{&__pyx_kp_s_27, __pyx_k_27, sizeof(__pyx_k_27), 0, 0, 1, 0},
9250
{&__pyx_kp_s_28, __pyx_k_28, sizeof(__pyx_k_28), 0, 0, 1, 0},
9251
{&__pyx_kp_s_29, __pyx_k_29, sizeof(__pyx_k_29), 0, 0, 1, 0},
9252
{&__pyx_kp_s_31, __pyx_k_31, sizeof(__pyx_k_31), 0, 0, 1, 0},
9253
{&__pyx_kp_s_33, __pyx_k_33, sizeof(__pyx_k_33), 0, 0, 1, 0},
9254
{&__pyx_n_s_34, __pyx_k_34, sizeof(__pyx_k_34), 0, 0, 1, 1},
9255
{&__pyx_n_s_35, __pyx_k_35, sizeof(__pyx_k_35), 0, 0, 1, 1},
9256
{&__pyx_kp_s_36, __pyx_k_36, sizeof(__pyx_k_36), 0, 0, 1, 0},
9257
{&__pyx_kp_u_5, __pyx_k_5, sizeof(__pyx_k_5), 0, 1, 0, 0},
9258
{&__pyx_kp_u_6, __pyx_k_6, sizeof(__pyx_k_6), 0, 1, 0, 0},
9259
{&__pyx_kp_u_7, __pyx_k_7, sizeof(__pyx_k_7), 0, 1, 0, 0},
9260
{&__pyx_kp_u_8, __pyx_k_8, sizeof(__pyx_k_8), 0, 1, 0, 0},
9261
{&__pyx_n_s__AbortError, __pyx_k__AbortError, sizeof(__pyx_k__AbortError), 0, 0, 1, 1},
9262
{&__pyx_n_s__AttributeError, __pyx_k__AttributeError, sizeof(__pyx_k__AttributeError), 0, 0, 1, 1},
9263
{&__pyx_n_s__CompileError, __pyx_k__CompileError, sizeof(__pyx_k__CompileError), 0, 0, 1, 1},
9264
{&__pyx_n_s__CompilerCrash, __pyx_k__CompilerCrash, sizeof(__pyx_k__CompilerCrash), 0, 0, 1, 1},
9265
{&__pyx_n_s__DebugFlags, __pyx_k__DebugFlags, sizeof(__pyx_k__DebugFlags), 0, 0, 1, 1},
9266
{&__pyx_n_s__DefNode, __pyx_k__DefNode, sizeof(__pyx_k__DefNode), 0, 0, 1, 1},
9267
{&__pyx_n_s__Errors, __pyx_k__Errors, sizeof(__pyx_k__Errors), 0, 0, 1, 1},
9268
{&__pyx_n_s__Exception, __pyx_k__Exception, sizeof(__pyx_k__Exception), 0, 0, 1, 1},
9269
{&__pyx_n_s__ExprNode, __pyx_k__ExprNode, sizeof(__pyx_k__ExprNode), 0, 0, 1, 1},
9270
{&__pyx_n_s__ExprNodes, __pyx_k__ExprNodes, sizeof(__pyx_k__ExprNodes), 0, 0, 1, 1},
9271
{&__pyx_n_s__KeyError, __pyx_k__KeyError, sizeof(__pyx_k__KeyError), 0, 0, 1, 1},
9272
{&__pyx_n_s__ModuleNode, __pyx_k__ModuleNode, sizeof(__pyx_k__ModuleNode), 0, 0, 1, 1},
9273
{&__pyx_n_s__NameNode, __pyx_k__NameNode, sizeof(__pyx_k__NameNode), 0, 0, 1, 1},
9274
{&__pyx_n_s__Naming, __pyx_k__Naming, sizeof(__pyx_k__Naming), 0, 0, 1, 1},
9275
{&__pyx_n_s__Node, __pyx_k__Node, sizeof(__pyx_k__Node), 0, 0, 1, 1},
9276
{&__pyx_n_s__Nodes, __pyx_k__Nodes, sizeof(__pyx_k__Nodes), 0, 0, 1, 1},
9277
{&__pyx_n_s__PrintTree, __pyx_k__PrintTree, sizeof(__pyx_k__PrintTree), 0, 0, 1, 1},
9278
{&__pyx_n_s__RuntimeError, __pyx_k__RuntimeError, sizeof(__pyx_k__RuntimeError), 0, 0, 1, 1},
9279
{&__pyx_n_s__StatListNode, __pyx_k__StatListNode, sizeof(__pyx_k__StatListNode), 0, 0, 1, 1},
9280
{&__pyx_n_u___, __pyx_k___, sizeof(__pyx_k___), 0, 1, 0, 1},
9281
{&__pyx_n_s____call__, __pyx_k____call__, sizeof(__pyx_k____call__), 0, 0, 1, 1},
9282
{&__pyx_n_s____class__, __pyx_k____class__, sizeof(__pyx_k____class__), 0, 0, 1, 1},
9283
{&__pyx_n_s____dict__, __pyx_k____dict__, sizeof(__pyx_k____dict__), 0, 0, 1, 1},
9284
{&__pyx_n_s____init__, __pyx_k____init__, sizeof(__pyx_k____init__), 0, 0, 1, 1},
9285
{&__pyx_n_s____main__, __pyx_k____main__, sizeof(__pyx_k____main__), 0, 0, 1, 1},
9286
{&__pyx_n_s____name__, __pyx_k____name__, sizeof(__pyx_k____name__), 0, 0, 1, 1},
9287
{&__pyx_n_s____test__, __pyx_k____test__, sizeof(__pyx_k____test__), 0, 0, 1, 1},
9288
{&__pyx_n_s___find_node_path, __pyx_k___find_node_path, sizeof(__pyx_k___find_node_path), 0, 0, 1, 1},
9289
{&__pyx_n_s___indent, __pyx_k___indent, sizeof(__pyx_k___indent), 0, 0, 1, 1},
9290
{&__pyx_n_s___visit, __pyx_k___visit, sizeof(__pyx_k___visit), 0, 0, 1, 1},
9291
{&__pyx_n_s___visitchild, __pyx_k___visitchild, sizeof(__pyx_k___visitchild), 0, 0, 1, 1},
9292
{&__pyx_n_s___visitchildren, __pyx_k___visitchildren, sizeof(__pyx_k___visitchildren), 0, 0, 1, 1},
9293
{&__pyx_n_s__access_path, __pyx_k__access_path, sizeof(__pyx_k__access_path), 0, 0, 1, 1},
9294
{&__pyx_n_s__append, __pyx_k__append, sizeof(__pyx_k__append), 0, 0, 1, 1},
9295
{&__pyx_n_s__attrs, __pyx_k__attrs, sizeof(__pyx_k__attrs), 0, 0, 1, 1},
9296
{&__pyx_n_s__basename, __pyx_k__basename, sizeof(__pyx_k__basename), 0, 0, 1, 1},
9297
{&__pyx_n_s__cclass, __pyx_k__cclass, sizeof(__pyx_k__cclass), 0, 0, 1, 1},
9298
{&__pyx_n_s__child, __pyx_k__child, sizeof(__pyx_k__child), 0, 0, 1, 1},
9299
{&__pyx_n_s__child_attrs, __pyx_k__child_attrs, sizeof(__pyx_k__child_attrs), 0, 0, 1, 1},
9300
{&__pyx_n_u__child_attrs, __pyx_k__child_attrs, sizeof(__pyx_k__child_attrs), 0, 1, 0, 1},
9301
{&__pyx_n_s__co_filename, __pyx_k__co_filename, sizeof(__pyx_k__co_filename), 0, 0, 1, 1},
9302
{&__pyx_n_s__co_name, __pyx_k__co_name, sizeof(__pyx_k__co_name), 0, 0, 1, 1},
9303
{&__pyx_n_s__context, __pyx_k__context, sizeof(__pyx_k__context), 0, 0, 1, 1},
9304
{&__pyx_n_u__cpp_message, __pyx_k__cpp_message, sizeof(__pyx_k__cpp_message), 0, 1, 0, 1},
9305
{&__pyx_n_s__current_directives, __pyx_k__current_directives, sizeof(__pyx_k__current_directives), 0, 0, 1, 1},
9306
{&__pyx_n_s__directives, __pyx_k__directives, sizeof(__pyx_k__directives), 0, 0, 1, 1},
9307
{&__pyx_n_s__dispatch_table, __pyx_k__dispatch_table, sizeof(__pyx_k__dispatch_table), 0, 0, 1, 1},
9308
{&__pyx_n_s__doctest, __pyx_k__doctest, sizeof(__pyx_k__doctest), 0, 0, 1, 1},
9309
{&__pyx_n_s__dump_node, __pyx_k__dump_node, sizeof(__pyx_k__dump_node), 0, 0, 1, 1},
9310
{&__pyx_n_s__e, __pyx_k__e, sizeof(__pyx_k__e), 0, 0, 1, 1},
9311
{&__pyx_n_s__endswith, __pyx_k__endswith, sizeof(__pyx_k__endswith), 0, 0, 1, 1},
9312
{&__pyx_n_s__ensure_statlist, __pyx_k__ensure_statlist, sizeof(__pyx_k__ensure_statlist), 0, 0, 1, 1},
9313
{&__pyx_n_s__enumerate, __pyx_k__enumerate, sizeof(__pyx_k__enumerate), 0, 0, 1, 1},
9314
{&__pyx_n_s__env_stack, __pyx_k__env_stack, sizeof(__pyx_k__env_stack), 0, 0, 1, 1},
9315
{&__pyx_n_s__exc_info, __pyx_k__exc_info, sizeof(__pyx_k__exc_info), 0, 0, 1, 1},
9316
{&__pyx_n_s__f_code, __pyx_k__f_code, sizeof(__pyx_k__f_code), 0, 0, 1, 1},
9317
{&__pyx_n_s__f_lineno, __pyx_k__f_lineno, sizeof(__pyx_k__f_lineno), 0, 0, 1, 1},
9318
{&__pyx_n_s__f_locals, __pyx_k__f_locals, sizeof(__pyx_k__f_locals), 0, 0, 1, 1},
9319
{&__pyx_n_s__find_handler, __pyx_k__find_handler, sizeof(__pyx_k__find_handler), 0, 0, 1, 1},
9320
{&__pyx_n_s__function, __pyx_k__function, sizeof(__pyx_k__function), 0, 0, 1, 1},
9321
{&__pyx_n_s__get, __pyx_k__get, sizeof(__pyx_k__get), 0, 0, 1, 1},
9322
{&__pyx_n_s__get_description, __pyx_k__get_description, sizeof(__pyx_k__get_description), 0, 0, 1, 1},
9323
{&__pyx_n_s__getmro, __pyx_k__getmro, sizeof(__pyx_k__getmro), 0, 0, 1, 1},
9324
{&__pyx_n_u__gil_message, __pyx_k__gil_message, sizeof(__pyx_k__gil_message), 0, 1, 0, 1},
9325
{&__pyx_n_s__indent, __pyx_k__indent, sizeof(__pyx_k__indent), 0, 0, 1, 1},
9326
{&__pyx_n_s__inspect, __pyx_k__inspect, sizeof(__pyx_k__inspect), 0, 0, 1, 1},
9327
{&__pyx_n_s__join, __pyx_k__join, sizeof(__pyx_k__join), 0, 0, 1, 1},
9328
{&__pyx_n_s__local_scope, __pyx_k__local_scope, sizeof(__pyx_k__local_scope), 0, 0, 1, 1},
9329
{&__pyx_n_s__module, __pyx_k__module, sizeof(__pyx_k__module), 0, 0, 1, 1},
9330
{&__pyx_n_s__name, __pyx_k__name, sizeof(__pyx_k__name), 0, 0, 1, 1},
9331
{&__pyx_n_s__new_node, __pyx_k__new_node, sizeof(__pyx_k__new_node), 0, 0, 1, 1},
9332
{&__pyx_n_s__node, __pyx_k__node, sizeof(__pyx_k__node), 0, 0, 1, 1},
9333
{&__pyx_n_s__old_node, __pyx_k__old_node, sizeof(__pyx_k__old_node), 0, 0, 1, 1},
9334
{&__pyx_n_s__orig_node, __pyx_k__orig_node, sizeof(__pyx_k__orig_node), 0, 0, 1, 1},
9335
{&__pyx_n_s__parent, __pyx_k__parent, sizeof(__pyx_k__parent), 0, 0, 1, 1},
9336
{&__pyx_n_s__path, __pyx_k__path, sizeof(__pyx_k__path), 0, 0, 1, 1},
9337
{&__pyx_n_s__phase, __pyx_k__phase, sizeof(__pyx_k__phase), 0, 0, 1, 1},
9338
{&__pyx_n_s__pos, __pyx_k__pos, sizeof(__pyx_k__pos), 0, 0, 1, 1},
9339
{&__pyx_n_u__pos, __pyx_k__pos, sizeof(__pyx_k__pos), 0, 1, 0, 1},
9340
{&__pyx_n_s__ptr, __pyx_k__ptr, sizeof(__pyx_k__ptr), 0, 0, 1, 1},
9341
{&__pyx_n_s__pyclass, __pyx_k__pyclass, sizeof(__pyx_k__pyclass), 0, 0, 1, 1},
9342
{&__pyx_n_s__recurse_to_children, __pyx_k__recurse_to_children, sizeof(__pyx_k__recurse_to_children), 0, 0, 1, 1},
9343
{&__pyx_n_s__replace_node, __pyx_k__replace_node, sizeof(__pyx_k__replace_node), 0, 0, 1, 1},
9344
{&__pyx_n_s__repr_of, __pyx_k__repr_of, sizeof(__pyx_k__repr_of), 0, 0, 1, 1},
9345
{&__pyx_n_s__root, __pyx_k__root, sizeof(__pyx_k__root), 0, 0, 1, 1},
9346
{&__pyx_n_s__scope, __pyx_k__scope, sizeof(__pyx_k__scope), 0, 0, 1, 1},
9347
{&__pyx_n_s__scope_node, __pyx_k__scope_node, sizeof(__pyx_k__scope_node), 0, 0, 1, 1},
9348
{&__pyx_n_s__scope_type, __pyx_k__scope_type, sizeof(__pyx_k__scope_type), 0, 0, 1, 1},
9349
{&__pyx_n_s__self, __pyx_k__self, sizeof(__pyx_k__self), 0, 0, 1, 1},
9350
{&__pyx_n_u__self, __pyx_k__self, sizeof(__pyx_k__self), 0, 1, 0, 1},
9351
{&__pyx_n_s__sort, __pyx_k__sort, sizeof(__pyx_k__sort), 0, 0, 1, 1},
9352
{&__pyx_n_s__split, __pyx_k__split, sizeof(__pyx_k__split), 0, 0, 1, 1},
9353
{&__pyx_n_s__startswith, __pyx_k__startswith, sizeof(__pyx_k__startswith), 0, 0, 1, 1},
9354
{&__pyx_n_s__stats, __pyx_k__stats, sizeof(__pyx_k__stats), 0, 0, 1, 1},
9355
{&__pyx_n_s__struct, __pyx_k__struct, sizeof(__pyx_k__struct), 0, 0, 1, 1},
9356
{&__pyx_n_u__subexprs, __pyx_k__subexprs, sizeof(__pyx_k__subexprs), 0, 1, 0, 1},
9357
{&__pyx_n_s__super, __pyx_k__super, sizeof(__pyx_k__super), 0, 0, 1, 1},
9358
{&__pyx_n_s__sys, __pyx_k__sys, sizeof(__pyx_k__sys), 0, 0, 1, 1},
9359
{&__pyx_n_s__tb_frame, __pyx_k__tb_frame, sizeof(__pyx_k__tb_frame), 0, 0, 1, 1},
9360
{&__pyx_n_s__tb_next, __pyx_k__tb_next, sizeof(__pyx_k__tb_next), 0, 0, 1, 1},
9361
{&__pyx_n_s__testmod, __pyx_k__testmod, sizeof(__pyx_k__testmod), 0, 0, 1, 1},
9362
{&__pyx_n_s__tree, __pyx_k__tree, sizeof(__pyx_k__tree), 0, 0, 1, 1},
9363
{&__pyx_n_s__type, __pyx_k__type, sizeof(__pyx_k__type), 0, 0, 1, 1},
9364
{&__pyx_n_s__unindent, __pyx_k__unindent, sizeof(__pyx_k__unindent), 0, 0, 1, 1},
9365
{&__pyx_n_s__value, __pyx_k__value, sizeof(__pyx_k__value), 0, 0, 1, 1},
9366
{&__pyx_n_s__visit, __pyx_k__visit, sizeof(__pyx_k__visit), 0, 0, 1, 1},
9367
{&__pyx_n_s__visit_Node, __pyx_k__visit_Node, sizeof(__pyx_k__visit_Node), 0, 0, 1, 1},
9368
{&__pyx_n_s__visit_scope, __pyx_k__visit_scope, sizeof(__pyx_k__visit_scope), 0, 0, 1, 1},
9369
{&__pyx_n_s__visitchildren, __pyx_k__visitchildren, sizeof(__pyx_k__visitchildren), 0, 0, 1, 1},
9370
{0, 0, 0, 0, 0, 0, 0}
9372
static int __Pyx_InitCachedBuiltins(void) {
9373
__pyx_builtin_super = __Pyx_GetName(__pyx_b, __pyx_n_s__super); if (!__pyx_builtin_super) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 58; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9374
__pyx_builtin_AttributeError = __Pyx_GetName(__pyx_b, __pyx_n_s__AttributeError); if (!__pyx_builtin_AttributeError) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 83; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9375
__pyx_builtin_RuntimeError = __Pyx_GetName(__pyx_b, __pyx_n_s__RuntimeError); if (!__pyx_builtin_RuntimeError) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 152; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9376
__pyx_builtin_KeyError = __Pyx_GetName(__pyx_b, __pyx_n_s__KeyError); if (!__pyx_builtin_KeyError) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 160; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9377
__pyx_builtin_Exception = __Pyx_GetName(__pyx_b, __pyx_n_s__Exception); if (!__pyx_builtin_Exception) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 178; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9378
__pyx_builtin_enumerate = __Pyx_GetName(__pyx_b, __pyx_n_s__enumerate); if (!__pyx_builtin_enumerate) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 205; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9384
static int __Pyx_InitCachedConstants(void) {
9385
__Pyx_RefNannySetupContext("__Pyx_InitCachedConstants");
9387
/* "Cython/Compiler/Visitor.py":79
9388
* if attr in ignored:
9390
* if attr.startswith(u'_') or attr.endswith(u'_'): # <<<<<<<<<<<<<<
9394
__pyx_k_tuple_3 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9395
__Pyx_GOTREF(((PyObject *)__pyx_k_tuple_3));
9396
__Pyx_INCREF(((PyObject *)__pyx_n_u___));
9397
PyTuple_SET_ITEM(__pyx_k_tuple_3, 0, ((PyObject *)__pyx_n_u___));
9398
__Pyx_GIVEREF(((PyObject *)__pyx_n_u___));
9399
__Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_3));
9400
__pyx_k_tuple_4 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_4)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 79; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9401
__Pyx_GOTREF(((PyObject *)__pyx_k_tuple_4));
9402
__Pyx_INCREF(((PyObject *)__pyx_n_u___));
9403
PyTuple_SET_ITEM(__pyx_k_tuple_4, 0, ((PyObject *)__pyx_n_u___));
9404
__Pyx_GIVEREF(((PyObject *)__pyx_n_u___));
9405
__Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_4));
9407
/* "Cython/Compiler/Visitor.py":103
9408
* while hasattr(stacktrace, 'tb_frame'):
9409
* frame = stacktrace.tb_frame
9410
* node = frame.f_locals.get(u'self') # <<<<<<<<<<<<<<
9411
* if isinstance(node, Nodes.Node):
9412
* code = frame.f_code
9414
__pyx_k_tuple_9 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_9)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 103; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9415
__Pyx_GOTREF(((PyObject *)__pyx_k_tuple_9));
9416
__Pyx_INCREF(((PyObject *)__pyx_n_u__self));
9417
PyTuple_SET_ITEM(__pyx_k_tuple_9, 0, ((PyObject *)__pyx_n_u__self));
9418
__Pyx_GIVEREF(((PyObject *)__pyx_n_u__self));
9419
__Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_9));
9421
/* "Cython/Compiler/Visitor.py":425
9422
* path = pos[0].get_description()
9424
* path = path.split('/')[-1] # <<<<<<<<<<<<<<
9426
* path = path.split('\\')[-1]
9428
__pyx_k_tuple_30 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_30)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 425; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9429
__Pyx_GOTREF(((PyObject *)__pyx_k_tuple_30));
9430
__Pyx_INCREF(((PyObject *)__pyx_kp_s_29));
9431
PyTuple_SET_ITEM(__pyx_k_tuple_30, 0, ((PyObject *)__pyx_kp_s_29));
9432
__Pyx_GIVEREF(((PyObject *)__pyx_kp_s_29));
9433
__Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_30));
9435
/* "Cython/Compiler/Visitor.py":427
9436
* path = path.split('/')[-1]
9438
* path = path.split('\\')[-1] # <<<<<<<<<<<<<<
9439
* result += "(pos=(%s:%s:%s))" % (path, pos[1], pos[2])
9442
__pyx_k_tuple_32 = PyTuple_New(1); if (unlikely(!__pyx_k_tuple_32)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 427; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9443
__Pyx_GOTREF(((PyObject *)__pyx_k_tuple_32));
9444
__Pyx_INCREF(((PyObject *)__pyx_kp_s_31));
9445
PyTuple_SET_ITEM(__pyx_k_tuple_32, 0, ((PyObject *)__pyx_kp_s_31));
9446
__Pyx_GIVEREF(((PyObject *)__pyx_kp_s_31));
9447
__Pyx_GIVEREF(((PyObject *)__pyx_k_tuple_32));
9448
__Pyx_RefNannyFinishContext();
9451
__Pyx_RefNannyFinishContext();
9455
static int __Pyx_InitGlobals(void) {
9456
if (__Pyx_InitStrings(__pyx_string_tab) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
9457
__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;};
9463
#if PY_MAJOR_VERSION < 3
9464
PyMODINIT_FUNC initVisitor(void); /*proto*/
9465
PyMODINIT_FUNC initVisitor(void)
9467
PyMODINIT_FUNC PyInit_Visitor(void); /*proto*/
9468
PyMODINIT_FUNC PyInit_Visitor(void)
9471
PyObject *__pyx_t_1 = NULL;
9472
PyObject *__pyx_t_2 = NULL;
9473
PyObject *__pyx_t_3 = NULL;
9476
void* __pyx_refnanny = NULL;
9477
__Pyx_RefNanny = __Pyx_RefNannyImportAPI("refnanny");
9478
if (!__Pyx_RefNanny) {
9480
__Pyx_RefNanny = __Pyx_RefNannyImportAPI("Cython.Runtime.refnanny");
9481
if (!__Pyx_RefNanny)
9482
Py_FatalError("failed to import 'refnanny' module");
9484
__pyx_refnanny = __Pyx_RefNanny->SetupContext("PyMODINIT_FUNC PyInit_Visitor(void)", __LINE__, __FILE__);
9486
__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;}
9487
__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;}
9488
#ifdef __pyx_binding_PyCFunctionType_USED
9489
if (__pyx_binding_PyCFunctionType_init() < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9491
/*--- Library function declarations ---*/
9492
/*--- Threads initialization code ---*/
9493
#if defined(__PYX_FORCE_INIT_THREADS) && __PYX_FORCE_INIT_THREADS
9494
#ifdef WITH_THREAD /* Python build with threading support? */
9495
PyEval_InitThreads();
9498
/*--- Module creation code ---*/
9499
#if PY_MAJOR_VERSION < 3
9500
__pyx_m = Py_InitModule4(__Pyx_NAMESTR("Visitor"), __pyx_methods, 0, 0, PYTHON_API_VERSION);
9502
__pyx_m = PyModule_Create(&__pyx_moduledef);
9504
if (!__pyx_m) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
9505
#if PY_MAJOR_VERSION < 3
9508
__pyx_b = PyImport_AddModule(__Pyx_NAMESTR(__Pyx_BUILTIN_MODULE_NAME));
9509
if (!__pyx_b) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
9510
if (__Pyx_SetAttrString(__pyx_m, "__builtins__", __pyx_b) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;};
9511
/*--- Initialize various global constants etc. ---*/
9512
if (unlikely(__Pyx_InitGlobals() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9513
if (__pyx_module_is_main_Cython__Compiler__Visitor) {
9514
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;};
9516
/*--- Builtin init code ---*/
9517
if (unlikely(__Pyx_InitCachedBuiltins() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9518
/*--- Constants init code ---*/
9519
if (unlikely(__Pyx_InitCachedConstants() < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9520
/*--- Global init code ---*/
9521
/*--- Function export code ---*/
9522
/*--- Type init code ---*/
9523
__pyx_vtabptr_6Cython_8Compiler_7Visitor_TreeVisitor = &__pyx_vtable_6Cython_8Compiler_7Visitor_TreeVisitor;
9524
__pyx_vtable_6Cython_8Compiler_7Visitor_TreeVisitor.visit = (PyObject *(*)(struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *, PyObject *, int __pyx_skip_dispatch))__pyx_f_6Cython_8Compiler_7Visitor_11TreeVisitor_visit;
9525
__pyx_vtable_6Cython_8Compiler_7Visitor_TreeVisitor._visit = (PyObject *(*)(struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *, PyObject *))__pyx_f_6Cython_8Compiler_7Visitor_11TreeVisitor__visit;
9526
__pyx_vtable_6Cython_8Compiler_7Visitor_TreeVisitor.find_handler = (PyObject *(*)(struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *, PyObject *))__pyx_f_6Cython_8Compiler_7Visitor_11TreeVisitor_find_handler;
9527
__pyx_vtable_6Cython_8Compiler_7Visitor_TreeVisitor._visitchild = (PyObject *(*)(struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *, PyObject *, PyObject *, PyObject *, PyObject *))__pyx_f_6Cython_8Compiler_7Visitor_11TreeVisitor__visitchild;
9528
__pyx_vtable_6Cython_8Compiler_7Visitor_TreeVisitor._visitchildren = (PyObject *(*)(struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *, PyObject *, PyObject *))__pyx_f_6Cython_8Compiler_7Visitor_11TreeVisitor__visitchildren;
9529
__pyx_vtable_6Cython_8Compiler_7Visitor_TreeVisitor.visitchildren = (PyObject *(*)(struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *, PyObject *, int __pyx_skip_dispatch, struct __pyx_opt_args_6Cython_8Compiler_7Visitor_11TreeVisitor_visitchildren *__pyx_optional_args))__pyx_f_6Cython_8Compiler_7Visitor_11TreeVisitor_visitchildren;
9530
if (PyType_Ready(&__pyx_type_6Cython_8Compiler_7Visitor_TreeVisitor) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 14; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9531
if (__Pyx_SetVtable(__pyx_type_6Cython_8Compiler_7Visitor_TreeVisitor.tp_dict, __pyx_vtabptr_6Cython_8Compiler_7Visitor_TreeVisitor) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 14; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9532
if (__Pyx_SetAttrString(__pyx_m, "TreeVisitor", (PyObject *)&__pyx_type_6Cython_8Compiler_7Visitor_TreeVisitor) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 14; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9533
__pyx_ptype_6Cython_8Compiler_7Visitor_TreeVisitor = &__pyx_type_6Cython_8Compiler_7Visitor_TreeVisitor;
9534
__pyx_vtabptr_6Cython_8Compiler_7Visitor_VisitorTransform = &__pyx_vtable_6Cython_8Compiler_7Visitor_VisitorTransform;
9535
__pyx_vtable_6Cython_8Compiler_7Visitor_VisitorTransform.__pyx_base = *__pyx_vtabptr_6Cython_8Compiler_7Visitor_TreeVisitor;
9536
__pyx_vtable_6Cython_8Compiler_7Visitor_VisitorTransform.__pyx_base.visitchildren = (PyObject *(*)(struct __pyx_obj_6Cython_8Compiler_7Visitor_TreeVisitor *, PyObject *, int __pyx_skip_dispatch, struct __pyx_opt_args_6Cython_8Compiler_7Visitor_11TreeVisitor_visitchildren *__pyx_optional_args))__pyx_f_6Cython_8Compiler_7Visitor_16VisitorTransform_visitchildren;
9537
__pyx_vtable_6Cython_8Compiler_7Visitor_VisitorTransform.recurse_to_children = (PyObject *(*)(struct __pyx_obj_6Cython_8Compiler_7Visitor_VisitorTransform *, PyObject *, int __pyx_skip_dispatch))__pyx_f_6Cython_8Compiler_7Visitor_16VisitorTransform_recurse_to_children;
9538
__pyx_type_6Cython_8Compiler_7Visitor_VisitorTransform.tp_base = __pyx_ptype_6Cython_8Compiler_7Visitor_TreeVisitor;
9539
if (PyType_Ready(&__pyx_type_6Cython_8Compiler_7Visitor_VisitorTransform) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9540
if (__Pyx_SetVtable(__pyx_type_6Cython_8Compiler_7Visitor_VisitorTransform.tp_dict, __pyx_vtabptr_6Cython_8Compiler_7Visitor_VisitorTransform) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9541
if (__Pyx_SetAttrString(__pyx_m, "VisitorTransform", (PyObject *)&__pyx_type_6Cython_8Compiler_7Visitor_VisitorTransform) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 213; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9542
__pyx_ptype_6Cython_8Compiler_7Visitor_VisitorTransform = &__pyx_type_6Cython_8Compiler_7Visitor_VisitorTransform;
9543
__pyx_vtabptr_6Cython_8Compiler_7Visitor_CythonTransform = &__pyx_vtable_6Cython_8Compiler_7Visitor_CythonTransform;
9544
__pyx_vtable_6Cython_8Compiler_7Visitor_CythonTransform.__pyx_base = *__pyx_vtabptr_6Cython_8Compiler_7Visitor_VisitorTransform;
9545
__pyx_type_6Cython_8Compiler_7Visitor_CythonTransform.tp_base = __pyx_ptype_6Cython_8Compiler_7Visitor_VisitorTransform;
9546
if (PyType_Ready(&__pyx_type_6Cython_8Compiler_7Visitor_CythonTransform) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 257; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9547
if (__Pyx_SetVtable(__pyx_type_6Cython_8Compiler_7Visitor_CythonTransform.tp_dict, __pyx_vtabptr_6Cython_8Compiler_7Visitor_CythonTransform) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 257; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9548
if (__Pyx_SetAttrString(__pyx_m, "CythonTransform", (PyObject *)&__pyx_type_6Cython_8Compiler_7Visitor_CythonTransform) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 257; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9549
__pyx_ptype_6Cython_8Compiler_7Visitor_CythonTransform = &__pyx_type_6Cython_8Compiler_7Visitor_CythonTransform;
9550
__pyx_vtabptr_6Cython_8Compiler_7Visitor_ScopeTrackingTransform = &__pyx_vtable_6Cython_8Compiler_7Visitor_ScopeTrackingTransform;
9551
__pyx_vtable_6Cython_8Compiler_7Visitor_ScopeTrackingTransform.__pyx_base = *__pyx_vtabptr_6Cython_8Compiler_7Visitor_CythonTransform;
9552
__pyx_vtable_6Cython_8Compiler_7Visitor_ScopeTrackingTransform.visit_scope = (PyObject *(*)(struct __pyx_obj_6Cython_8Compiler_7Visitor_ScopeTrackingTransform *, PyObject *, PyObject *))__pyx_f_6Cython_8Compiler_7Visitor_22ScopeTrackingTransform_visit_scope;
9553
__pyx_type_6Cython_8Compiler_7Visitor_ScopeTrackingTransform.tp_base = __pyx_ptype_6Cython_8Compiler_7Visitor_CythonTransform;
9554
if (PyType_Ready(&__pyx_type_6Cython_8Compiler_7Visitor_ScopeTrackingTransform) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 285; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9555
if (__Pyx_SetVtable(__pyx_type_6Cython_8Compiler_7Visitor_ScopeTrackingTransform.tp_dict, __pyx_vtabptr_6Cython_8Compiler_7Visitor_ScopeTrackingTransform) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 285; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9556
if (__Pyx_SetAttrString(__pyx_m, "ScopeTrackingTransform", (PyObject *)&__pyx_type_6Cython_8Compiler_7Visitor_ScopeTrackingTransform) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 285; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9557
__pyx_ptype_6Cython_8Compiler_7Visitor_ScopeTrackingTransform = &__pyx_type_6Cython_8Compiler_7Visitor_ScopeTrackingTransform;
9558
__pyx_vtabptr_6Cython_8Compiler_7Visitor_EnvTransform = &__pyx_vtable_6Cython_8Compiler_7Visitor_EnvTransform;
9559
__pyx_vtable_6Cython_8Compiler_7Visitor_EnvTransform.__pyx_base = *__pyx_vtabptr_6Cython_8Compiler_7Visitor_CythonTransform;
9560
__pyx_type_6Cython_8Compiler_7Visitor_EnvTransform.tp_base = __pyx_ptype_6Cython_8Compiler_7Visitor_CythonTransform;
9561
if (PyType_Ready(&__pyx_type_6Cython_8Compiler_7Visitor_EnvTransform) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 317; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9562
if (__Pyx_SetVtable(__pyx_type_6Cython_8Compiler_7Visitor_EnvTransform.tp_dict, __pyx_vtabptr_6Cython_8Compiler_7Visitor_EnvTransform) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 317; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9563
if (__Pyx_SetAttrString(__pyx_m, "EnvTransform", (PyObject *)&__pyx_type_6Cython_8Compiler_7Visitor_EnvTransform) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 317; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9564
__pyx_ptype_6Cython_8Compiler_7Visitor_EnvTransform = &__pyx_type_6Cython_8Compiler_7Visitor_EnvTransform;
9565
__pyx_vtabptr_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer = &__pyx_vtable_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer;
9566
__pyx_vtable_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer.__pyx_base = *__pyx_vtabptr_6Cython_8Compiler_7Visitor_VisitorTransform;
9567
__pyx_type_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer.tp_base = __pyx_ptype_6Cython_8Compiler_7Visitor_VisitorTransform;
9568
if (PyType_Ready(&__pyx_type_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 335; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9569
if (__Pyx_SetVtable(__pyx_type_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer.tp_dict, __pyx_vtabptr_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 335; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9570
if (__Pyx_SetAttrString(__pyx_m, "RecursiveNodeReplacer", (PyObject *)&__pyx_type_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 335; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9571
__pyx_ptype_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer = &__pyx_type_6Cython_8Compiler_7Visitor_RecursiveNodeReplacer;
9572
/*--- Type import code ---*/
9573
/*--- Function import code ---*/
9574
/*--- Execution code ---*/
9576
/* "Cython/Compiler/Visitor.py":7
9579
* import inspect # <<<<<<<<<<<<<<
9583
__pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__inspect), 0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 7; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9584
__Pyx_GOTREF(__pyx_t_1);
9585
if (PyObject_SetAttr(__pyx_m, __pyx_n_s__inspect, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 7; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9586
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
9588
/* "Cython/Compiler/Visitor.py":8
9591
* import Nodes # <<<<<<<<<<<<<<
9595
__pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__Nodes), 0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 8; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9596
__Pyx_GOTREF(__pyx_t_1);
9597
if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Nodes, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 8; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9598
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
9600
/* "Cython/Compiler/Visitor.py":9
9603
* import ExprNodes # <<<<<<<<<<<<<<
9607
__pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__ExprNodes), 0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 9; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9608
__Pyx_GOTREF(__pyx_t_1);
9609
if (PyObject_SetAttr(__pyx_m, __pyx_n_s__ExprNodes, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 9; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9610
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
9612
/* "Cython/Compiler/Visitor.py":10
9615
* import Naming # <<<<<<<<<<<<<<
9619
__pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__Naming), 0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 10; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9620
__Pyx_GOTREF(__pyx_t_1);
9621
if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Naming, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 10; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9622
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
9624
/* "Cython/Compiler/Visitor.py":11
9627
* import Errors # <<<<<<<<<<<<<<
9631
__pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__Errors), 0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 11; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9632
__Pyx_GOTREF(__pyx_t_1);
9633
if (PyObject_SetAttr(__pyx_m, __pyx_n_s__Errors, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 11; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9634
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
9636
/* "Cython/Compiler/Visitor.py":12
9639
* import DebugFlags # <<<<<<<<<<<<<<
9641
* class TreeVisitor(object):
9643
__pyx_t_1 = __Pyx_Import(((PyObject *)__pyx_n_s__DebugFlags), 0); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 12; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9644
__Pyx_GOTREF(__pyx_t_1);
9645
if (PyObject_SetAttr(__pyx_m, __pyx_n_s__DebugFlags, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 12; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9646
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
9648
/* "Cython/Compiler/Visitor.py":351
9651
* def recursively_replace_node(tree, old_node, new_node): # <<<<<<<<<<<<<<
9652
* replace_in = RecursiveNodeReplacer(old_node, new_node)
9655
__pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_6Cython_8Compiler_7Visitor_recursively_replace_node, NULL, __pyx_n_s_34); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9656
__Pyx_GOTREF(__pyx_t_1);
9657
if (PyObject_SetAttr(__pyx_m, __pyx_n_s_35, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 351; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9658
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
9660
/* "Cython/Compiler/Visitor.py":357
9663
* def ensure_statlist(node): # <<<<<<<<<<<<<<
9664
* if not isinstance(node, Nodes.StatListNode):
9665
* node = Nodes.StatListNode(pos=node.pos, stats=[node])
9667
__pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_6Cython_8Compiler_7Visitor_1ensure_statlist, NULL, __pyx_n_s_34); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9668
__Pyx_GOTREF(__pyx_t_1);
9669
if (PyObject_SetAttr(__pyx_m, __pyx_n_s__ensure_statlist, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 357; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9670
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
9672
/* "Cython/Compiler/Visitor.py":362
9675
* def replace_node(ptr, value): # <<<<<<<<<<<<<<
9676
* """Replaces a node. ptr is of the form used on the access path stack
9677
* (parent, attrname, listidx|None)
9679
__pyx_t_1 = PyCFunction_NewEx(&__pyx_mdef_6Cython_8Compiler_7Visitor_2replace_node, NULL, __pyx_n_s_34); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 362; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9680
__Pyx_GOTREF(__pyx_t_1);
9681
if (PyObject_SetAttr(__pyx_m, __pyx_n_s__replace_node, __pyx_t_1) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 362; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9682
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
9684
/* "Cython/Compiler/Visitor.py":372
9685
* getattr(parent, attrname)[listidx] = value
9687
* class PrintTree(TreeVisitor): # <<<<<<<<<<<<<<
9688
* """Prints a representation of the tree to standard output.
9689
* Subclass and override repr_of to provide more information
9691
__pyx_t_1 = PyDict_New(); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 372; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9692
__Pyx_GOTREF(((PyObject *)__pyx_t_1));
9694
/* "Cython/Compiler/Visitor.py":376
9695
* Subclass and override repr_of to provide more information
9697
* def __init__(self): # <<<<<<<<<<<<<<
9698
* TreeVisitor.__init__(self)
9701
__pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_6Cython_8Compiler_7Visitor_9PrintTree___init__, NULL, __pyx_n_s_34); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 376; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9702
__Pyx_GOTREF(__pyx_t_2);
9703
if (PyObject_SetItem(__pyx_t_1, __pyx_n_s____init__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 376; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9704
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
9706
/* "Cython/Compiler/Visitor.py":380
9709
* def indent(self): # <<<<<<<<<<<<<<
9710
* self._indent += " "
9711
* def unindent(self):
9713
__pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_6Cython_8Compiler_7Visitor_9PrintTree_1indent, NULL, __pyx_n_s_34); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9714
__Pyx_GOTREF(__pyx_t_2);
9715
if (PyObject_SetItem(__pyx_t_1, __pyx_n_s__indent, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 380; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9716
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
9718
/* "Cython/Compiler/Visitor.py":382
9720
* self._indent += " "
9721
* def unindent(self): # <<<<<<<<<<<<<<
9722
* self._indent = self._indent[:-2]
9725
__pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_6Cython_8Compiler_7Visitor_9PrintTree_2unindent, NULL, __pyx_n_s_34); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 382; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9726
__Pyx_GOTREF(__pyx_t_2);
9727
if (PyObject_SetItem(__pyx_t_1, __pyx_n_s__unindent, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 382; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9728
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
9730
/* "Cython/Compiler/Visitor.py":385
9731
* self._indent = self._indent[:-2]
9733
* def __call__(self, tree, phase=None): # <<<<<<<<<<<<<<
9734
* print("Parse tree dump at phase '%s'" % phase)
9737
__pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_6Cython_8Compiler_7Visitor_9PrintTree_3__call__, NULL, __pyx_n_s_34); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 385; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9738
__Pyx_GOTREF(__pyx_t_2);
9739
if (PyObject_SetItem(__pyx_t_1, __pyx_n_s____call__, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 385; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9740
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
9742
/* "Cython/Compiler/Visitor.py":394
9743
* # under the parent-node, not displaying the list itself in
9745
* def visit_Node(self, node): # <<<<<<<<<<<<<<
9746
* if len(self.access_path) == 0:
9749
__pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_6Cython_8Compiler_7Visitor_9PrintTree_4visit_Node, NULL, __pyx_n_s_34); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 394; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9750
__Pyx_GOTREF(__pyx_t_2);
9751
if (PyObject_SetItem(__pyx_t_1, __pyx_n_s__visit_Node, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 394; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9752
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
9754
/* "Cython/Compiler/Visitor.py":409
9757
* def repr_of(self, node): # <<<<<<<<<<<<<<
9761
__pyx_t_2 = __pyx_binding_PyCFunctionType_NewEx(&__pyx_mdef_6Cython_8Compiler_7Visitor_9PrintTree_5repr_of, NULL, __pyx_n_s_34); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 409; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9762
__Pyx_GOTREF(__pyx_t_2);
9763
if (PyObject_SetItem(__pyx_t_1, __pyx_n_s__repr_of, __pyx_t_2) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 409; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9764
__Pyx_DECREF(__pyx_t_2); __pyx_t_2 = 0;
9766
/* "Cython/Compiler/Visitor.py":372
9767
* getattr(parent, attrname)[listidx] = value
9769
* class PrintTree(TreeVisitor): # <<<<<<<<<<<<<<
9770
* """Prints a representation of the tree to standard output.
9771
* Subclass and override repr_of to provide more information
9773
__pyx_t_2 = PyTuple_New(1); if (unlikely(!__pyx_t_2)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 372; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9774
__Pyx_GOTREF(((PyObject *)__pyx_t_2));
9775
__Pyx_INCREF(((PyObject *)((PyObject*)__pyx_ptype_6Cython_8Compiler_7Visitor_TreeVisitor)));
9776
PyTuple_SET_ITEM(__pyx_t_2, 0, ((PyObject *)((PyObject*)__pyx_ptype_6Cython_8Compiler_7Visitor_TreeVisitor)));
9777
__Pyx_GIVEREF(((PyObject *)((PyObject*)__pyx_ptype_6Cython_8Compiler_7Visitor_TreeVisitor)));
9778
if (PyDict_SetItemString(((PyObject *)__pyx_t_1), "__doc__", ((PyObject *)__pyx_kp_s_36)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 372; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9779
__pyx_t_3 = __Pyx_CreateClass(((PyObject *)__pyx_t_2), ((PyObject *)__pyx_t_1), __pyx_n_s__PrintTree, __pyx_n_s_34); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 372; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9780
__Pyx_GOTREF(__pyx_t_3);
9781
__Pyx_DECREF(((PyObject *)__pyx_t_2)); __pyx_t_2 = 0;
9782
if (PyObject_SetAttr(__pyx_m, __pyx_n_s__PrintTree, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 372; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9783
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
9784
__Pyx_DECREF(((PyObject *)__pyx_t_1)); __pyx_t_1 = 0;
9786
/* "Cython/Compiler/Visitor.py":432
9789
* if __name__ == "__main__": # <<<<<<<<<<<<<<
9793
__pyx_t_1 = __Pyx_GetName(__pyx_m, __pyx_n_s____name__); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 432; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9794
__Pyx_GOTREF(__pyx_t_1);
9795
__pyx_t_3 = PyObject_RichCompare(__pyx_t_1, ((PyObject *)__pyx_n_s____main__), Py_EQ); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 432; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9796
__Pyx_GOTREF(__pyx_t_3);
9797
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
9798
__pyx_t_4 = __Pyx_PyObject_IsTrue(__pyx_t_3); if (unlikely(__pyx_t_4 < 0)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 432; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9799
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
9802
/* "Cython/Compiler/Visitor.py":433
9804
* if __name__ == "__main__":
9805
* import doctest # <<<<<<<<<<<<<<
9808
__pyx_t_3 = __Pyx_Import(((PyObject *)__pyx_n_s__doctest), 0); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 433; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9809
__Pyx_GOTREF(__pyx_t_3);
9810
if (PyObject_SetAttr(__pyx_m, __pyx_n_s__doctest, __pyx_t_3) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 433; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9811
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
9813
/* "Cython/Compiler/Visitor.py":434
9814
* if __name__ == "__main__":
9816
* doctest.testmod() # <<<<<<<<<<<<<<
9818
__pyx_t_3 = __Pyx_GetName(__pyx_m, __pyx_n_s__doctest); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 434; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9819
__Pyx_GOTREF(__pyx_t_3);
9820
__pyx_t_1 = PyObject_GetAttr(__pyx_t_3, __pyx_n_s__testmod); if (unlikely(!__pyx_t_1)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 434; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9821
__Pyx_GOTREF(__pyx_t_1);
9822
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
9823
__pyx_t_3 = PyObject_Call(__pyx_t_1, ((PyObject *)__pyx_empty_tuple), NULL); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 434; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9824
__Pyx_GOTREF(__pyx_t_3);
9825
__Pyx_DECREF(__pyx_t_1); __pyx_t_1 = 0;
9826
__Pyx_DECREF(__pyx_t_3); __pyx_t_3 = 0;
9831
/* "Cython/Compiler/Visitor.py":1
9832
* # cython: infer_types=True # <<<<<<<<<<<<<<
9836
__pyx_t_3 = PyDict_New(); if (unlikely(!__pyx_t_3)) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9837
__Pyx_GOTREF(((PyObject *)__pyx_t_3));
9838
if (PyObject_SetAttr(__pyx_m, __pyx_n_s____test__, ((PyObject *)__pyx_t_3)) < 0) {__pyx_filename = __pyx_f[0]; __pyx_lineno = 1; __pyx_clineno = __LINE__; goto __pyx_L1_error;}
9839
__Pyx_DECREF(((PyObject *)__pyx_t_3)); __pyx_t_3 = 0;
9842
__Pyx_XDECREF(__pyx_t_1);
9843
__Pyx_XDECREF(__pyx_t_2);
9844
__Pyx_XDECREF(__pyx_t_3);
9846
__Pyx_AddTraceback("init Cython.Compiler.Visitor");
9847
Py_DECREF(__pyx_m); __pyx_m = 0;
9848
} else if (!PyErr_Occurred()) {
9849
PyErr_SetString(PyExc_ImportError, "init Cython.Compiler.Visitor");
9852
__Pyx_RefNannyFinishContext();
9853
#if PY_MAJOR_VERSION < 3
9860
/* Runtime support code */
9862
static PyObject *__Pyx_GetName(PyObject *dict, PyObject *name) {
9864
result = PyObject_GetAttr(dict, name);
9866
PyErr_SetObject(PyExc_NameError, name);
9870
static void __Pyx_RaiseArgtupleInvalid(
9871
const char* func_name,
9875
Py_ssize_t num_found)
9877
Py_ssize_t num_expected;
9878
const char *number, *more_or_less;
9880
if (num_found < num_min) {
9881
num_expected = num_min;
9882
more_or_less = "at least";
9884
num_expected = num_max;
9885
more_or_less = "at most";
9888
more_or_less = "exactly";
9890
number = (num_expected == 1) ? "" : "s";
9891
PyErr_Format(PyExc_TypeError,
9892
#if PY_VERSION_HEX < 0x02050000
9893
"%s() takes %s %d positional argument%s (%d given)",
9895
"%s() takes %s %zd positional argument%s (%zd given)",
9897
func_name, more_or_less, num_expected, number, num_found);
9900
static CYTHON_INLINE int __Pyx_CheckKeywordStrings(
9902
const char* function_name,
9907
while (PyDict_Next(kwdict, &pos, &key, 0)) {
9908
#if PY_MAJOR_VERSION < 3
9909
if (unlikely(!PyString_CheckExact(key)) && unlikely(!PyString_Check(key)))
9911
if (unlikely(!PyUnicode_CheckExact(key)) && unlikely(!PyUnicode_Check(key)))
9913
goto invalid_keyword_type;
9915
if ((!kw_allowed) && unlikely(key))
9916
goto invalid_keyword;
9918
invalid_keyword_type:
9919
PyErr_Format(PyExc_TypeError,
9920
"%s() keywords must be strings", function_name);
9923
PyErr_Format(PyExc_TypeError,
9924
#if PY_MAJOR_VERSION < 3
9925
"%s() got an unexpected keyword argument '%s'",
9926
function_name, PyString_AsString(key));
9928
"%s() got an unexpected keyword argument '%U'",
9929
function_name, key);
9934
static void __Pyx_RaiseDoubleKeywordsError(
9935
const char* func_name,
9938
PyErr_Format(PyExc_TypeError,
9939
#if PY_MAJOR_VERSION >= 3
9940
"%s() got multiple values for keyword argument '%U'", func_name, kw_name);
9942
"%s() got multiple values for keyword argument '%s'", func_name,
9943
PyString_AS_STRING(kw_name));
9947
static int __Pyx_ParseOptionalKeywords(
9949
PyObject **argnames[],
9952
Py_ssize_t num_pos_args,
9953
const char* function_name)
9955
PyObject *key = 0, *value = 0;
9958
PyObject*** first_kw_arg = argnames + num_pos_args;
9960
while (PyDict_Next(kwds, &pos, &key, &value)) {
9961
name = first_kw_arg;
9962
while (*name && (**name != key)) name++;
9964
values[name-argnames] = value;
9966
#if PY_MAJOR_VERSION < 3
9967
if (unlikely(!PyString_CheckExact(key)) && unlikely(!PyString_Check(key))) {
9969
if (unlikely(!PyUnicode_CheckExact(key)) && unlikely(!PyUnicode_Check(key))) {
9971
goto invalid_keyword_type;
9973
for (name = first_kw_arg; *name; name++) {
9974
#if PY_MAJOR_VERSION >= 3
9975
if (PyUnicode_GET_SIZE(**name) == PyUnicode_GET_SIZE(key) &&
9976
PyUnicode_Compare(**name, key) == 0) break;
9978
if (PyString_GET_SIZE(**name) == PyString_GET_SIZE(key) &&
9979
_PyString_Eq(**name, key)) break;
9983
values[name-argnames] = value;
9985
/* unexpected keyword found */
9986
for (name=argnames; name != first_kw_arg; name++) {
9987
if (**name == key) goto arg_passed_twice;
9988
#if PY_MAJOR_VERSION >= 3
9989
if (PyUnicode_GET_SIZE(**name) == PyUnicode_GET_SIZE(key) &&
9990
PyUnicode_Compare(**name, key) == 0) goto arg_passed_twice;
9992
if (PyString_GET_SIZE(**name) == PyString_GET_SIZE(key) &&
9993
_PyString_Eq(**name, key)) goto arg_passed_twice;
9997
if (unlikely(PyDict_SetItem(kwds2, key, value))) goto bad;
9999
goto invalid_keyword;
10007
__Pyx_RaiseDoubleKeywordsError(function_name, **name);
10009
invalid_keyword_type:
10010
PyErr_Format(PyExc_TypeError,
10011
"%s() keywords must be strings", function_name);
10014
PyErr_Format(PyExc_TypeError,
10015
#if PY_MAJOR_VERSION < 3
10016
"%s() got an unexpected keyword argument '%s'",
10017
function_name, PyString_AsString(key));
10019
"%s() got an unexpected keyword argument '%U'",
10020
function_name, key);
10027
static int __Pyx_GetException(PyObject **type, PyObject **value, PyObject **tb) {
10028
PyObject *local_type, *local_value, *local_tb;
10029
PyObject *tmp_type, *tmp_value, *tmp_tb;
10030
PyThreadState *tstate = PyThreadState_GET();
10031
local_type = tstate->curexc_type;
10032
local_value = tstate->curexc_value;
10033
local_tb = tstate->curexc_traceback;
10034
tstate->curexc_type = 0;
10035
tstate->curexc_value = 0;
10036
tstate->curexc_traceback = 0;
10037
PyErr_NormalizeException(&local_type, &local_value, &local_tb);
10038
if (unlikely(tstate->curexc_type))
10040
#if PY_MAJOR_VERSION >= 3
10041
if (unlikely(PyException_SetTraceback(local_value, local_tb) < 0))
10044
*type = local_type;
10045
*value = local_value;
10047
Py_INCREF(local_type);
10048
Py_INCREF(local_value);
10049
Py_INCREF(local_tb);
10050
tmp_type = tstate->exc_type;
10051
tmp_value = tstate->exc_value;
10052
tmp_tb = tstate->exc_traceback;
10053
tstate->exc_type = local_type;
10054
tstate->exc_value = local_value;
10055
tstate->exc_traceback = local_tb;
10056
/* Make sure tstate is in a consistent state when we XDECREF
10057
these objects (XDECREF may run arbitrary code). */
10058
Py_XDECREF(tmp_type);
10059
Py_XDECREF(tmp_value);
10060
Py_XDECREF(tmp_tb);
10066
Py_XDECREF(local_type);
10067
Py_XDECREF(local_value);
10068
Py_XDECREF(local_tb);
10073
static CYTHON_INLINE void __Pyx_RaiseNeedMoreValuesError(Py_ssize_t index) {
10074
PyErr_Format(PyExc_ValueError,
10075
#if PY_VERSION_HEX < 0x02050000
10076
"need more than %d value%s to unpack", (int)index,
10078
"need more than %zd value%s to unpack", index,
10080
(index == 1) ? "" : "s");
10083
static CYTHON_INLINE void __Pyx_RaiseTooManyValuesError(Py_ssize_t expected) {
10084
PyErr_Format(PyExc_ValueError,
10085
#if PY_VERSION_HEX < 0x02050000
10086
"too many values to unpack (expected %d)", (int)expected);
10088
"too many values to unpack (expected %zd)", expected);
10092
static PyObject *__Pyx_UnpackItem(PyObject *iter, Py_ssize_t index) {
10094
if (!(item = PyIter_Next(iter))) {
10095
if (!PyErr_Occurred()) {
10096
__Pyx_RaiseNeedMoreValuesError(index);
10102
static int __Pyx_EndUnpack(PyObject *iter, Py_ssize_t expected) {
10104
if ((item = PyIter_Next(iter))) {
10106
__Pyx_RaiseTooManyValuesError(expected);
10109
else if (!PyErr_Occurred())
10115
static CYTHON_INLINE void __Pyx_ErrRestore(PyObject *type, PyObject *value, PyObject *tb) {
10116
PyObject *tmp_type, *tmp_value, *tmp_tb;
10117
PyThreadState *tstate = PyThreadState_GET();
10119
tmp_type = tstate->curexc_type;
10120
tmp_value = tstate->curexc_value;
10121
tmp_tb = tstate->curexc_traceback;
10122
tstate->curexc_type = type;
10123
tstate->curexc_value = value;
10124
tstate->curexc_traceback = tb;
10125
Py_XDECREF(tmp_type);
10126
Py_XDECREF(tmp_value);
10127
Py_XDECREF(tmp_tb);
10130
static CYTHON_INLINE void __Pyx_ErrFetch(PyObject **type, PyObject **value, PyObject **tb) {
10131
PyThreadState *tstate = PyThreadState_GET();
10132
*type = tstate->curexc_type;
10133
*value = tstate->curexc_value;
10134
*tb = tstate->curexc_traceback;
10136
tstate->curexc_type = 0;
10137
tstate->curexc_value = 0;
10138
tstate->curexc_traceback = 0;
10142
#if PY_MAJOR_VERSION < 3
10143
static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb) {
10147
/* First, check the traceback argument, replacing None with NULL. */
10148
if (tb == Py_None) {
10152
else if (tb != NULL && !PyTraceBack_Check(tb)) {
10153
PyErr_SetString(PyExc_TypeError,
10154
"raise: arg 3 must be a traceback or None");
10157
/* Next, replace a missing value with None */
10158
if (value == NULL) {
10162
#if PY_VERSION_HEX < 0x02050000
10163
if (!PyClass_Check(type))
10165
if (!PyType_Check(type))
10168
/* Raising an instance. The value should be a dummy. */
10169
if (value != Py_None) {
10170
PyErr_SetString(PyExc_TypeError,
10171
"instance exception may not have a separate value");
10174
/* Normalize to raise <class>, <instance> */
10177
#if PY_VERSION_HEX < 0x02050000
10178
if (PyInstance_Check(type)) {
10179
type = (PyObject*) ((PyInstanceObject*)type)->in_class;
10184
PyErr_SetString(PyExc_TypeError,
10185
"raise: exception must be an old-style class or instance");
10189
type = (PyObject*) Py_TYPE(type);
10191
if (!PyType_IsSubtype((PyTypeObject *)type, (PyTypeObject *)PyExc_BaseException)) {
10192
PyErr_SetString(PyExc_TypeError,
10193
"raise: exception class must be a subclass of BaseException");
10199
__Pyx_ErrRestore(type, value, tb);
10208
#else /* Python 3+ */
10210
static void __Pyx_Raise(PyObject *type, PyObject *value, PyObject *tb) {
10211
if (tb == Py_None) {
10213
} else if (tb && !PyTraceBack_Check(tb)) {
10214
PyErr_SetString(PyExc_TypeError,
10215
"raise: arg 3 must be a traceback or None");
10218
if (value == Py_None)
10221
if (PyExceptionInstance_Check(type)) {
10223
PyErr_SetString(PyExc_TypeError,
10224
"instance exception may not have a separate value");
10228
type = (PyObject*) Py_TYPE(value);
10229
} else if (!PyExceptionClass_Check(type)) {
10230
PyErr_SetString(PyExc_TypeError,
10231
"raise: exception class must be a subclass of BaseException");
10235
PyErr_SetObject(type, value);
10238
PyThreadState *tstate = PyThreadState_GET();
10239
PyObject* tmp_tb = tstate->curexc_traceback;
10240
if (tb != tmp_tb) {
10242
tstate->curexc_traceback = tb;
10243
Py_XDECREF(tmp_tb);
10252
static CYTHON_INLINE void __Pyx_RaiseNoneIndexingError(void) {
10253
PyErr_SetString(PyExc_TypeError, "'NoneType' object is unsubscriptable");
10256
static CYTHON_INLINE void __Pyx_RaiseNoneNotIterableError(void) {
10257
PyErr_SetString(PyExc_TypeError, "'NoneType' object is not iterable");
10260
static void __Pyx_UnpackTupleError(PyObject *t, Py_ssize_t index) {
10261
if (t == Py_None) {
10262
__Pyx_RaiseNoneNotIterableError();
10263
} else if (PyTuple_GET_SIZE(t) < index) {
10264
__Pyx_RaiseNeedMoreValuesError(PyTuple_GET_SIZE(t));
10266
__Pyx_RaiseTooManyValuesError(index);
10270
static CYTHON_INLINE void __Pyx_ExceptionSave(PyObject **type, PyObject **value, PyObject **tb) {
10271
PyThreadState *tstate = PyThreadState_GET();
10272
*type = tstate->exc_type;
10273
*value = tstate->exc_value;
10274
*tb = tstate->exc_traceback;
10276
Py_XINCREF(*value);
10280
static void __Pyx_ExceptionReset(PyObject *type, PyObject *value, PyObject *tb) {
10281
PyObject *tmp_type, *tmp_value, *tmp_tb;
10282
PyThreadState *tstate = PyThreadState_GET();
10283
tmp_type = tstate->exc_type;
10284
tmp_value = tstate->exc_value;
10285
tmp_tb = tstate->exc_traceback;
10286
tstate->exc_type = type;
10287
tstate->exc_value = value;
10288
tstate->exc_traceback = tb;
10289
Py_XDECREF(tmp_type);
10290
Py_XDECREF(tmp_value);
10291
Py_XDECREF(tmp_tb);
10294
static PyObject *__Pyx_Import(PyObject *name, PyObject *from_list) {
10295
PyObject *py_import = 0;
10296
PyObject *empty_list = 0;
10297
PyObject *module = 0;
10298
PyObject *global_dict = 0;
10299
PyObject *empty_dict = 0;
10301
py_import = __Pyx_GetAttrString(__pyx_b, "__import__");
10307
empty_list = PyList_New(0);
10312
global_dict = PyModule_GetDict(__pyx_m);
10315
empty_dict = PyDict_New();
10318
module = PyObject_CallFunctionObjArgs(py_import,
10319
name, global_dict, empty_dict, list, NULL);
10321
Py_XDECREF(empty_list);
10322
Py_XDECREF(py_import);
10323
Py_XDECREF(empty_dict);
10327
static PyObject *__Pyx_FindPy2Metaclass(PyObject *bases) {
10328
PyObject *metaclass;
10329
/* Default metaclass */
10330
#if PY_MAJOR_VERSION < 3
10331
if (PyTuple_Check(bases) && PyTuple_GET_SIZE(bases) > 0) {
10332
PyObject *base = PyTuple_GET_ITEM(bases, 0);
10333
metaclass = PyObject_GetAttrString(base, "__class__");
10336
metaclass = (PyObject*) Py_TYPE(base);
10339
metaclass = (PyObject *) &PyClass_Type;
10342
if (PyTuple_Check(bases) && PyTuple_GET_SIZE(bases) > 0) {
10343
PyObject *base = PyTuple_GET_ITEM(bases, 0);
10344
metaclass = (PyObject*) Py_TYPE(base);
10346
metaclass = (PyObject *) &PyType_Type;
10349
Py_INCREF(metaclass);
10353
static PyObject *__Pyx_CreateClass(PyObject *bases, PyObject *dict, PyObject *name,
10354
PyObject *modname) {
10356
PyObject *metaclass;
10358
if (PyDict_SetItemString(dict, "__module__", modname) < 0)
10361
/* Python2 __metaclass__ */
10362
metaclass = PyDict_GetItemString(dict, "__metaclass__");
10364
Py_INCREF(metaclass);
10366
metaclass = __Pyx_FindPy2Metaclass(bases);
10368
result = PyObject_CallFunctionObjArgs(metaclass, name, bases, dict, NULL);
10369
Py_DECREF(metaclass);
10374
static PyObject *__pyx_binding_PyCFunctionType_NewEx(PyMethodDef *ml, PyObject *self, PyObject *module) {
10375
__pyx_binding_PyCFunctionType_object *op = PyObject_GC_New(__pyx_binding_PyCFunctionType_object, __pyx_binding_PyCFunctionType);
10378
op->func.m_ml = ml;
10380
op->func.m_self = self;
10381
Py_XINCREF(module);
10382
op->func.m_module = module;
10383
PyObject_GC_Track(op);
10384
return (PyObject *)op;
10387
static void __pyx_binding_PyCFunctionType_dealloc(__pyx_binding_PyCFunctionType_object *m) {
10388
PyObject_GC_UnTrack(m);
10389
Py_XDECREF(m->func.m_self);
10390
Py_XDECREF(m->func.m_module);
10391
PyObject_GC_Del(m);
10394
static PyObject *__pyx_binding_PyCFunctionType_descr_get(PyObject *func, PyObject *obj, PyObject *type) {
10395
if (obj == Py_None)
10397
return PyMethod_New(func, obj, type);
10400
static int __pyx_binding_PyCFunctionType_init(void) {
10401
__pyx_binding_PyCFunctionType_type = PyCFunction_Type;
10402
__pyx_binding_PyCFunctionType_type.tp_name = __Pyx_NAMESTR("cython_binding_builtin_function_or_method");
10403
__pyx_binding_PyCFunctionType_type.tp_dealloc = (destructor)__pyx_binding_PyCFunctionType_dealloc;
10404
__pyx_binding_PyCFunctionType_type.tp_descr_get = __pyx_binding_PyCFunctionType_descr_get;
10405
if (PyType_Ready(&__pyx_binding_PyCFunctionType_type) < 0) {
10408
__pyx_binding_PyCFunctionType = &__pyx_binding_PyCFunctionType_type;
10413
static CYTHON_INLINE PyObject *__Pyx_GetAttr3(PyObject *o, PyObject *n, PyObject *d) {
10414
PyObject *r = PyObject_GetAttr(o, n);
10416
if (!PyErr_ExceptionMatches(PyExc_AttributeError))
10427
#if PY_MAJOR_VERSION < 3
10428
static PyObject *__Pyx_GetStdout(void) {
10429
PyObject *f = PySys_GetObject((char *)"stdout");
10431
PyErr_SetString(PyExc_RuntimeError, "lost sys.stdout");
10436
static int __Pyx_Print(PyObject* f, PyObject *arg_tuple, int newline) {
10441
if (!(f = __Pyx_GetStdout()))
10444
for (i=0; i < PyTuple_GET_SIZE(arg_tuple); i++) {
10445
if (PyFile_SoftSpace(f, 1)) {
10446
if (PyFile_WriteString(" ", f) < 0)
10449
v = PyTuple_GET_ITEM(arg_tuple, i);
10450
if (PyFile_WriteObject(v, f, Py_PRINT_RAW) < 0)
10452
if (PyString_Check(v)) {
10453
char *s = PyString_AsString(v);
10454
Py_ssize_t len = PyString_Size(v);
10456
isspace(Py_CHARMASK(s[len-1])) &&
10458
PyFile_SoftSpace(f, 0);
10462
if (PyFile_WriteString("\n", f) < 0)
10464
PyFile_SoftSpace(f, 0);
10469
#else /* Python 3 has a print function */
10471
static int __Pyx_Print(PyObject* stream, PyObject *arg_tuple, int newline) {
10472
PyObject* kwargs = 0;
10473
PyObject* result = 0;
10474
PyObject* end_string;
10475
if (unlikely(!__pyx_print)) {
10476
__pyx_print = __Pyx_GetAttrString(__pyx_b, "print");
10481
kwargs = PyDict_New();
10482
if (unlikely(!kwargs))
10484
if (unlikely(PyDict_SetItemString(kwargs, "file", stream) < 0))
10487
end_string = PyUnicode_FromStringAndSize(" ", 1);
10488
if (unlikely(!end_string))
10490
if (PyDict_SetItemString(kwargs, "end", end_string) < 0) {
10491
Py_DECREF(end_string);
10494
Py_DECREF(end_string);
10496
} else if (!newline) {
10497
if (unlikely(!__pyx_print_kwargs)) {
10498
__pyx_print_kwargs = PyDict_New();
10499
if (unlikely(!__pyx_print_kwargs))
10501
end_string = PyUnicode_FromStringAndSize(" ", 1);
10502
if (unlikely(!end_string))
10504
if (PyDict_SetItemString(__pyx_print_kwargs, "end", end_string) < 0) {
10505
Py_DECREF(end_string);
10508
Py_DECREF(end_string);
10510
kwargs = __pyx_print_kwargs;
10512
result = PyObject_Call(__pyx_print, arg_tuple, kwargs);
10513
if (unlikely(kwargs) && (kwargs != __pyx_print_kwargs))
10520
if (kwargs != __pyx_print_kwargs)
10521
Py_XDECREF(kwargs);
10527
#if PY_MAJOR_VERSION < 3
10529
static int __Pyx_PrintOne(PyObject* f, PyObject *o) {
10531
if (!(f = __Pyx_GetStdout()))
10534
if (PyFile_SoftSpace(f, 0)) {
10535
if (PyFile_WriteString(" ", f) < 0)
10538
if (PyFile_WriteObject(o, f, Py_PRINT_RAW) < 0)
10540
if (PyFile_WriteString("\n", f) < 0)
10543
/* the line below is just to avoid compiler
10544
* compiler warnings about unused functions */
10545
return __Pyx_Print(f, NULL, 0);
10548
#else /* Python 3 has a print function */
10550
static int __Pyx_PrintOne(PyObject* stream, PyObject *o) {
10552
PyObject* arg_tuple = PyTuple_New(1);
10553
if (unlikely(!arg_tuple))
10556
PyTuple_SET_ITEM(arg_tuple, 0, o);
10557
res = __Pyx_Print(stream, arg_tuple, 1);
10558
Py_DECREF(arg_tuple);
10564
static CYTHON_INLINE unsigned char __Pyx_PyInt_AsUnsignedChar(PyObject* x) {
10565
const unsigned char neg_one = (unsigned char)-1, const_zero = 0;
10566
const int is_unsigned = neg_one > const_zero;
10567
if (sizeof(unsigned char) < sizeof(long)) {
10568
long val = __Pyx_PyInt_AsLong(x);
10569
if (unlikely(val != (long)(unsigned char)val)) {
10570
if (!unlikely(val == -1 && PyErr_Occurred())) {
10571
PyErr_SetString(PyExc_OverflowError,
10572
(is_unsigned && unlikely(val < 0)) ?
10573
"can't convert negative value to unsigned char" :
10574
"value too large to convert to unsigned char");
10576
return (unsigned char)-1;
10578
return (unsigned char)val;
10580
return (unsigned char)__Pyx_PyInt_AsUnsignedLong(x);
10583
static CYTHON_INLINE unsigned short __Pyx_PyInt_AsUnsignedShort(PyObject* x) {
10584
const unsigned short neg_one = (unsigned short)-1, const_zero = 0;
10585
const int is_unsigned = neg_one > const_zero;
10586
if (sizeof(unsigned short) < sizeof(long)) {
10587
long val = __Pyx_PyInt_AsLong(x);
10588
if (unlikely(val != (long)(unsigned short)val)) {
10589
if (!unlikely(val == -1 && PyErr_Occurred())) {
10590
PyErr_SetString(PyExc_OverflowError,
10591
(is_unsigned && unlikely(val < 0)) ?
10592
"can't convert negative value to unsigned short" :
10593
"value too large to convert to unsigned short");
10595
return (unsigned short)-1;
10597
return (unsigned short)val;
10599
return (unsigned short)__Pyx_PyInt_AsUnsignedLong(x);
10602
static CYTHON_INLINE unsigned int __Pyx_PyInt_AsUnsignedInt(PyObject* x) {
10603
const unsigned int neg_one = (unsigned int)-1, const_zero = 0;
10604
const int is_unsigned = neg_one > const_zero;
10605
if (sizeof(unsigned int) < sizeof(long)) {
10606
long val = __Pyx_PyInt_AsLong(x);
10607
if (unlikely(val != (long)(unsigned int)val)) {
10608
if (!unlikely(val == -1 && PyErr_Occurred())) {
10609
PyErr_SetString(PyExc_OverflowError,
10610
(is_unsigned && unlikely(val < 0)) ?
10611
"can't convert negative value to unsigned int" :
10612
"value too large to convert to unsigned int");
10614
return (unsigned int)-1;
10616
return (unsigned int)val;
10618
return (unsigned int)__Pyx_PyInt_AsUnsignedLong(x);
10621
static CYTHON_INLINE char __Pyx_PyInt_AsChar(PyObject* x) {
10622
const char neg_one = (char)-1, const_zero = 0;
10623
const int is_unsigned = neg_one > const_zero;
10624
if (sizeof(char) < sizeof(long)) {
10625
long val = __Pyx_PyInt_AsLong(x);
10626
if (unlikely(val != (long)(char)val)) {
10627
if (!unlikely(val == -1 && PyErr_Occurred())) {
10628
PyErr_SetString(PyExc_OverflowError,
10629
(is_unsigned && unlikely(val < 0)) ?
10630
"can't convert negative value to char" :
10631
"value too large to convert to char");
10637
return (char)__Pyx_PyInt_AsLong(x);
10640
static CYTHON_INLINE short __Pyx_PyInt_AsShort(PyObject* x) {
10641
const short neg_one = (short)-1, const_zero = 0;
10642
const int is_unsigned = neg_one > const_zero;
10643
if (sizeof(short) < sizeof(long)) {
10644
long val = __Pyx_PyInt_AsLong(x);
10645
if (unlikely(val != (long)(short)val)) {
10646
if (!unlikely(val == -1 && PyErr_Occurred())) {
10647
PyErr_SetString(PyExc_OverflowError,
10648
(is_unsigned && unlikely(val < 0)) ?
10649
"can't convert negative value to short" :
10650
"value too large to convert to short");
10656
return (short)__Pyx_PyInt_AsLong(x);
10659
static CYTHON_INLINE int __Pyx_PyInt_AsInt(PyObject* x) {
10660
const int neg_one = (int)-1, const_zero = 0;
10661
const int is_unsigned = neg_one > const_zero;
10662
if (sizeof(int) < sizeof(long)) {
10663
long val = __Pyx_PyInt_AsLong(x);
10664
if (unlikely(val != (long)(int)val)) {
10665
if (!unlikely(val == -1 && PyErr_Occurred())) {
10666
PyErr_SetString(PyExc_OverflowError,
10667
(is_unsigned && unlikely(val < 0)) ?
10668
"can't convert negative value to int" :
10669
"value too large to convert to int");
10675
return (int)__Pyx_PyInt_AsLong(x);
10678
static CYTHON_INLINE signed char __Pyx_PyInt_AsSignedChar(PyObject* x) {
10679
const signed char neg_one = (signed char)-1, const_zero = 0;
10680
const int is_unsigned = neg_one > const_zero;
10681
if (sizeof(signed char) < sizeof(long)) {
10682
long val = __Pyx_PyInt_AsLong(x);
10683
if (unlikely(val != (long)(signed char)val)) {
10684
if (!unlikely(val == -1 && PyErr_Occurred())) {
10685
PyErr_SetString(PyExc_OverflowError,
10686
(is_unsigned && unlikely(val < 0)) ?
10687
"can't convert negative value to signed char" :
10688
"value too large to convert to signed char");
10690
return (signed char)-1;
10692
return (signed char)val;
10694
return (signed char)__Pyx_PyInt_AsSignedLong(x);
10697
static CYTHON_INLINE signed short __Pyx_PyInt_AsSignedShort(PyObject* x) {
10698
const signed short neg_one = (signed short)-1, const_zero = 0;
10699
const int is_unsigned = neg_one > const_zero;
10700
if (sizeof(signed short) < sizeof(long)) {
10701
long val = __Pyx_PyInt_AsLong(x);
10702
if (unlikely(val != (long)(signed short)val)) {
10703
if (!unlikely(val == -1 && PyErr_Occurred())) {
10704
PyErr_SetString(PyExc_OverflowError,
10705
(is_unsigned && unlikely(val < 0)) ?
10706
"can't convert negative value to signed short" :
10707
"value too large to convert to signed short");
10709
return (signed short)-1;
10711
return (signed short)val;
10713
return (signed short)__Pyx_PyInt_AsSignedLong(x);
10716
static CYTHON_INLINE signed int __Pyx_PyInt_AsSignedInt(PyObject* x) {
10717
const signed int neg_one = (signed int)-1, const_zero = 0;
10718
const int is_unsigned = neg_one > const_zero;
10719
if (sizeof(signed int) < sizeof(long)) {
10720
long val = __Pyx_PyInt_AsLong(x);
10721
if (unlikely(val != (long)(signed int)val)) {
10722
if (!unlikely(val == -1 && PyErr_Occurred())) {
10723
PyErr_SetString(PyExc_OverflowError,
10724
(is_unsigned && unlikely(val < 0)) ?
10725
"can't convert negative value to signed int" :
10726
"value too large to convert to signed int");
10728
return (signed int)-1;
10730
return (signed int)val;
10732
return (signed int)__Pyx_PyInt_AsSignedLong(x);
10735
static CYTHON_INLINE int __Pyx_PyInt_AsLongDouble(PyObject* x) {
10736
const int neg_one = (int)-1, const_zero = 0;
10737
const int is_unsigned = neg_one > const_zero;
10738
if (sizeof(int) < sizeof(long)) {
10739
long val = __Pyx_PyInt_AsLong(x);
10740
if (unlikely(val != (long)(int)val)) {
10741
if (!unlikely(val == -1 && PyErr_Occurred())) {
10742
PyErr_SetString(PyExc_OverflowError,
10743
(is_unsigned && unlikely(val < 0)) ?
10744
"can't convert negative value to int" :
10745
"value too large to convert to int");
10751
return (int)__Pyx_PyInt_AsLong(x);
10754
static CYTHON_INLINE unsigned long __Pyx_PyInt_AsUnsignedLong(PyObject* x) {
10755
const unsigned long neg_one = (unsigned long)-1, const_zero = 0;
10756
const int is_unsigned = neg_one > const_zero;
10757
#if PY_VERSION_HEX < 0x03000000
10758
if (likely(PyInt_Check(x))) {
10759
long val = PyInt_AS_LONG(x);
10760
if (is_unsigned && unlikely(val < 0)) {
10761
PyErr_SetString(PyExc_OverflowError,
10762
"can't convert negative value to unsigned long");
10763
return (unsigned long)-1;
10765
return (unsigned long)val;
10768
if (likely(PyLong_Check(x))) {
10770
if (unlikely(Py_SIZE(x) < 0)) {
10771
PyErr_SetString(PyExc_OverflowError,
10772
"can't convert negative value to unsigned long");
10773
return (unsigned long)-1;
10775
return PyLong_AsUnsignedLong(x);
10777
return PyLong_AsLong(x);
10781
PyObject *tmp = __Pyx_PyNumber_Int(x);
10782
if (!tmp) return (unsigned long)-1;
10783
val = __Pyx_PyInt_AsUnsignedLong(tmp);
10789
static CYTHON_INLINE unsigned PY_LONG_LONG __Pyx_PyInt_AsUnsignedLongLong(PyObject* x) {
10790
const unsigned PY_LONG_LONG neg_one = (unsigned PY_LONG_LONG)-1, const_zero = 0;
10791
const int is_unsigned = neg_one > const_zero;
10792
#if PY_VERSION_HEX < 0x03000000
10793
if (likely(PyInt_Check(x))) {
10794
long val = PyInt_AS_LONG(x);
10795
if (is_unsigned && unlikely(val < 0)) {
10796
PyErr_SetString(PyExc_OverflowError,
10797
"can't convert negative value to unsigned PY_LONG_LONG");
10798
return (unsigned PY_LONG_LONG)-1;
10800
return (unsigned PY_LONG_LONG)val;
10803
if (likely(PyLong_Check(x))) {
10805
if (unlikely(Py_SIZE(x) < 0)) {
10806
PyErr_SetString(PyExc_OverflowError,
10807
"can't convert negative value to unsigned PY_LONG_LONG");
10808
return (unsigned PY_LONG_LONG)-1;
10810
return PyLong_AsUnsignedLongLong(x);
10812
return PyLong_AsLongLong(x);
10815
unsigned PY_LONG_LONG val;
10816
PyObject *tmp = __Pyx_PyNumber_Int(x);
10817
if (!tmp) return (unsigned PY_LONG_LONG)-1;
10818
val = __Pyx_PyInt_AsUnsignedLongLong(tmp);
10824
static CYTHON_INLINE long __Pyx_PyInt_AsLong(PyObject* x) {
10825
const long neg_one = (long)-1, const_zero = 0;
10826
const int is_unsigned = neg_one > const_zero;
10827
#if PY_VERSION_HEX < 0x03000000
10828
if (likely(PyInt_Check(x))) {
10829
long val = PyInt_AS_LONG(x);
10830
if (is_unsigned && unlikely(val < 0)) {
10831
PyErr_SetString(PyExc_OverflowError,
10832
"can't convert negative value to long");
10838
if (likely(PyLong_Check(x))) {
10840
if (unlikely(Py_SIZE(x) < 0)) {
10841
PyErr_SetString(PyExc_OverflowError,
10842
"can't convert negative value to long");
10845
return PyLong_AsUnsignedLong(x);
10847
return PyLong_AsLong(x);
10851
PyObject *tmp = __Pyx_PyNumber_Int(x);
10852
if (!tmp) return (long)-1;
10853
val = __Pyx_PyInt_AsLong(tmp);
10859
static CYTHON_INLINE PY_LONG_LONG __Pyx_PyInt_AsLongLong(PyObject* x) {
10860
const PY_LONG_LONG neg_one = (PY_LONG_LONG)-1, const_zero = 0;
10861
const int is_unsigned = neg_one > const_zero;
10862
#if PY_VERSION_HEX < 0x03000000
10863
if (likely(PyInt_Check(x))) {
10864
long val = PyInt_AS_LONG(x);
10865
if (is_unsigned && unlikely(val < 0)) {
10866
PyErr_SetString(PyExc_OverflowError,
10867
"can't convert negative value to PY_LONG_LONG");
10868
return (PY_LONG_LONG)-1;
10870
return (PY_LONG_LONG)val;
10873
if (likely(PyLong_Check(x))) {
10875
if (unlikely(Py_SIZE(x) < 0)) {
10876
PyErr_SetString(PyExc_OverflowError,
10877
"can't convert negative value to PY_LONG_LONG");
10878
return (PY_LONG_LONG)-1;
10880
return PyLong_AsUnsignedLongLong(x);
10882
return PyLong_AsLongLong(x);
10886
PyObject *tmp = __Pyx_PyNumber_Int(x);
10887
if (!tmp) return (PY_LONG_LONG)-1;
10888
val = __Pyx_PyInt_AsLongLong(tmp);
10894
static CYTHON_INLINE signed long __Pyx_PyInt_AsSignedLong(PyObject* x) {
10895
const signed long neg_one = (signed long)-1, const_zero = 0;
10896
const int is_unsigned = neg_one > const_zero;
10897
#if PY_VERSION_HEX < 0x03000000
10898
if (likely(PyInt_Check(x))) {
10899
long val = PyInt_AS_LONG(x);
10900
if (is_unsigned && unlikely(val < 0)) {
10901
PyErr_SetString(PyExc_OverflowError,
10902
"can't convert negative value to signed long");
10903
return (signed long)-1;
10905
return (signed long)val;
10908
if (likely(PyLong_Check(x))) {
10910
if (unlikely(Py_SIZE(x) < 0)) {
10911
PyErr_SetString(PyExc_OverflowError,
10912
"can't convert negative value to signed long");
10913
return (signed long)-1;
10915
return PyLong_AsUnsignedLong(x);
10917
return PyLong_AsLong(x);
10921
PyObject *tmp = __Pyx_PyNumber_Int(x);
10922
if (!tmp) return (signed long)-1;
10923
val = __Pyx_PyInt_AsSignedLong(tmp);
10929
static CYTHON_INLINE signed PY_LONG_LONG __Pyx_PyInt_AsSignedLongLong(PyObject* x) {
10930
const signed PY_LONG_LONG neg_one = (signed PY_LONG_LONG)-1, const_zero = 0;
10931
const int is_unsigned = neg_one > const_zero;
10932
#if PY_VERSION_HEX < 0x03000000
10933
if (likely(PyInt_Check(x))) {
10934
long val = PyInt_AS_LONG(x);
10935
if (is_unsigned && unlikely(val < 0)) {
10936
PyErr_SetString(PyExc_OverflowError,
10937
"can't convert negative value to signed PY_LONG_LONG");
10938
return (signed PY_LONG_LONG)-1;
10940
return (signed PY_LONG_LONG)val;
10943
if (likely(PyLong_Check(x))) {
10945
if (unlikely(Py_SIZE(x) < 0)) {
10946
PyErr_SetString(PyExc_OverflowError,
10947
"can't convert negative value to signed PY_LONG_LONG");
10948
return (signed PY_LONG_LONG)-1;
10950
return PyLong_AsUnsignedLongLong(x);
10952
return PyLong_AsLongLong(x);
10955
signed PY_LONG_LONG val;
10956
PyObject *tmp = __Pyx_PyNumber_Int(x);
10957
if (!tmp) return (signed PY_LONG_LONG)-1;
10958
val = __Pyx_PyInt_AsSignedLongLong(tmp);
10964
static int __Pyx_SetVtable(PyObject *dict, void *vtable) {
10965
#if PY_VERSION_HEX >= 0x02070000 && !(PY_MAJOR_VERSION==3&&PY_MINOR_VERSION==0)
10966
PyObject *ob = PyCapsule_New(vtable, 0, 0);
10968
PyObject *ob = PyCObject_FromVoidPtr(vtable, 0);
10972
if (PyDict_SetItemString(dict, "__pyx_vtable__", ob) < 0)
10981
#include "compile.h"
10982
#include "frameobject.h"
10983
#include "traceback.h"
10985
static void __Pyx_AddTraceback(const char *funcname) {
10986
PyObject *py_srcfile = 0;
10987
PyObject *py_funcname = 0;
10988
PyObject *py_globals = 0;
10989
PyCodeObject *py_code = 0;
10990
PyFrameObject *py_frame = 0;
10992
#if PY_MAJOR_VERSION < 3
10993
py_srcfile = PyString_FromString(__pyx_filename);
10995
py_srcfile = PyUnicode_FromString(__pyx_filename);
10997
if (!py_srcfile) goto bad;
10998
if (__pyx_clineno) {
10999
#if PY_MAJOR_VERSION < 3
11000
py_funcname = PyString_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno);
11002
py_funcname = PyUnicode_FromFormat( "%s (%s:%d)", funcname, __pyx_cfilenm, __pyx_clineno);
11006
#if PY_MAJOR_VERSION < 3
11007
py_funcname = PyString_FromString(funcname);
11009
py_funcname = PyUnicode_FromString(funcname);
11012
if (!py_funcname) goto bad;
11013
py_globals = PyModule_GetDict(__pyx_m);
11014
if (!py_globals) goto bad;
11015
py_code = PyCode_New(
11016
0, /*int argcount,*/
11017
#if PY_MAJOR_VERSION >= 3
11018
0, /*int kwonlyargcount,*/
11020
0, /*int nlocals,*/
11021
0, /*int stacksize,*/
11023
__pyx_empty_bytes, /*PyObject *code,*/
11024
__pyx_empty_tuple, /*PyObject *consts,*/
11025
__pyx_empty_tuple, /*PyObject *names,*/
11026
__pyx_empty_tuple, /*PyObject *varnames,*/
11027
__pyx_empty_tuple, /*PyObject *freevars,*/
11028
__pyx_empty_tuple, /*PyObject *cellvars,*/
11029
py_srcfile, /*PyObject *filename,*/
11030
py_funcname, /*PyObject *name,*/
11031
__pyx_lineno, /*int firstlineno,*/
11032
__pyx_empty_bytes /*PyObject *lnotab*/
11034
if (!py_code) goto bad;
11035
py_frame = PyFrame_New(
11036
PyThreadState_GET(), /*PyThreadState *tstate,*/
11037
py_code, /*PyCodeObject *code,*/
11038
py_globals, /*PyObject *globals,*/
11039
0 /*PyObject *locals*/
11041
if (!py_frame) goto bad;
11042
py_frame->f_lineno = __pyx_lineno;
11043
PyTraceBack_Here(py_frame);
11045
Py_XDECREF(py_srcfile);
11046
Py_XDECREF(py_funcname);
11047
Py_XDECREF(py_code);
11048
Py_XDECREF(py_frame);
11051
static int __Pyx_InitStrings(__Pyx_StringTabEntry *t) {
11053
#if PY_MAJOR_VERSION < 3
11054
if (t->is_unicode) {
11055
*t->p = PyUnicode_DecodeUTF8(t->s, t->n - 1, NULL);
11056
} else if (t->intern) {
11057
*t->p = PyString_InternFromString(t->s);
11059
*t->p = PyString_FromStringAndSize(t->s, t->n - 1);
11061
#else /* Python 3+ has unicode identifiers */
11062
if (t->is_unicode | t->is_str) {
11064
*t->p = PyUnicode_InternFromString(t->s);
11065
} else if (t->encoding) {
11066
*t->p = PyUnicode_Decode(t->s, t->n - 1, t->encoding, NULL);
11068
*t->p = PyUnicode_FromStringAndSize(t->s, t->n - 1);
11071
*t->p = PyBytes_FromStringAndSize(t->s, t->n - 1);
11081
/* Type Conversion Functions */
11083
static CYTHON_INLINE int __Pyx_PyObject_IsTrue(PyObject* x) {
11084
int is_true = x == Py_True;
11085
if (is_true | (x == Py_False) | (x == Py_None)) return is_true;
11086
else return PyObject_IsTrue(x);
11089
static CYTHON_INLINE PyObject* __Pyx_PyNumber_Int(PyObject* x) {
11090
PyNumberMethods *m;
11091
const char *name = NULL;
11092
PyObject *res = NULL;
11093
#if PY_VERSION_HEX < 0x03000000
11094
if (PyInt_Check(x) || PyLong_Check(x))
11096
if (PyLong_Check(x))
11098
return Py_INCREF(x), x;
11099
m = Py_TYPE(x)->tp_as_number;
11100
#if PY_VERSION_HEX < 0x03000000
11101
if (m && m->nb_int) {
11103
res = PyNumber_Int(x);
11105
else if (m && m->nb_long) {
11107
res = PyNumber_Long(x);
11110
if (m && m->nb_int) {
11112
res = PyNumber_Long(x);
11116
#if PY_VERSION_HEX < 0x03000000
11117
if (!PyInt_Check(res) && !PyLong_Check(res)) {
11119
if (!PyLong_Check(res)) {
11121
PyErr_Format(PyExc_TypeError,
11122
"__%s__ returned non-%s (type %.200s)",
11123
name, name, Py_TYPE(res)->tp_name);
11128
else if (!PyErr_Occurred()) {
11129
PyErr_SetString(PyExc_TypeError,
11130
"an integer is required");
11135
static CYTHON_INLINE Py_ssize_t __Pyx_PyIndex_AsSsize_t(PyObject* b) {
11137
PyObject* x = PyNumber_Index(b);
11139
ival = PyInt_AsSsize_t(x);
11144
static CYTHON_INLINE PyObject * __Pyx_PyInt_FromSize_t(size_t ival) {
11145
#if PY_VERSION_HEX < 0x02050000
11146
if (ival <= LONG_MAX)
11147
return PyInt_FromLong((long)ival);
11149
unsigned char *bytes = (unsigned char *) &ival;
11150
int one = 1; int little = (int)*(unsigned char*)&one;
11151
return _PyLong_FromByteArray(bytes, sizeof(size_t), little, 0);
11154
return PyInt_FromSize_t(ival);
11158
static CYTHON_INLINE size_t __Pyx_PyInt_AsSize_t(PyObject* x) {
11159
unsigned PY_LONG_LONG val = __Pyx_PyInt_AsUnsignedLongLong(x);
11160
if (unlikely(val == (unsigned PY_LONG_LONG)-1 && PyErr_Occurred())) {
11162
} else if (unlikely(val != (unsigned PY_LONG_LONG)(size_t)val)) {
11163
PyErr_SetString(PyExc_OverflowError,
11164
"value too large to convert to size_t");
11167
return (size_t)val;
11171
#endif /* Py_PYTHON_H */