diff Doc/lib/libfuncs.tex @ 22785:aa8d59823add legacy-trunk

Add the 'bool' type and its values 'False' and 'True', as described in PEP 285. Everything described in the PEP is here, and there is even some documentation. I had to fix 12 unit tests; all but one of these were printing Boolean outcomes that changed from 0/1 to False/True. (The exception is test_unicode.py, which did a type(x) == type(y) style comparison. I could've fixed that with a single line using issubtype(x, type(y)), but instead chose to be explicit about those places where a bool is expected. Still to do: perhaps more documentation; change standard library modules to return False/True from predicates.
author Guido van Rossum <guido@python.org>
date Wed, 03 Apr 2002 22:41:51 +0000
parents a53730cd29c1
children 7b00dab988cf
line wrap: on
line diff
--- a/Doc/lib/libfuncs.tex	Wed Apr 03 21:52:10 2002 +0000
+++ b/Doc/lib/libfuncs.tex	Wed Apr 03 22:41:51 2002 +0000
@@ -77,6 +77,16 @@
   to \code{\var{function}(*\var{args}, **\var{keywords})}.
 \end{funcdesc}
 
+\begin{funcdesc}{bool}{x}
+  Convert a value to a Boolean, using the standard truth testing
+  procedure.  If \code{x} is false, this returns \code{False};
+  otherwise it returns \code{True}.  \code{bool} is also a class,
+  which is a subclass of \code{int}.  Class \code{bool} cannot be
+  subclassed further.  Its only instances are \code{False} and
+  \code{True}.
+\indexii{Boolean}{type}
+\end{funcdesc}
+
 \begin{funcdesc}{buffer}{object\optional{, offset\optional{, size}}}
   The \var{object} argument must be an object that supports the buffer
   call interface (such as strings, arrays, and buffers).  A new buffer