Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

Boost.Python

Header <boost/python/ssize_t.hpp>

Contents

Introduction
Typedef
Constants

Introduction

Python 2.5 introduces a new Py_ssize_t typedef and two related macros (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.

Typedefs

Imports Py_ssize_t into the boost::python namespace if available, or provides an appropriate typedef for backward compatibility:
#if PY_VERSION_HEX >= 0x02050000
typedef Py_ssize_t ssize_t;
#else
typedef int ssize_t;
#endif

Constants

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:
#if PY_VERSION_HEX >= 0x02050000
ssize_t const ssize_t_max = PY_SSIZE_T_MAX;
ssize_t const ssize_t_min = PY_SSIZE_T_MIN;
#else
ssize_t const ssize_t_max = INT_MAX;
ssize_t const ssize_t_min = INT_MIN;
#endif

Revised 25 September, 2006

© Copyright Ralf W. Grosse-Kunstleve 2006.