class_docstr: Utility code written in the Cython language itself.
  
  The @cname decorator can set the cname for a function, method of cdef class.
  Functions decorated with @cname('c_func_name') get the given cname.
  
  For cdef classes the rules are as follows:
      obj struct      -> <cname>_obj
      obj type ptr    -> <cname>_type
      methods         -> <class_cname>_<method_cname>
  
  For methods the cname decorator is optional, but without the decorator the
  methods will not be prototyped. See Cython.Compiler.CythonScope and
  tests/run/cythonscope.pyx for examples.
class_docstr_tok: ["Utility","code","written","in","the","Cython","language","itself",".","The","@","cname","decorator","can","set","the","cname","for","a","function",",","method","of","cdef","class",".","Functions","decorated","with","@","cname","(","'c_func_name","'",")","get","the","given","cname",".","For","cdef","classes","the","rules","are","as","follows",":","obj","struct","-",">","<","cname",">","_obj","obj","type","ptr","-",">","<","cname",">","_type","methods","-",">","<","class_cname",">","_","<","method_cname",">","For","methods","the","cname","decorator","is","optional",",","but","without","the","decorator","the","methods","will","not","be","prototyped",".","See","Cython.Compiler.CythonScope","and","tests\/run\/cythonscope.pyx","for","examples","."]
code: def __init__(
      self,
      impl,
      name="__pyxutil",
      prefix="",
      requires=None,
      file=None,
      from_scope=None,
      context=None,
      compiler_directives=None,
      outer_module_scope=None,
  ):
      # 1) We need to delay the parsing/processing, so that all modules can be
      #    imported without import loops
      # 2) The same utility code object can be used for multiple source files;
      #    while the generated node trees can be altered in the compilation of a
      #    single file.
      # Hence, delay any processing until later.
      context_types = {}
      if context is not None:
          from .PyrexTypes import BaseType
  
          for key, value in context.items():
              if isinstance(value, BaseType):
                  context[key] = key
                  context_types[key] = value
          impl = Code.sub_tempita(impl, context, file, name)
      self.impl = impl
      self.name = name
      self.file = file
      self.prefix = prefix
      self.requires = requires or []
      self.from_scope = from_scope
      self.outer_module_scope = outer_module_scope
      self.compiler_directives = compiler_directives
      self.context_types = context_types
  
imports: from __future__ import absolute_import
  from .TreeFragment import parse_from_strings, StringParseContext
  from .None import Symtab
  from .None import Naming
  from .None import Code
label_desc: Use image node_id 1 to create a new CythonUtilityCode object from inherited base classes: Code with example: obj = CythonUtilityCode(impl, name, prefix, requires, file, from_scope, context, compiler_directives, outer_module_scope)