blob: bc901f6e81a675c2a775cd552193834a24471e87 [file] [log] [blame]
Guido van Rossuma3309961993-07-28 09:05:47 +00001#ifndef Py_CGENSUPPORT_H
2#define Py_CGENSUPPORT_H
3#ifdef __cplusplus
4extern "C" {
5#endif
6
Guido van Rossumf70e43a1991-02-19 12:39:46 +00007
Guido van Rossum85a5fbb1990-10-14 12:07:46 +00008/* Definitions used by cgen output */
9
Guido van Rossum1818b771997-04-29 15:35:28 +000010/* XXX This file is obsolete. It is *only* used by glmodule.c. */
11
Guido van Rossum85a5fbb1990-10-14 12:07:46 +000012typedef char *string;
13
Guido van Rossumcaa63801995-01-12 11:45:45 +000014#define mknewlongobject(x) PyInt_FromLong(x)
15#define mknewshortobject(x) PyInt_FromLong((long)x)
16#define mknewfloatobject(x) PyFloat_FromDouble(x)
17#define mknewcharobject(ch) Py_BuildValue("c", ch)
Guido van Rossum85a5fbb1990-10-14 12:07:46 +000018
Guido van Rossum1818b771997-04-29 15:35:28 +000019#define getichararg PyArg_GetChar
20#define getidoublearray PyArg_GetDoubleArray
21#define getifloatarg PyArg_GetFloat
22#define getifloatarray PyArg_GetFloatArray
23#define getilongarg PyArg_GetLong
24#define getilongarray PyArg_GetLongArray
25#define getilongarraysize PyArg_GetLongArraySize
26#define getiobjectarg PyArg_GetObject
27#define getishortarg PyArg_GetShort
28#define getishortarray PyArg_GetShortArray
29#define getishortarraysize PyArg_GetShortArraySize
30#define getistringarg PyArg_GetString
31
Tim Petersdbd9ba62000-07-09 03:09:57 +000032extern int PyArg_GetObject(PyObject *args, int nargs,
33 int i, PyObject **p_a);
34extern int PyArg_GetLong(PyObject *args, int nargs,
35 int i, long *p_a);
36extern int PyArg_GetShort(PyObject *args, int nargs,
37 int i, short *p_a);
38extern int PyArg_GetFloat(PyObject *args, int nargs,
39 int i, float *p_a);
40extern int PyArg_GetString(PyObject *args, int nargs,
41 int i, string *p_a);
42extern int PyArg_GetChar(PyObject *args, int nargs,
43 int i, char *p_a);
44extern int PyArg_GetLongArray(PyObject *args, int nargs,
45 int i, int n, long *p_a);
46extern int PyArg_GetShortArray(PyObject *args, int nargs,
47 int i, int n, short *p_a);
48extern int PyArg_GetDoubleArray(PyObject *args, int nargs,
49 int i, int n, double *p_a);
50extern int PyArg_GetFloatArray(PyObject *args, int nargs,
51 int i, int n, float *p_a);
52extern int PyArg_GetLongArraySize(PyObject *args, int nargs,
53 int i, long *p_a);
54extern int PyArg_GetShortArraySize(PyObject *args, int nargs,
55 int i, short *p_a);
56extern int PyArg_GetDoubleArraySize(PyObject *args, int nargs,
57 int i, double *p_a);
58extern int PyArg_GetFloatArraySize(PyObject *args, int nargs,
59 int i, float *p_a);
Guido van Rossuma3309961993-07-28 09:05:47 +000060
61#ifdef __cplusplus
62}
63#endif
64#endif /* !Py_CGENSUPPORT_H */