1 """Define names for all type symbols known in the standard interpreter.
3 Types that are part of optional modules (e.g. array) are not listed.
7 # Iterators in Python aren't a matter of type but of protocol. A large
8 # and changing number of builtin types implement *some* flavor of
9 # iterator. Don't check the type! Use hasattr to check for both
10 # "__iter__" and "next" attributes instead.
27 # StringTypes is already outdated. Instead of writing "type(x) in
28 # types.StringTypes", you should use "isinstance(x, basestring)". But
29 # we keep around for compatibility with Python 2.2.
32 StringTypes
= (StringType
, UnicodeType
)
34 StringTypes
= (StringType
,)
40 DictType
= DictionaryType
= dict
43 FunctionType
= type(_f
)
44 LambdaType
= type(lambda: None) # Same as FunctionType
45 CodeType
= type(_f
.func_code
)
49 GeneratorType
= type(_g())
54 UnboundMethodType
= type(_C
._m
) # Same as MethodType
56 InstanceType
= type(_x
)
57 MethodType
= type(_x
._m
)
59 BuiltinFunctionType
= type(len)
60 BuiltinMethodType
= type([].append
) # Same as BuiltinFunctionType
62 ModuleType
= type(sys
)
69 tb
= sys
.exc_info()[2]
70 TracebackType
= type(tb
)
71 FrameType
= type(tb
.tb_frame
)
75 EllipsisType
= type(Ellipsis)
77 DictProxyType
= type(TypeType
.__dict
__)
78 NotImplementedType
= type(NotImplemented)
80 # For Jython, the following two types are identical
81 GetSetDescriptorType
= type(FunctionType
.func_code
)
82 MemberDescriptorType
= type(FunctionType
.func_globals
)
84 del sys
, _f
, _g
, _C
, _x
# Not for export