Add doc for compileall.compile_file
diff --git a/Doc/library/compileall.rst b/Doc/library/compileall.rst
index ac0feb7..d576696 100644
--- a/Doc/library/compileall.rst
+++ b/Doc/library/compileall.rst
@@ -1,4 +1,3 @@
-
:mod:`compileall` --- Byte-compile Python libraries
===================================================
@@ -50,14 +49,14 @@
Expand list with its content (file and directory names).
-.. versionadded:: 2.7
- The ``-i`` option.
+.. versionchanged:: 2.7
+ Added the ``-i`` option.
Public functions
----------------
-.. function:: compile_dir(dir[, maxlevels[, ddir[, force[, rx[, quiet]]]]])
+.. function:: compile_dir(dir[, maxlevels[, ddir[, force[, rx[, quiet]]]]])
Recursively descend the directory tree named by *dir*, compiling all :file:`.py`
files along the way. The *maxlevels* parameter is used to limit the depth of
@@ -72,6 +71,23 @@
If *quiet* is true, nothing is printed to the standard output in normal
operation.
+
+.. function:: compile_file(fullname[, ddir[, force[, rx[, quiet]]]])
+
+ Compile the file with path *fullname*. If *ddir* is given, it is used as the
+ base path from which the filename used in error messages will be generated.
+ If *force* is true, modules are re-compiled even if the timestamp is up to
+ date.
+
+ If *rx* is given, it specifies a regular expression which, if matched, will
+ prevent compilation; that expression is searched for in the full path.
+
+ If *quiet* is true, nothing is printed to the standard output in normal
+ operation.
+
+ .. versionadded:: 2.7
+
+
.. function:: compile_path([skip_curdir[, maxlevels[, force]]])
Byte-compile all the :file:`.py` files found along ``sys.path``. If
diff --git a/Lib/compileall.py b/Lib/compileall.py
index f564abb..910f305 100644
--- a/Lib/compileall.py
+++ b/Lib/compileall.py
@@ -9,7 +9,6 @@
packages -- for now, you'll have to deal with packages separately.)
See module py_compile for details of the actual byte-compilation.
-
"""
import os
import sys
@@ -31,7 +30,6 @@
directory name that will show up in error messages)
force: if 1, force compilation, even if timestamps are up-to-date
quiet: if 1, be quiet during compilation
-
"""
if not quiet:
print 'Listing', dir, '...'
@@ -61,15 +59,16 @@
return success
def compile_file(fullname, ddir=None, force=0, rx=None, quiet=0):
- """Byte-compile file.
- file: the file to byte-compile
+ """Byte-compile one file.
+
+ Arguments (only fullname is required):
+
+ fullname: the file to byte-compile
ddir: if given, purported directory name (this is the
directory name that will show up in error messages)
force: if 1, force compilation, even if timestamps are up-to-date
quiet: if 1, be quiet during compilation
-
"""
-
success = 1
name = os.path.basename(fullname)
if ddir is not None:
@@ -120,7 +119,6 @@
maxlevels: max recursion level (default 0)
force: as for compile_dir() (default 0)
quiet: as for compile_dir() (default 0)
-
"""
success = 1
for dir in sys.path: