Issue #7205: Fix a possible deadlock when using a BZ2File object from several threads...
[python.git] / Doc / c-api / concrete.rst
blob05957884fcf391e042af2376d06e79d0de47abbc
1 .. highlightlang:: c
4 .. _concrete:
6 **********************
7 Concrete Objects Layer
8 **********************
10 The functions in this chapter are specific to certain Python object types.
11 Passing them an object of the wrong type is not a good idea; if you receive an
12 object from a Python program and you are not sure that it has the right type,
13 you must perform a type check first; for example, to check that an object is a
14 dictionary, use :cfunc:`PyDict_Check`.  The chapter is structured like the
15 "family tree" of Python object types.
17 .. warning::
19    While the functions described in this chapter carefully check the type of the
20    objects which are passed in, many of them do not check for *NULL* being passed
21    instead of a valid object.  Allowing *NULL* to be passed in can cause memory
22    access violations and immediate termination of the interpreter.
25 .. _fundamental:
27 Fundamental Objects
28 ===================
30 This section describes Python type objects and the singleton object ``None``.
32 .. toctree::
34    type.rst
35    none.rst
38 .. _numericobjects:
40 Numeric Objects
41 ===============
43 .. index:: object: numeric
45 .. toctree::
47    int.rst
48    bool.rst
49    long.rst
50    float.rst
51    complex.rst
54 .. _sequenceobjects:
56 Sequence Objects
57 ================
59 .. index:: object: sequence
61 Generic operations on sequence objects were discussed in the previous chapter;
62 this section deals with the specific kinds of sequence objects that are
63 intrinsic to the Python language.
65 .. toctree::
67    bytearray.rst
68    string.rst
69    unicode.rst
70    buffer.rst
71    tuple.rst
72    list.rst
75 .. _mapobjects:
77 Mapping Objects
78 ===============
80 .. index:: object: mapping
82 .. toctree::
84    dict.rst
87 .. _otherobjects:
89 Other Objects
90 =============
92 .. toctree::
94    class.rst
95    function.rst
96    method.rst
97    file.rst
98    module.rst
99    iterator.rst
100    descriptor.rst
101    slice.rst
102    weakref.rst
103    cobject.rst
104    cell.rst
105    gen.rst
106    datetime.rst
107    set.rst
108    code.rst