summaryrefslogtreecommitdiff
path: root/Lib/types.py
diff options
context:
space:
mode:
authorGuido van Rossum <guido@python.org>1997-09-04 22:12:34 +0000
committerGuido van Rossum <guido@python.org>1997-09-04 22:12:34 +0000
commit67c5cec71133f2492c1daf7e6164a2ce81f8aa28 (patch)
treea690e00cc4dfa6276c842a682b1935c2cb32129b /Lib/types.py
parentef104e5a175cd037bf57954b74026f185f11d138 (diff)
downloadcpython-67c5cec71133f2492c1daf7e6164a2ce81f8aa28.tar.gz
Added some try-excepts so that it can be imported in restricted mode
(though some type names are undefined in that case, e.g. CodeType (inaccessible), FileType (not always accessible), and TracebackType and FrameType (inaccessible).
Diffstat (limited to 'Lib/types.py')
-rw-r--r--Lib/types.py21
1 files changed, 15 insertions, 6 deletions
diff --git a/Lib/types.py b/Lib/types.py
index c0b3296e39..5254ebc97d 100644
--- a/Lib/types.py
+++ b/Lib/types.py
@@ -10,9 +10,9 @@ IntType = type(0)
LongType = type(0L)
FloatType = type(0.0)
try:
- ComplexType = type(complex(0,1))
+ ComplexType = type(complex(0,1))
except NameError:
- pass
+ pass
StringType = type('')
@@ -23,10 +23,13 @@ DictType = DictionaryType = type({})
def _f(): pass
FunctionType = type(_f)
LambdaType = type(lambda: None) # Same as FunctionType
-CodeType = type(_f.func_code)
+try:
+ CodeType = type(_f.func_code)
+except:
+ pass
class _C:
- def _m(self): pass
+ def _m(self): pass
ClassType = type(_C)
UnboundMethodType = type(_C._m) # Same as MethodType
_x = _C()
@@ -38,14 +41,20 @@ BuiltinMethodType = type([].append) # Same as BuiltinFunctionType
ModuleType = type(sys)
-FileType = type(sys.stdin) # XXX what if it was assigned to?
+try:
+ FileType = type(sys.stdin) # XXX what if it was assigned to?
+except:
+ pass
XRangeType = type(xrange(0))
try:
- raise TypeError
+ raise TypeError
except TypeError:
+ try:
TracebackType = type(sys.exc_traceback)
FrameType = type(sys.exc_traceback.tb_frame)
+ except:
+ pass
SliceType = type(slice(0))
EllipsisType = type(Ellipsis)