summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMark Dickinson <dickinsm@gmail.com>2008-05-03 18:23:14 (GMT)
committerMark Dickinson <dickinsm@gmail.com>2008-05-03 18:23:14 (GMT)
commit1840c1abcade9215faf91b701ab4525ba948d9dc (patch)
tree78c0104da7d1baf853443b320ee8421076289694
parent2b30ea068fdac34a7bbeb5d3cf90796f5034aea6 (diff)
downloadcpython-1840c1abcade9215faf91b701ab4525ba948d9dc.zip
cpython-1840c1abcade9215faf91b701ab4525ba948d9dc.tar.gz
cpython-1840c1abcade9215faf91b701ab4525ba948d9dc.tar.bz2
Backport Raymond's changes in r60508 to Python 2.6.
'Context flags get set, not incremented'
-rw-r--r--Doc/library/decimal.rst4
-rw-r--r--Lib/decimal.py8
2 files changed, 6 insertions, 6 deletions
diff --git a/Doc/library/decimal.rst b/Doc/library/decimal.rst
index e903a05..3359703 100644
--- a/Doc/library/decimal.rst
+++ b/Doc/library/decimal.rst
@@ -100,7 +100,7 @@ decimal module are: :const:`Clamped`, :const:`InvalidOperation`,
:const:`Overflow`, and :const:`Underflow`.
For each signal there is a flag and a trap enabler. When a signal is
-encountered, its flag is incremented from zero and, then, if the trap enabler is
+encountered, its flag is set to one, then, if the trap enabler is
set to one, an exception is raised. Flags are sticky, so the user needs to
reset them before monitoring a calculation.
@@ -1121,7 +1121,7 @@ Signals
Signals represent conditions that arise during computation. Each corresponds to
one context flag and one context trap enabler.
-The context flag is incremented whenever the condition is encountered. After the
+The context flag is set whenever the condition is encountered. After the
computation, flags may be checked for informational purposes (for instance, to
determine whether a computation was exact). After checking the flags, be sure to
clear all flags before starting the next computation.
diff --git a/Lib/decimal.py b/Lib/decimal.py
index aee558a..13e2239 100644
--- a/Lib/decimal.py
+++ b/Lib/decimal.py
@@ -3593,7 +3593,7 @@ class Context(object):
traps - If traps[exception] = 1, then the exception is
raised when it is caused. Otherwise, a value is
substituted in.
- flags - When an exception is caused, flags[exception] is incremented.
+ flags - When an exception is caused, flags[exception] is set.
(Whether or not the trap_enabler is set)
Should be reset by user of Decimal instance.
Emin - Minimum exponent
@@ -3661,16 +3661,16 @@ class Context(object):
"""Handles an error
If the flag is in _ignored_flags, returns the default response.
- Otherwise, it increments the flag, then, if the corresponding
+ Otherwise, it sets the flag, then, if the corresponding
trap_enabler is set, it reaises the exception. Otherwise, it returns
- the default value after incrementing the flag.
+ the default value after setting the flag.
"""
error = _condition_map.get(condition, condition)
if error in self._ignored_flags:
# Don't touch the flag
return error().handle(self, *args)
- self.flags[error] += 1
+ self.flags[error] = 1
if not self.traps[error]:
# The errors define how to handle themselves.
return condition().handle(self, *args)