org.python.core
Class PyFrame

java.lang.Object
  extended by org.python.core.PyObject
      extended by org.python.core.PyFrame
All Implemented Interfaces:
Serializable

public class PyFrame
extends PyObject

A Python frame object.

See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class org.python.core.PyObject
PyObject.ConversionException
 
Field Summary
 PyFrame f_back
          Previous frame or null.
 PyObject f_builtins
          builtin symbol table.
 PyBaseCode f_code
          The underyling code object.
 PyCell[] f_env
          Nested scopes: cell + free env.
 PyObject[] f_exits
          with context exits - used by generated bytecode
 PyObject[] f_fastlocals
           
 PyObject f_globals
          Global symbol table.
 int f_lasti
           
 int f_lineno
          Current line number.
 PyObject f_locals
          Local symbol table.
 int f_ncells
           
 int f_nfreevars
           
 Object[] f_savedlocals
           
 TraceFunction tracefunc
          An interface to functions suitable for tracing, e.g. via sys.settrace().
static PyType TYPE
           
 
Constructor Summary
PyFrame(PyBaseCode code, PyObject globals)
           
PyFrame(PyBaseCode code, PyObject locals, PyObject globals, PyObject builtins)
           
 
Method Summary
 Object checkGeneratorInput()
           
 void delglobal(String index)
           
 void dellocal(int index)
           
 void dellocal(String index)
           
 void delTrace()
           
 PyObject getclosure(int index)
           
 PyObject getderef(int index)
           
 PyObject getf_locals()
          Return the current f_locals dict.
 Object getGeneratorInput()
           
 PyObject getglobal(String index)
           
 int getline()
           
 PyObject getlocal(int index)
           
 PyObject getLocals()
          Return the locals dict.
 PyObject getname(String index)
           
 PyObject getTrace()
           
 void setderef(int index, PyObject value)
           
 void setglobal(String index, PyObject value)
           
 void setline(int line)
          Track the current line number.
 void setlocal(int index, PyObject value)
           
 void setlocal(String index, PyObject value)
           
 void setTrace(PyObject trace)
           
 void to_cell(int parm_index, int env_index)
           
 
Methods inherited from class org.python.core.PyObject
__abs__, __add__, __and__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __call__, __cmp__, __coerce__, __coerce_ex__, __complex__, __contains__, __delattr__, __delattr__, __delete__, __delitem__, __delitem__, __delslice__, __delslice__, __dir__, __div__, __divmod__, __eq__, __findattr__, __findattr__, __findattr_ex__, __finditem__, __finditem__, __finditem__, __float__, __floordiv__, __ge__, __get__, __getattr__, __getattr__, __getitem__, __getitem__, __getnewargs__, __getslice__, __getslice__, __gt__, __hash__, __hex__, __iadd__, __iand__, __idiv__, __idivmod__, __ifloordiv__, __ilshift__, __imod__, __imul__, __index__, __int__, __invert__, __ior__, __ipow__, __irshift__, __isub__, __iter__, __iternext__, __itruediv__, __ixor__, __le__, __len__, __long__, __lshift__, __lt__, __mod__, __mul__, __ne__, __neg__, __nonzero__, __not__, __oct__, __or__, __pos__, __pow__, __pow__, __radd__, __rand__, __rdiv__, __rdivmod__, __reduce__, __reduce_ex__, __reduce_ex__, __repr__, __rfloordiv__, __rlshift__, __rmod__, __rmul__, __ror__, __rpow__, __rrshift__, __rshift__, __rsub__, __rtruediv__, __rxor__, __set__, __setattr__, __setattr__, __setitem__, __setitem__, __setitem__, __setslice__, __setslice__, __str__, __sub__, __tojava__, __truediv__, __unicode__, __xor__, _add, _and, _callextra, _cmp, _div, _divmod, _doget, _doget, _doset, _eq, _floordiv, _ge, _gt, _iadd, _iand, _idiv, _idivmod, _ifloordiv, _ilshift, _imod, _imul, _in, _ior, _ipow, _irshift, _is, _isnot, _isub, _itruediv, _ixor, _jcall, _jcallexc, _jthrow, _le, _lshift, _lt, _mod, _mul, _ne, _notin, _or, _pow, _rshift, _sub, _truediv, _xor, asDouble, asIndex, asIndex, asInt, asInt, asIterable, asLong, asLong, asName, asName, asString, asString, asStringOrNull, asStringOrNull, delDict, delType, dispatch__init__, equals, fastGetClass, fastGetDict, getDict, getType, hashCode, implementsDescrDelete, implementsDescrGet, implementsDescrSet, invoke, invoke, invoke, invoke, invoke, invoke, isCallable, isDataDescr, isIndex, isMappingType, isNumberType, isSequenceType, noAttributeError, readonlyAttributeError, setDict, setType, toString
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

TYPE

public static final PyType TYPE

f_back

public PyFrame f_back
Previous frame or null.


f_code

public PyBaseCode f_code
The underyling code object.


f_builtins

public PyObject f_builtins
builtin symbol table.


f_globals

public PyObject f_globals
Global symbol table.


f_locals

public PyObject f_locals
Local symbol table.


f_lineno

public int f_lineno
Current line number.


f_fastlocals

public PyObject[] f_fastlocals

f_env

public PyCell[] f_env
Nested scopes: cell + free env.


f_ncells

public int f_ncells

f_nfreevars

public int f_nfreevars

f_lasti

public int f_lasti

f_savedlocals

public Object[] f_savedlocals

f_exits

public PyObject[] f_exits
with context exits - used by generated bytecode


tracefunc

public TraceFunction tracefunc
An interface to functions suitable for tracing, e.g. via sys.settrace().

Constructor Detail

PyFrame

public PyFrame(PyBaseCode code,
               PyObject locals,
               PyObject globals,
               PyObject builtins)

PyFrame

public PyFrame(PyBaseCode code,
               PyObject globals)
Method Detail

getGeneratorInput

public Object getGeneratorInput()

checkGeneratorInput

public Object checkGeneratorInput()

getLocals

public PyObject getLocals()
Return the locals dict. First merges the fast locals into f_locals, then returns the updated f_locals.

Returns:
a PyObject mapping of locals

getTrace

public PyObject getTrace()

setTrace

public void setTrace(PyObject trace)

delTrace

public void delTrace()

getf_locals

public PyObject getf_locals()
Return the current f_locals dict.

Returns:
a PyObject mapping of locals

setline

public void setline(int line)
Track the current line number. Called by generated code. This is not to be confused with the CPython method frame_setlineno() which causes the interpreter to jump to the given line.


getline

public int getline()

getlocal

public PyObject getlocal(int index)

getname

public PyObject getname(String index)

getglobal

public PyObject getglobal(String index)

setlocal

public void setlocal(int index,
                     PyObject value)

setlocal

public void setlocal(String index,
                     PyObject value)

setglobal

public void setglobal(String index,
                      PyObject value)

dellocal

public void dellocal(int index)

dellocal

public void dellocal(String index)

delglobal

public void delglobal(String index)

getclosure

public PyObject getclosure(int index)

getderef

public PyObject getderef(int index)

setderef

public void setderef(int index,
                     PyObject value)

to_cell

public void to_cell(int parm_index,
                    int env_index)


Jython homepage