From 57b39e0916d741d9851ac875d8f443bfc6005def Mon Sep 17 00:00:00 2001
From: Georg Brandl
%s: %s' % (strong(pydoc.html.escape(str(etype))),
pydoc.html.escape(str(evalue)))]
- if type(evalue) is types.InstanceType:
- for name in dir(evalue):
- if name[:1] == '_': continue
- value = pydoc.html.repr(getattr(evalue, name))
- exception.append('\n
%s%s =\n%s' % (indent, name, value))
+ for name in dir(evalue):
+ if name[:1] == '_': continue
+ value = pydoc.html.repr(getattr(evalue, name))
+ exception.append('\n
%s%s =\n%s' % (indent, name, value))
import traceback
return head + ''.join(frames) + ''.join(exception) + '''
@@ -239,10 +238,9 @@ function calls leading up to the error, in the order they occurred.
frames.append('\n%s\n' % '\n'.join(rows))
exception = ['%s: %s' % (str(etype), str(evalue))]
- if type(evalue) is types.InstanceType:
- for name in dir(evalue):
- value = pydoc.text.repr(getattr(evalue, name))
- exception.append('\n%s%s = %s' % (" "*4, name, value))
+ for name in dir(evalue):
+ value = pydoc.text.repr(getattr(evalue, name))
+ exception.append('\n%s%s = %s' % (" "*4, name, value))
import traceback
return head + ''.join(frames) + ''.join(exception) + '''
diff --git a/Lib/idlelib/ObjectBrowser.py b/Lib/idlelib/ObjectBrowser.py
index b4f64b6fb24..3ef5bb905de 100644
--- a/Lib/idlelib/ObjectBrowser.py
+++ b/Lib/idlelib/ObjectBrowser.py
@@ -57,15 +57,6 @@ class ObjectTreeItem(TreeItem):
sublist.append(item)
return sublist
-class InstanceTreeItem(ObjectTreeItem):
- def IsExpandable(self):
- return True
- def GetSubList(self):
- sublist = ObjectTreeItem.GetSubList(self)
- sublist.insert(0,
- make_objecttreeitem("__class__ =", self.object.__class__))
- return sublist
-
class ClassTreeItem(ObjectTreeItem):
def IsExpandable(self):
return True
@@ -120,7 +111,6 @@ dispatch = {
TupleType: SequenceTreeItem,
ListType: SequenceTreeItem,
DictType: DictTreeItem,
- InstanceType: InstanceTreeItem,
ClassType: ClassTreeItem,
}
diff --git a/Lib/idlelib/rpc.py b/Lib/idlelib/rpc.py
index 169bcebcc57..57a975a510a 100644
--- a/Lib/idlelib/rpc.py
+++ b/Lib/idlelib/rpc.py
@@ -574,8 +574,6 @@ def _getmethods(obj, methods):
attr = getattr(obj, name)
if callable(attr):
methods[name] = 1
- if type(obj) == types.InstanceType:
- _getmethods(obj.__class__, methods)
if type(obj) == types.ClassType:
for super in obj.__bases__:
_getmethods(super, methods)
diff --git a/Lib/plat-mac/aetypes.py b/Lib/plat-mac/aetypes.py
index 14e48d683a9..9dfb39fed3a 100644
--- a/Lib/plat-mac/aetypes.py
+++ b/Lib/plat-mac/aetypes.py
@@ -518,8 +518,7 @@ class ComponentItem(SelectableItem):
ss = repr(seld)
elif IsRange(seld):
start, stop = seld.start, seld.stop
- if type(start) == InstanceType == type(stop) and \
- start.__class__ == self.__class__ == stop.__class__:
+ if type(start) == type(stop) == type(self):
ss = str(start.seld) + " thru " + str(stop.seld)
else:
ss = str(seld)
diff --git a/Lib/plat-mac/findertools.py b/Lib/plat-mac/findertools.py
index 282cc27975f..6c124193d1f 100644
--- a/Lib/plat-mac/findertools.py
+++ b/Lib/plat-mac/findertools.py
@@ -484,8 +484,8 @@ def windowposition(folder, pos=None):
openwindow(fsr)
if not pos:
return _getwindowposition(folder_alias)
- if type(pos) == InstanceType:
- # pos might be a QDPoint object as returned by _getwindowposition
+ if aetypes.IsQDPoint(pos):
+ # QDPoint object as returned by _getwindowposition
pos = (pos.h, pos.v)
return _setwindowposition(folder_alias, pos)
diff --git a/Lib/pydoc.py b/Lib/pydoc.py
index a74b97b4d09..9fca8c268b2 100755
--- a/Lib/pydoc.py
+++ b/Lib/pydoc.py
@@ -1433,8 +1433,6 @@ def describe(thing):
return 'function ' + thing.__name__
if inspect.ismethod(thing):
return 'method ' + thing.__name__
- if type(thing) is types.InstanceType:
- return 'instance of ' + thing.__class__.__name__
return type(thing).__name__
def locate(path, forceload=0):
diff --git a/Lib/test/crashers/infinite_rec_5.py b/Lib/test/crashers/infinite_rec_5.py
deleted file mode 100644
index 18d29632334..00000000000
--- a/Lib/test/crashers/infinite_rec_5.py
+++ /dev/null
@@ -1,10 +0,0 @@
-
-# http://python.org/sf/1267884
-
-import types
-
-class C:
- __str__ = types.InstanceType.__str__
-
-if __name__ == '__main__':
- str(C()) # segfault: infinite recursion in C
diff --git a/Lib/test/test_isinstance.py b/Lib/test/test_isinstance.py
index cc2b5fd57c9..366ced7c33c 100644
--- a/Lib/test/test_isinstance.py
+++ b/Lib/test/test_isinstance.py
@@ -15,7 +15,6 @@ class TestIsInstanceExceptions(unittest.TestCase):
# (leading to an "undetected error" in the debug build). Set up is,
# isinstance(inst, cls) where:
#
- # - inst isn't an InstanceType
# - cls isn't a ClassType, a TypeType, or a TupleType
# - cls has a __bases__ attribute
# - inst has a __class__ attribute