build fix
[cython.git] / Cython / Compiler / Code.pxd
1
2 cimport cython
3
4 cdef class UtilityCode:
5     cdef public object proto
6     cdef public object impl
7     cdef public object init
8     cdef public object cleanup
9     cdef public object requires
10     cdef public dict _cache
11     cdef public list specialize_list
12     cdef public object proto_block
13
14     cpdef put_code(self, output)
15
16 cdef class FunctionState:
17     cdef public set names_taken
18     cdef public object owner
19
20     cdef public object error_label
21     cdef public size_t label_counter
22     cdef public set labels_used
23     cdef public object return_label
24     cdef public object continue_label
25     cdef public object break_label
26
27     cdef public object return_from_error_cleanup_label # not used in __init__ ?
28
29     cdef public bint in_try_finally
30     cdef public object exc_vars
31
32     cdef public list temps_allocated
33     cdef public dict temps_free
34     cdef public dict temps_used_type
35     cdef public size_t temp_counter
36
37     cdef public object closure_temps
38
39     @cython.locals(n=size_t)
40     cpdef new_label(self, name=*)
41     cpdef tuple get_loop_labels(self)
42     cpdef set_loop_labels(self, labels)
43     cpdef tuple get_all_labels(self)
44     cpdef set_all_labels(self, labels)
45
46     cpdef list temps_in_use(self)
47
48 cdef class IntConst:
49     cdef public object cname
50     cdef public object value
51     cdef public bint is_long
52
53 cdef class PyObjectConst:
54     cdef public object cname
55     cdef public object type
56
57 cdef class StringConst:
58     cdef public object cname
59     cdef public object text
60     cdef public object escaped_value
61     cdef public dict py_strings
62
63     @cython.locals(intern=bint, is_str=bint, is_unicode=bint)
64     cpdef get_py_string_const(self, encoding, identifier=*, is_str=*, py3str_cstring=*)
65
66 ## cdef class PyStringConst:
67 ##     cdef public object cname
68 ##     cdef public object encoding
69 ##     cdef public bint is_str
70 ##     cdef public bint is_unicode
71 ##     cdef public bint intern
72
73 #class GlobalState(object):
74
75 #def funccontext_property(name):
76
77 #class CCodeWriter(object):
78
79 cdef class PyrexCodeWriter:
80     cdef public object f
81     cdef public Py_ssize_t level