diff --git a/doc/v2/ssize_t.html b/doc/v2/ssize_t.html new file mode 100644 index 00000000..137f6d14 --- /dev/null +++ b/doc/v2/ssize_t.html @@ -0,0 +1,96 @@ + + + + + + + + + + + + Boost.Python - <boost/python/ssize_t.hpp> + + + + + + + + + +
+

C++ Boost

+
+

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.

+ + diff --git a/include/boost/python/ssize_t.hpp b/include/boost/python/ssize_t.hpp new file mode 100644 index 00000000..e8a2d92f --- /dev/null +++ b/include/boost/python/ssize_t.hpp @@ -0,0 +1,29 @@ +// Copyright Ralf W. Grosse-Kunstleve & David Abrahams 2006. +// Distributed under the Boost Software License, Version 1.0. (See +// accompanying file LICENSE_1_0.txt or copy at +// http://www.boost.org/LICENSE_1_0.txt) + +#ifndef BOOST_PYTHON_SSIZE_T_RWGK20060924_HPP +# define BOOST_PYTHON_SSIZE_T_RWGK20060924_HPP + +# include + +namespace boost { namespace python { + +#if PY_VERSION_HEX >= 0x02050000 + +typedef Py_ssize_t ssize_t; +ssize_t const ssize_t_max = PY_SSIZE_T_MAX; +ssize_t const ssize_t_min = PY_SSIZE_T_MIN; + +#else + +typedef int ssize_t; +ssize_t const ssize_t_max = INT_MAX; +ssize_t const ssize_t_min = INT_MIN; + +#endif + +}} // namespace boost::python + +#endif // BOOST_PYTHON_SSIZE_T_RWGK20060924_HPP