blob: 5254ebc97d66c7cbea5da5487918b6dc5d87bef6 [file] [log] [blame]
Guido van Rossum85d89451994-06-23 11:53:27 +00001# Define names for all type symbols known in the standard interpreter.
2# Types that are part of optional modules (e.g. array) are not listed.
3
4import sys
5
6NoneType = type(None)
7TypeType = type(NoneType)
8
9IntType = type(0)
10LongType = type(0L)
11FloatType = type(0.0)
Guido van Rossum0f6f8121996-02-13 00:04:31 +000012try:
Guido van Rossum898c9151997-09-04 22:12:34 +000013 ComplexType = type(complex(0,1))
Guido van Rossum0f6f8121996-02-13 00:04:31 +000014except NameError:
Guido van Rossum898c9151997-09-04 22:12:34 +000015 pass
Guido van Rossum85d89451994-06-23 11:53:27 +000016
17StringType = type('')
18
19TupleType = type(())
20ListType = type([])
Guido van Rossum780620f1995-02-27 13:14:15 +000021DictType = DictionaryType = type({})
Guido van Rossum85d89451994-06-23 11:53:27 +000022
Guido van Rossumadc940e1994-09-29 10:04:43 +000023def _f(): pass
24FunctionType = type(_f)
25LambdaType = type(lambda: None) # Same as FunctionType
Guido van Rossum898c9151997-09-04 22:12:34 +000026try:
27 CodeType = type(_f.func_code)
28except:
29 pass
Guido van Rossum85d89451994-06-23 11:53:27 +000030
Guido van Rossumadc940e1994-09-29 10:04:43 +000031class _C:
Guido van Rossum898c9151997-09-04 22:12:34 +000032 def _m(self): pass
Guido van Rossumadc940e1994-09-29 10:04:43 +000033ClassType = type(_C)
34UnboundMethodType = type(_C._m) # Same as MethodType
35_x = _C()
36InstanceType = type(_x)
37MethodType = type(_x._m)
Guido van Rossum85d89451994-06-23 11:53:27 +000038
Guido van Rossumadc940e1994-09-29 10:04:43 +000039BuiltinFunctionType = type(len)
40BuiltinMethodType = type([].append) # Same as BuiltinFunctionType
Guido van Rossum85d89451994-06-23 11:53:27 +000041
42ModuleType = type(sys)
43
Guido van Rossum898c9151997-09-04 22:12:34 +000044try:
45 FileType = type(sys.stdin) # XXX what if it was assigned to?
46except:
47 pass
Guido van Rossum85d89451994-06-23 11:53:27 +000048XRangeType = type(xrange(0))
49
50try:
Guido van Rossum898c9151997-09-04 22:12:34 +000051 raise TypeError
Guido van Rossum85d89451994-06-23 11:53:27 +000052except TypeError:
Guido van Rossum898c9151997-09-04 22:12:34 +000053 try:
Guido van Rossum85d89451994-06-23 11:53:27 +000054 TracebackType = type(sys.exc_traceback)
55 FrameType = type(sys.exc_traceback.tb_frame)
Guido van Rossum898c9151997-09-04 22:12:34 +000056 except:
57 pass
Guido van Rossum85d89451994-06-23 11:53:27 +000058
Guido van Rossum8741b2b1996-10-11 16:00:06 +000059SliceType = type(slice(0))
Guido van Rossume449af71996-10-11 16:25:41 +000060EllipsisType = type(Ellipsis)
Guido van Rossum8741b2b1996-10-11 16:00:06 +000061
Guido van Rossumadc940e1994-09-29 10:04:43 +000062del sys, _f, _C, _x # Not for export