blob: 2d5638670ea4cb3de313b5779917a16027dbb753 [file] [log] [blame]
Georg Brandl116aa622007-08-15 14:28:22 +00001.. highlightlang:: c
2
3
4.. _concrete:
5
6**********************
7Concrete Objects Layer
8**********************
9
10The functions in this chapter are specific to certain Python object types.
11Passing them an object of the wrong type is not a good idea; if you receive an
12object from a Python program and you are not sure that it has the right type,
13you must perform a type check first; for example, to check that an object is a
Georg Brandl60203b42010-10-06 10:11:56 +000014dictionary, use :c:func:`PyDict_Check`. The chapter is structured like the
Georg Brandl116aa622007-08-15 14:28:22 +000015"family tree" of Python object types.
16
17.. warning::
18
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.
23
24
25.. _fundamental:
26
27Fundamental Objects
28===================
29
30This section describes Python type objects and the singleton object ``None``.
31
Georg Brandl54a3faa2008-01-20 09:30:57 +000032.. toctree::
Georg Brandl116aa622007-08-15 14:28:22 +000033
Georg Brandl54a3faa2008-01-20 09:30:57 +000034 type.rst
35 none.rst
Georg Brandl116aa622007-08-15 14:28:22 +000036
37
38.. _numericobjects:
39
40Numeric Objects
41===============
42
43.. index:: object: numeric
44
Georg Brandl54a3faa2008-01-20 09:30:57 +000045.. toctree::
Georg Brandl116aa622007-08-15 14:28:22 +000046
Georg Brandl54a3faa2008-01-20 09:30:57 +000047 long.rst
48 bool.rst
49 float.rst
50 complex.rst
Georg Brandl116aa622007-08-15 14:28:22 +000051
52
53.. _sequenceobjects:
54
55Sequence Objects
56================
57
58.. index:: object: sequence
59
60Generic operations on sequence objects were discussed in the previous chapter;
61this section deals with the specific kinds of sequence objects that are
62intrinsic to the Python language.
63
Georg Brandl60bad0e2008-01-05 21:16:33 +000064.. XXX sort out unicode, str, bytes and bytearray
Georg Brandl116aa622007-08-15 14:28:22 +000065
Georg Brandl54a3faa2008-01-20 09:30:57 +000066.. toctree::
Georg Brandl116aa622007-08-15 14:28:22 +000067
Benjamin Petersondae32c12008-05-26 15:01:55 +000068 bytes.rst
Benjamin Petersonfbeb6b62008-05-26 16:04:49 +000069 bytearray.rst
Georg Brandl54a3faa2008-01-20 09:30:57 +000070 unicode.rst
Georg Brandl54a3faa2008-01-20 09:30:57 +000071 tuple.rst
72 list.rst
Georg Brandl116aa622007-08-15 14:28:22 +000073
74
75.. _mapobjects:
76
Victor Stinnere8453bc2013-11-07 22:05:48 +010077Container Objects
78=================
Georg Brandl116aa622007-08-15 14:28:22 +000079
80.. index:: object: mapping
81
Georg Brandl54a3faa2008-01-20 09:30:57 +000082.. toctree::
Georg Brandl116aa622007-08-15 14:28:22 +000083
Georg Brandl54a3faa2008-01-20 09:30:57 +000084 dict.rst
Victor Stinnere8453bc2013-11-07 22:05:48 +010085 set.rst
Georg Brandl116aa622007-08-15 14:28:22 +000086
Georg Brandl116aa622007-08-15 14:28:22 +000087
88.. _otherobjects:
89
Victor Stinnere8453bc2013-11-07 22:05:48 +010090Function Objects
91================
92
93.. toctree::
94
95 function.rst
96 method.rst
97 cell.rst
98 code.rst
99
100
Georg Brandl116aa622007-08-15 14:28:22 +0000101Other Objects
102=============
103
Georg Brandl54a3faa2008-01-20 09:30:57 +0000104.. toctree::
Georg Brandl116aa622007-08-15 14:28:22 +0000105
Georg Brandl54a3faa2008-01-20 09:30:57 +0000106 file.rst
107 module.rst
108 iterator.rst
109 descriptor.rst
110 slice.rst
Antoine Pitrouc663b582010-09-28 23:59:51 +0000111 memoryview.rst
Georg Brandl54a3faa2008-01-20 09:30:57 +0000112 weakref.rst
Benjamin Petersonb173f782009-05-05 22:31:58 +0000113 capsule.rst
Georg Brandl54a3faa2008-01-20 09:30:57 +0000114 gen.rst
115 datetime.rst
Victor Stinnere8453bc2013-11-07 22:05:48 +0100116