summaryrefslogtreecommitdiffstats
path: root/Include/intobject.h
diff options
context:
space:
mode:
authorChristian Heimes <christian@cheimes.de>2007-12-02 16:52:32 (GMT)
committerChristian Heimes <christian@cheimes.de>2007-12-02 16:52:32 (GMT)
commitf78b1c6573a7e4a30f799fd28acd414e5deb140d (patch)
treef9bd6ff9ecca07e3b9365cdb90de24bcfd813602 /Include/intobject.h
parent2137b6aa997209ac3529c439f82383de0219940d (diff)
downloadcpython-f78b1c6573a7e4a30f799fd28acd414e5deb140d.zip
cpython-f78b1c6573a7e4a30f799fd28acd414e5deb140d.tar.gz
cpython-f78b1c6573a7e4a30f799fd28acd414e5deb140d.tar.bz2
I've moved the remains of PyInt_ to the longobject.h header file and removed the inclusing of intobject.h from Python.h. Now the intobject.h exists only to provide some aliases for porters from Python 2.x.
Diffstat (limited to 'Include/intobject.h')
-rw-r--r--Include/intobject.h64
1 files changed, 18 insertions, 46 deletions
diff --git a/Include/intobject.h b/Include/intobject.h
index 09a522b..8385d34 100644
--- a/Include/intobject.h
+++ b/Include/intobject.h
@@ -1,18 +1,9 @@
+/* Integer object interface
-/* Integer object interface */
-
-/*
-PyIntObject represents a (long) integer. This is an immutable object;
-an integer cannot change its value after creation.
-
-There are functions to create new integer objects, to test an object
-for integer-ness, and to get the integer value. The latter functions
-returns -1 and sets errno to EBADF if the object is not an PyIntObject.
-None of the functions should be applied to nil objects.
-
-The type PyIntObject is (unfortunately) exposed here so we can declare
-_Py_TrueStruct and _Py_ZeroStruct in boolobject.h; don't use this.
-*/
+ This header files exists to make porting code to Python 3.0 easier. It
+ defines aliases from PyInt_* to PyLong_*. Only PyInt_GetMax() and
+ PyInt_CheckExact() remain in longobject.h.
+ */
#ifndef Py_INTOBJECT_H
#define Py_INTOBJECT_H
@@ -20,38 +11,19 @@ _Py_TrueStruct and _Py_ZeroStruct in boolobject.h; don't use this.
extern "C" {
#endif
-/*
-typedef struct {
- PyObject_HEAD
- long ob_ival;
-} PyIntObject;
-
-PyAPI_DATA(PyTypeObject) PyInt_Type;
-*/
-
-#define PyInt_CheckExact(op) (PyLong_CheckExact(op) && _PyLong_FitsInLong(op))
-
-#if 0
-# define PyInt_Check(op) PyLong_Check(op)
-# define PyInt_FromString PyLong_FromString
-# define PyInt_FromUnicode PyLong_FromUnicode
-# define PyInt_FromLong PyLong_FromLong
-# define PyInt_FromSize_t PyLong_FromSize_t
-# define PyInt_FromSsize_t PyLong_FromSsize_t
-# define PyInt_AsLong PyLong_AsLong
-# define PyInt_AsSsize_t PyLong_AsSsize_t
-# define PyInt_AsUnsignedLongMask PyLong_AsUnsignedLongMask
-# define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask
-# define PyInt_AS_LONG PyLong_AS_LONG
-#endif
-
-PyAPI_FUNC(long) PyInt_GetMax(void);
-
-/* These aren't really part of the Int object, but they're handy; the protos
- * are necessary for systems that need the magic of PyAPI_FUNC.
- */
-PyAPI_FUNC(unsigned long) PyOS_strtoul(char *, char **, int);
-PyAPI_FUNC(long) PyOS_strtol(char *, char **, int);
+#warning "DeprecationWarning: intobject.h is going to be removed in 3.1"
+
+#define PyInt_Check(op) PyLong_Check(op)
+#define PyInt_FromString PyLong_FromString
+#define PyInt_FromUnicode PyLong_FromUnicode
+#define PyInt_FromLong PyLong_FromLong
+#define PyInt_FromSize_t PyLong_FromSize_t
+#define PyInt_FromSsize_t PyLong_FromSsize_t
+#define PyInt_AsLong PyLong_AsLong
+#define PyInt_AsSsize_t PyLong_AsSsize_t
+#define PyInt_AsUnsignedLongMask PyLong_AsUnsignedLongMask
+#define PyInt_AsUnsignedLongLongMask PyLong_AsUnsignedLongLongMask
+#define PyInt_AS_LONG PyLong_AS_LONG
#ifdef __cplusplus
}