summaryrefslogtreecommitdiffstats
path: root/Doc/library/builtins.rst
diff options
context:
space:
mode:
authorGeorg Brandl <georg@python.org>2007-12-02 09:40:06 (GMT)
committerGeorg Brandl <georg@python.org>2007-12-02 09:40:06 (GMT)
commit1a3284ed69d545e4ef59869998cb8c29233a45fa (patch)
tree98728a9b7aae6188ee8124160007a9d5c5277f8c /Doc/library/builtins.rst
parent87f9c53937ce47f55851ac7c71a94e46cf9142bf (diff)
downloadcpython-1a3284ed69d545e4ef59869998cb8c29233a45fa.zip
cpython-1a3284ed69d545e4ef59869998cb8c29233a45fa.tar.gz
cpython-1a3284ed69d545e4ef59869998cb8c29233a45fa.tar.bz2
#1535: rename __builtin__ module to builtins.
Diffstat (limited to 'Doc/library/builtins.rst')
-rw-r--r--Doc/library/builtins.rst41
1 files changed, 41 insertions, 0 deletions
diff --git a/Doc/library/builtins.rst b/Doc/library/builtins.rst
new file mode 100644
index 0000000..2a5c7f5
--- /dev/null
+++ b/Doc/library/builtins.rst
@@ -0,0 +1,41 @@
+
+:mod:`builtins` --- Built-in objects
+====================================
+
+.. module:: builtins
+ :synopsis: The module that provides the built-in namespace.
+
+
+This module provides direct access to all 'built-in' identifiers of Python; for
+example, ``builtins.open`` is the full name for the built-in function
+:func:`open`. See chapter :ref:`builtin`.
+
+This module is not normally accessed explicitly by most applications, but can be
+useful in modules that provide objects with the same name as a built-in value,
+but in which the built-in of that name is also needed. For example, in a module
+that wants to implement an :func:`open` function that wraps the built-in
+:func:`open`, this module can be used directly::
+
+ import builtins
+
+ def open(path):
+ f = builtins.open(path, 'r')
+ return UpperCaser(f)
+
+ class UpperCaser:
+ '''Wrapper around a file that converts output to upper-case.'''
+
+ def __init__(self, f):
+ self._f = f
+
+ def read(self, count=-1):
+ return self._f.read(count).upper()
+
+ # ...
+
+As an implementation detail, most modules have the name ``__builtins__`` (note
+the ``'s'``) made available as part of their globals. The value of
+``__builtins__`` is normally either this module or the value of this modules's
+:attr:`__dict__` attribute. Since this is an implementation detail, it may not
+be used by alternate implementations of Python.
+