Package org.python.core
Class PyFrame
java.lang.Object
org.python.core.PyObject
org.python.core.PyFrame
- All Implemented Interfaces:
Serializable
,Traverseproc
A Python frame object.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.python.core.PyObject
PyObject.ConversionException
-
Field Summary
Modifier and TypeFieldDescriptionPrevious frame or null.builtin symbol table.The underyling code object.PyCell[]
Nested scopes: cell + free env.PyObject[]
with context exits - used by generated bytecodePyObject[]
Global symbol table.int
int
Current line number.Local symbol table.int
int
Object[]
An interface to functions suitable for tracing, e.g. via sys.settrace().static final PyType
Fields inherited from class org.python.core.PyObject
gcMonitorGlobal
-
Constructor Summary
ConstructorDescriptionPyFrame
(PyBaseCode code, PyObject globals) PyFrame
(PyBaseCode code, PyObject locals, PyObject globals, PyObject builtins) -
Method Summary
Modifier and TypeMethodDescriptionvoid
void
dellocal
(int index) void
void
delTrace()
getclosure
(int index) getderef
(int index) Return the current f_locals dict.int
getline()
getlocal
(int index) Return the locals dict.getTrace()
boolean
Optional operation.void
void
void
setline
(int line) Track the current line number.void
void
void
void
to_cell
(int parm_index, int env_index) int
Traverses all directly containedPyObject
s.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__, __ensure_finalizer__, __eq__, __findattr__, __findattr__, __findattr_ex__, __finditem__, __finditem__, __finditem__, __float__, __floordiv__, __format__, __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__, __trunc__, __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, bit_length, conjugate, delDict, delType, dispatch__init__, equals, fastGetClass, fastGetDict, getDict, getType, hashCode, implementsDescrDelete, implementsDescrGet, implementsDescrSet, invoke, invoke, invoke, invoke, invoke, invoke, isCallable, isDataDescr, isIndex, isInteger, isMappingType, isNumberType, isSequenceType, noAttributeError, object___subclasshook__, readonlyAttributeError, setDict, setType, toString
-
Field Details
-
TYPE
-
f_back
Previous frame or null. -
f_code
The underyling code object. -
f_builtins
builtin symbol table. -
f_globals
Global symbol table. -
f_locals
Local symbol table. -
f_lineno
public int f_linenoCurrent line number. -
f_fastlocals
-
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
-
f_exits
with context exits - used by generated bytecode -
tracefunc
An interface to functions suitable for tracing, e.g. via sys.settrace().
-
-
Constructor Details
-
PyFrame
-
PyFrame
-
-
Method Details
-
getGeneratorInput
-
checkGeneratorInput
-
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
-
setTrace
-
delTrace
public void delTrace() -
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
-
getname
-
getglobal
-
setlocal
-
setlocal
-
setglobal
-
dellocal
public void dellocal(int index) -
dellocal
-
delglobal
-
getclosure
-
getderef
-
setderef
-
to_cell
public void to_cell(int parm_index, int env_index) -
traverse
Description copied from interface:Traverseproc
Traverses all directly containedPyObject
s. Like in CPython,arg
must be passed unmodified tovisit
as its second parameter. IfVisitproc.visit(PyObject, Object)
returns nonzero, this return value must be returned immediately by traverse.Visitproc.visit(PyObject, Object)
must not be called with anull
PyObject-argument.- Specified by:
traverse
in interfaceTraverseproc
-
refersDirectlyTo
Description copied from interface:Traverseproc
Optional operation. Should only be implemented if it is more efficient than callingTraverseproc.traverse(Visitproc, Object)
with a visitproc that just watches out forob
. Must returnfalse
ifob
isnull
.- Specified by:
refersDirectlyTo
in interfaceTraverseproc
- Throws:
UnsupportedOperationException
-