]> git.proxmox.com Git - ceph.git/blob - ceph/src/boost/libs/python/doc/reference/ssize_t.qbk
add subtree-ish sources for 12.0.3
[ceph.git] / ceph / src / boost / libs / python / doc / reference / ssize_t.qbk
1 [section boost/python/ssize_t.hpp]
2 [section Introduction]
3 Python 2.5 introduces a new `Py_ssize_t` typedef and two related macros ([@http://www.python.org/dev/peps/pep-0353/ PEP 353]). The <boost/python/ssize_t.hpp> header imports these definitions into the `boost::python` namespace as `ssize_t`, `ssize_t_max`, and `ssize_t_min`. Appropriate definitions are provided for backward compatibility with previous Python versions.
4 [endsect]
5 [section Typedefs]
6 Imports `Py_ssize_t` into the `boost::python` namespace if available, or provides an appropriate typedef for backward compatibility:
7 ``
8 #if PY_VERSION_HEX >= 0x02050000
9 typedef Py_ssize_t ssize_t;
10 #else
11 typedef int ssize_t;
12 #endif
13 ``
14 [endsect]
15 [section Constants]
16 Imports `PY_SSIZE_T_MAX` and `PY_SSIZE_T_MIN` as constants into the `boost::python` namespace if available, or provides appropriate constants for backward compatibility:
17 ``
18 #if PY_VERSION_HEX >= 0x02050000
19 ssize_t const ssize_t_max = PY_SSIZE_T_MAX;
20 ssize_t const ssize_t_min = PY_SSIZE_T_MIN;
21 #else
22 ssize_t const ssize_t_max = INT_MAX;
23 ssize_t const ssize_t_min = INT_MIN;
24 #endif
25 ``
26 [endsect]
27 [endsect]