From a33eb06e3b29cc5df520bbb28261bd370f510932 Mon Sep 17 00:00:00 2001 From: Christian Heimes Date: Sat, 8 Dec 2007 17:47:40 +0000 Subject: Added descriptor for builtins.open.__doc__ Before the change help(open) didn't return anything helpful but the doc string of io.OpenWrapper. Now it shows the user the documentation of io.open. --- Lib/io.py | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/Lib/io.py b/Lib/io.py index 5066c49..05ea94b 100644 --- a/Lib/io.py +++ b/Lib/io.py @@ -189,6 +189,14 @@ def open(file, mode="r", buffering=None, encoding=None, errors=None, text.mode = mode return text +class _DocDescriptor: + """Helper for builtins.open.__doc__ + """ + def __get__(self, obj, typ): + return ( + "open(file, mode='r', buffering=None, encoding=None, " + "errors=None, newline=None, closefd=True)\n\n" + + open.__doc__) class OpenWrapper: """Wrapper for builtins.open @@ -198,6 +206,8 @@ class OpenWrapper: See initstdio() in Python/pythonrun.c. """ + __doc__ = _DocDescriptor() + def __new__(cls, *args, **kwargs): return open(*args, **kwargs) -- cgit v0.12