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