From 754bbf7a25a8dda49b5d08ef0d0443bbf5af0e36 Mon Sep 17 00:00:00 2001 From: Craig Jennings Date: Sun, 7 Apr 2024 13:41:34 -0500 Subject: new repository --- devdocs/python~3.12/c-api%2Fframe.html | 60 ++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 devdocs/python~3.12/c-api%2Fframe.html (limited to 'devdocs/python~3.12/c-api%2Fframe.html') diff --git a/devdocs/python~3.12/c-api%2Fframe.html b/devdocs/python~3.12/c-api%2Fframe.html new file mode 100644 index 00000000..b842a9e6 --- /dev/null +++ b/devdocs/python~3.12/c-api%2Fframe.html @@ -0,0 +1,60 @@ +

Frame Objects

+type PyFrameObject
+ Part of the Limited API (as an opaque struct).

The C structure of the objects used to describe frame objects.

There are no public members in this structure.

Changed in version 3.11: The members of this structure were removed from the public C API. Refer to the What’s New entry for details.

+

The PyEval_GetFrame() and PyThreadState_GetFrame() functions can be used to get a frame object.

See also Reflection.

+PyTypeObject PyFrame_Type
+

The type of frame objects. It is the same object as types.FrameType in the Python layer.

Changed in version 3.11: Previously, this type was only available after including <frameobject.h>.

+
+int PyFrame_Check(PyObject *obj)
+

Return non-zero if obj is a frame object.

Changed in version 3.11: Previously, this function was only available after including <frameobject.h>.

+
+PyFrameObject *PyFrame_GetBack(PyFrameObject *frame)
+

Get the frame next outer frame.

Return a strong reference, or NULL if frame has no outer frame.

New in version 3.9.

+
+PyObject *PyFrame_GetBuiltins(PyFrameObject *frame)
+

Get the frame’s f_builtins attribute.

Return a strong reference. The result cannot be NULL.

New in version 3.11.

+
+PyCodeObject *PyFrame_GetCode(PyFrameObject *frame)
+ Part of the Stable ABI since version 3.10.

Get the frame code.

Return a strong reference.

The result (frame code) cannot be NULL.

New in version 3.9.

+
+PyObject *PyFrame_GetGenerator(PyFrameObject *frame)
+

Get the generator, coroutine, or async generator that owns this frame, or NULL if this frame is not owned by a generator. Does not raise an exception, even if the return value is NULL.

Return a strong reference, or NULL.

New in version 3.11.

+
+PyObject *PyFrame_GetGlobals(PyFrameObject *frame)
+

Get the frame’s f_globals attribute.

Return a strong reference. The result cannot be NULL.

New in version 3.11.

+
+int PyFrame_GetLasti(PyFrameObject *frame)
+

Get the frame’s f_lasti attribute.

Returns -1 if frame.f_lasti is None.

New in version 3.11.

+
+PyObject *PyFrame_GetVar(PyFrameObject *frame, PyObject *name)
+

Get the variable name of frame.

  • Return a strong reference to the variable value on success.
  • Raise NameError and return NULL if the variable does not exist.
  • Raise an exception and return NULL on error.

name type must be a str.

New in version 3.12.

+
+PyObject *PyFrame_GetVarString(PyFrameObject *frame, const char *name)
+

Similar to PyFrame_GetVar(), but the variable name is a C string encoded in UTF-8.

New in version 3.12.

+
+PyObject *PyFrame_GetLocals(PyFrameObject *frame)
+

Get the frame’s f_locals attribute (dict).

Return a strong reference.

New in version 3.11.

+
+int PyFrame_GetLineNumber(PyFrameObject *frame)
+ Part of the Stable ABI since version 3.10.

Return the line number that frame is currently executing.

+

Internal Frames

Unless using PEP 523, you will not need this.

+struct _PyInterpreterFrame
+

The interpreter’s internal frame representation.

New in version 3.11.

+
+PyObject *PyUnstable_InterpreterFrame_GetCode(struct _PyInterpreterFrame *frame);
+
This is Unstable API. It may change without warning in minor releases. +

Return a strong reference to the code object for the frame.

New in version 3.12.

+
+int PyUnstable_InterpreterFrame_GetLasti(struct _PyInterpreterFrame *frame);
+
This is Unstable API. It may change without warning in minor releases. +

Return the byte offset into the last executed instruction.

New in version 3.12.

+
+int PyUnstable_InterpreterFrame_GetLine(struct _PyInterpreterFrame *frame);
+
This is Unstable API. It may change without warning in minor releases. +

Return the currently executing line number, or -1 if there is no line number.

New in version 3.12.

+
+

+ © 2001–2023 Python Software Foundation
Licensed under the PSF License.
+ https://docs.python.org/3.12/c-api/frame.html +

+
-- cgit v1.2.3