summaryrefslogtreecommitdiff
path: root/Python/bltinmodule.c
diff options
context:
space:
mode:
authorWalter Dörwald <walter@livinglogic.de>2002-12-12 16:41:44 +0000
committerWalter Dörwald <walter@livinglogic.de>2002-12-12 16:41:44 +0000
commitd9a6ad3bebc2b451482db152171fca3144b2cd97 (patch)
tree59624bf7be4191d6d918fd91a821636a4157aa6a /Python/bltinmodule.c
parentb083cb3901fcb7487c04ad996148d1cf0aa32350 (diff)
downloadcpython-git-d9a6ad3bebc2b451482db152171fca3144b2cd97.tar.gz
Enhance issubclass() and PyObject_IsSubclass() so that a tuple is
supported as the second argument. This has the same meaning as for isinstance(), i.e. issubclass(X, (A, B)) is equivalent to issubclass(X, A) or issubclass(X, B). Compared to isinstance(), this patch does not search the tuple recursively for classes, i.e. any entry in the tuple that is not a class, will result in a TypeError. This closes SF patch #649608.
Diffstat (limited to 'Python/bltinmodule.c')
-rw-r--r--Python/bltinmodule.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/Python/bltinmodule.c b/Python/bltinmodule.c
index 7e7ad2ef60..ab76006890 100644
--- a/Python/bltinmodule.c
+++ b/Python/bltinmodule.c
@@ -1586,7 +1586,9 @@ builtin_issubclass(PyObject *self, PyObject *args)
PyDoc_STRVAR(issubclass_doc,
"issubclass(C, B) -> bool\n\
\n\
-Return whether class C is a subclass (i.e., a derived class) of class B.");
+Return whether class C is a subclass (i.e., a derived class) of class B.\n\
+When using a tuple as the second argument issubclass(X, (A, B, ...)),\n\
+is a shortcut for issubclass(X, A) or issubclass(X, B) or ... (etc.).");
static PyObject*