IPython Documentation

Table Of Contents

Previous topic

core.builtin_trap

Next topic

core.completer

This Page

core.compilerop

Module: core.compilerop

Inheritance diagram for IPython.core.compilerop:

System Message: WARNING/2 (/home/roberto/Dropbox/Programming/IPython/MaemoMeeGo/ipython-0.13.1/docs/source/api/generated/IPython.core.compilerop.txt, line None)

Could not execute ‘dot’. Are you sure you have ‘graphviz’ installed?

Compiler tools with improved interactive support.

Provides compilation machinery similar to codeop, but with caching support so we can provide interactive tracebacks.

Authors

  • Robert Kern
  • Fernando Perez
  • Thomas Kluyver

CachingCompiler

class IPython.core.compilerop.CachingCompiler

Bases: codeop.Compile

A compiler that caches code compiled from interactive statements.

__init__()
ast_parse(source, filename='<unknown>', symbol='exec')

Parse code to an AST with the current compiler flags active.

Arguments are exactly the same as ast.parse (in the standard library), and are passed to the built-in compile function.

cache(code, number=0)

Make a name for a block of code, and cache the code.

Parameters :

code : str

The Python source code to cache.

number : int

A number which forms part of the code’s name. Used for the execution counter.

Returns :

The name of the cached code (as a string). Pass this as the filename :

argument to compilation, so that tracebacks are correctly hooked up. :

check_cache(*args)

Call linecache.checkcache() safely protecting our cached values.

compiler_flags

Flags currently active in the compilation process.

reset_compiler_flags()

Reset compiler flags to default state.

IPython.core.compilerop.code_name(code, number=0)

Compute a (probably) unique name for code for caching.

This now expects code to be unicode.