parameters: (self, library, fndesc, env)
return_statement: return cfunc
docstring: Returns
          -------
          (cfunc, fnptr)
  
          - cfunc
              callable function (Can be None)
          - fnptr
              callable function address
          - env
              an execution environment (from _dynfunc)
docstring_summary: Returns
          -------
          (cfunc, fnptr)
docstring_tokens: Returns ------- ( cfunc fnptr )
function: def get_executable(self, library, fndesc, env):
          """
          Returns
          -------
          (cfunc, fnptr)
  
          - cfunc
              callable function (Can be None)
          - fnptr
              callable function address
          - env
              an execution environment (from _dynfunc)
          """
          # Code generation
          baseptr = library.get_pointer_to_function(fndesc.llvm_func_name)
          fnptr = library.get_pointer_to_function(fndesc.llvm_cpython_wrapper_name)
  
          # Note: we avoid reusing the original docstring to avoid encoding
          # issues on Python 2, see issue #1908
          doc = "compiled wrapper for %r" % (fndesc.qualname,)
          cfunc = _dynfunc.make_function(fndesc.lookup_module(),
                                         fndesc.qualname.split('.')[-1],
                                         doc, fnptr, env,
                                         # objects to keepalive with the function
                                         (library,)
                                         )
          library.codegen.set_env(self.get_env_name(fndesc), env)
          return cfunc
function_tokens: def get_executable ( self , library , fndesc , env ) : # Code generation baseptr = library . get_pointer_to_function ( fndesc . llvm_func_name ) fnptr = library . get_pointer_to_function ( fndesc . llvm_cpython_wrapper_name ) # Note: we avoid reusing the original docstring to avoid encoding # issues on Python 2, see issue #1908 doc = "compiled wrapper for %r" % ( fndesc . qualname , ) cfunc = _dynfunc . make_function ( fndesc . lookup_module ( ) , fndesc . qualname . split ( '.' ) [ - 1 ] , doc , fnptr , env , # objects to keepalive with the function ( library , ) ) library . codegen . set_env ( self . get_env_name ( fndesc ) , env ) return cfunc