blob: a9fb342f7c0f8ea3fc59ec9cfa718867afa41a26 [file] [log] [blame]
Georg Brandl54a3faa2008-01-20 09:30:57 +00001.. highlightlang:: c
2
3.. _boolobjects:
4
5Boolean Objects
6---------------
7
8Booleans in Python are implemented as a subclass of integers. There are only
9two booleans, :const:`Py_False` and :const:`Py_True`. As such, the normal
10creation and deletion functions don't apply to booleans. The following macros
11are available, however.
12
13
Georg Brandl60203b42010-10-06 10:11:56 +000014.. c:function:: int PyBool_Check(PyObject *o)
Georg Brandl54a3faa2008-01-20 09:30:57 +000015
Georg Brandl60203b42010-10-06 10:11:56 +000016 Return true if *o* is of type :c:data:`PyBool_Type`.
Georg Brandl54a3faa2008-01-20 09:30:57 +000017
18
Georg Brandl60203b42010-10-06 10:11:56 +000019.. c:var:: PyObject* Py_False
Georg Brandl54a3faa2008-01-20 09:30:57 +000020
21 The Python ``False`` object. This object has no methods. It needs to be
22 treated just like any other object with respect to reference counts.
23
24
Georg Brandl60203b42010-10-06 10:11:56 +000025.. c:var:: PyObject* Py_True
Georg Brandl54a3faa2008-01-20 09:30:57 +000026
27 The Python ``True`` object. This object has no methods. It needs to be treated
28 just like any other object with respect to reference counts.
29
30
Georg Brandl60203b42010-10-06 10:11:56 +000031.. c:macro:: Py_RETURN_FALSE
Georg Brandl54a3faa2008-01-20 09:30:57 +000032
33 Return :const:`Py_False` from a function, properly incrementing its reference
34 count.
35
36
Georg Brandl60203b42010-10-06 10:11:56 +000037.. c:macro:: Py_RETURN_TRUE
Georg Brandl54a3faa2008-01-20 09:30:57 +000038
39 Return :const:`Py_True` from a function, properly incrementing its reference
40 count.
41
42
Georg Brandl60203b42010-10-06 10:11:56 +000043.. c:function:: PyObject* PyBool_FromLong(long v)
Georg Brandl54a3faa2008-01-20 09:30:57 +000044
45 Return a new reference to :const:`Py_True` or :const:`Py_False` depending on the
46 truth value of *v*.