summaryrefslogtreecommitdiffstats
path: root/Doc
diff options
context:
space:
mode:
authorNick Coghlan <ncoghlan@gmail.com>2010-11-21 03:44:04 (GMT)
committerNick Coghlan <ncoghlan@gmail.com>2010-11-21 03:44:04 (GMT)
commite0f04659cd717a031b42dcfd43ca07824b24f9b2 (patch)
tree63fbd71f11a93bb398b5d1f6c2d91b116bc7d78e /Doc
parentd3309df40b5335ebf225a359e5cb3b324801e221 (diff)
downloadcpython-e0f04659cd717a031b42dcfd43ca07824b24f9b2.zip
cpython-e0f04659cd717a031b42dcfd43ca07824b24f9b2.tar.gz
cpython-e0f04659cd717a031b42dcfd43ca07824b24f9b2.tar.bz2
Issue #10220: Add inspect.getgeneratorstate(). Initial patch by Rodolpho Eckhardt
Diffstat (limited to 'Doc')
-rw-r--r--Doc/library/inspect.rst22
-rw-r--r--Doc/whatsnew/3.2.rst8
2 files changed, 30 insertions, 0 deletions
diff --git a/Doc/library/inspect.rst b/Doc/library/inspect.rst
index 9a068da..810a95b 100644
--- a/Doc/library/inspect.rst
+++ b/Doc/library/inspect.rst
@@ -620,3 +620,25 @@ code execution::
# in which case the descriptor itself will
# have to do
pass
+
+Current State of a Generator
+----------------------------
+
+When implementing coroutine schedulers and for other advanced uses of
+generators, it is useful to determine whether a generator is currently
+executing, is waiting to start or resume or execution, or has already
+terminated. func:`getgeneratorstate` allows the current state of a
+generator to be determined easily.
+
+.. function:: getgeneratorstate(generator)
+
+ Get current state of a generator-iterator.
+
+ Possible states are:
+ GEN_CREATED: Waiting to start execution.
+ GEN_RUNNING: Currently being executed by the interpreter.
+ GEN_SUSPENDED: Currently suspended at a yield expression.
+ GEN_CLOSED: Execution has completed.
+
+
+
diff --git a/Doc/whatsnew/3.2.rst b/Doc/whatsnew/3.2.rst
index 1bad544..dd47129 100644
--- a/Doc/whatsnew/3.2.rst
+++ b/Doc/whatsnew/3.2.rst
@@ -554,6 +554,14 @@ New, Improved, and Deprecated Modules
(Contributed by R. David Murray, :issue:`10321`.)
+* The :mod:`inspect` module has a new function :func:`getgenatorstate`
+ to easily identify the current state of a generator as one of
+ ``GEN_CREATED``, ``GEN_RUNNING``, ``GEN_SUSPENDED`` or ``GEN_CLOSED``.
+
+ (Contributed by Rodolpho Eckhardt and Nick Coghlan, :issue:`10220`.)
+
+.. XXX: Mention inspect.getattr_static (Michael Foord)
+
Multi-threading
===============