2000-02-04 23:28:42 +08:00
|
|
|
"""Define names for all type symbols known in the standard interpreter.
|
|
|
|
|
|
|
|
Types that are part of optional modules (e.g. array) are not listed.
|
|
|
|
"""
|
1994-06-23 19:53:27 +08:00
|
|
|
|
|
|
|
import sys
|
|
|
|
|
|
|
|
NoneType = type(None)
|
|
|
|
TypeType = type(NoneType)
|
|
|
|
|
|
|
|
IntType = type(0)
|
|
|
|
LongType = type(0L)
|
|
|
|
FloatType = type(0.0)
|
1996-02-13 08:04:31 +08:00
|
|
|
try:
|
1997-09-05 06:12:34 +08:00
|
|
|
ComplexType = type(complex(0,1))
|
1996-02-13 08:04:31 +08:00
|
|
|
except NameError:
|
1997-09-05 06:12:34 +08:00
|
|
|
pass
|
1994-06-23 19:53:27 +08:00
|
|
|
|
|
|
|
StringType = type('')
|
2000-03-11 07:18:11 +08:00
|
|
|
UnicodeType = type(u'')
|
1999-03-20 03:08:03 +08:00
|
|
|
BufferType = type(buffer(''))
|
1994-06-23 19:53:27 +08:00
|
|
|
|
|
|
|
TupleType = type(())
|
|
|
|
ListType = type([])
|
1995-02-27 21:14:15 +08:00
|
|
|
DictType = DictionaryType = type({})
|
1994-06-23 19:53:27 +08:00
|
|
|
|
1994-09-29 18:04:43 +08:00
|
|
|
def _f(): pass
|
|
|
|
FunctionType = type(_f)
|
1998-03-27 05:13:24 +08:00
|
|
|
LambdaType = type(lambda: None) # Same as FunctionType
|
1997-09-05 06:12:34 +08:00
|
|
|
try:
|
|
|
|
CodeType = type(_f.func_code)
|
|
|
|
except:
|
|
|
|
pass
|
1994-09-29 18:04:43 +08:00
|
|
|
|
|
|
|
class _C:
|
1997-09-05 06:12:34 +08:00
|
|
|
def _m(self): pass
|
1994-09-29 18:04:43 +08:00
|
|
|
ClassType = type(_C)
|
1998-03-27 05:13:24 +08:00
|
|
|
UnboundMethodType = type(_C._m) # Same as MethodType
|
1994-09-29 18:04:43 +08:00
|
|
|
_x = _C()
|
|
|
|
InstanceType = type(_x)
|
|
|
|
MethodType = type(_x._m)
|
|
|
|
|
|
|
|
BuiltinFunctionType = type(len)
|
1998-03-27 05:13:24 +08:00
|
|
|
BuiltinMethodType = type([].append) # Same as BuiltinFunctionType
|
1994-06-23 19:53:27 +08:00
|
|
|
|
|
|
|
ModuleType = type(sys)
|
|
|
|
|
1997-09-05 06:12:34 +08:00
|
|
|
try:
|
1998-12-20 07:53:33 +08:00
|
|
|
FileType = type(sys.__stdin__)
|
1997-09-05 06:12:34 +08:00
|
|
|
except:
|
|
|
|
pass
|
1994-06-23 19:53:27 +08:00
|
|
|
XRangeType = type(xrange(0))
|
|
|
|
|
|
|
|
try:
|
1997-09-05 06:12:34 +08:00
|
|
|
raise TypeError
|
1994-06-23 19:53:27 +08:00
|
|
|
except TypeError:
|
1997-09-05 06:12:34 +08:00
|
|
|
try:
|
1998-03-27 05:13:24 +08:00
|
|
|
tb = sys.exc_info()[2]
|
|
|
|
TracebackType = type(tb)
|
|
|
|
FrameType = type(tb.tb_frame)
|
1997-09-05 06:12:34 +08:00
|
|
|
except:
|
1998-03-27 05:13:24 +08:00
|
|
|
pass
|
1997-09-30 07:22:12 +08:00
|
|
|
tb = None; del tb
|
1994-06-23 19:53:27 +08:00
|
|
|
|
1996-10-12 00:00:06 +08:00
|
|
|
SliceType = type(slice(0))
|
1996-10-12 00:25:41 +08:00
|
|
|
EllipsisType = type(Ellipsis)
|
1996-10-12 00:00:06 +08:00
|
|
|
|
1998-03-27 05:13:24 +08:00
|
|
|
del sys, _f, _C, _x # Not for export
|