Mercurial > cpython-lru_cache-weakref
annotate Modules/puremodule.c @ 16798:258dcafe2d0b legacy-trunk
Gustavo Niemeyer <niemeyer@conectiva.com>:
Fixed recno support (keys are integers rather than strings).
Work around DB bug that cause stdin to be closed by rnopen() when the
DB file needed to exist but did not (no longer segfaults).
This closes SF tracker patch #403445.
Also wrapped some long lines and added whitespace around operators -- FLD.
| author | Fred Drake <fdrake@acm.org> |
|---|---|
| date | Tue, 27 Feb 2001 18:56:46 +0000 |
| parents | 5397fdf88ec2 |
| children | 40631ae74b17 |
| rev | line source |
|---|---|
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
1 /* This module exports the C API to such Pure Software Inc. (tm) (now |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
2 * called Pure Atria Corporation) products as Purify (tm) and Quantify |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
3 * (tm). Other packages could be added, but I didn't have those products |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
4 * and thus lack the API documentation. |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
5 * |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
6 * Currently supported: Quantify 2.x, Purify 3.x |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
7 * |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
8 * You need to decide which products you want to incorporate into the |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
9 * module when you compile this file. The way to do this is to edit |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
10 * <Python>/Modules/Setup to pass the appropriate flags to the compiler. |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
11 * -DWITH_PURIFY compiles in the Purify support, and -DWITH_QUANTIFY |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
12 * compiles in the Quantify support. -DWITH_ALL_PURE compiles in both. |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
13 * You can also build a Purify'd or Quantify'd interpreter by passing in |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
14 * the LINKCC variable to make. E.g. if you want to build a Purify'd |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
15 * interpreter and are using gcc, build Python with this command: |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
16 * |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
17 * make LINKCC='purify gcc' |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
18 * |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
19 * It would be nice (and probably easy) to provide this file as a shared |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
20 * library, however since it doesn't appear that Pure gives us shared |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
21 * libraries of the stubs, it doesn't really matter. For now, you have to |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
22 * link this file in statically. |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
23 * |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
24 * Major bogosity. The purify.h header file exports purify_exit(), but |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
25 * guess what? It is not defined in the libpurify_stubs.a file! I tried |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
26 * to fake one here, hoping the Pure linker would Do The Right Thing when |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
27 * instrumented for Purify, but it doesn't seem to, so I don't export |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
28 * purify_exit() to the Python layer. In Python you should raise a |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
29 * SystemExit exception anyway. |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
30 * |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
31 * The actual purify.h and quantify.h files which embody the APIs are |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
32 * copyrighted by Pure Software, Inc. and are only attainable through them. |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
33 * This module assumes you have legally installed licenses of their |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
34 * software. Contact them on the Web via <http://www.pureatria.com/> |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
35 * |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
36 * Author: Barry Warsaw <bwarsaw@python.org> |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
37 * <bwarsaw@cnri.reston.va.us> |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
38 */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
39 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
40 #include "Python.h" |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
41 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
42 #if defined(WITH_PURIFY) || defined(WITH_ALL_PURE) |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
43 # include <purify.h> |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
44 # define HAS_PURIFY_EXIT 0 /* See note at top of file */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
45 # define PURE_PURIFY_VERSION 3 /* not provided by purify.h */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
46 #endif |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
47 #if defined(WITH_QUANTIFY) || defined(WITH_ALL_PURE) |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
48 # include <quantify.h> |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
49 # define PURE_QUANTIFY_VERSION 2 /* not provided by quantify.h */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
50 #endif |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
51 #if defined(PURIFY_H) || defined(QUANTIFY_H) |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
52 # define COMMON_PURE_FUNCTIONS |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
53 #endif /* PURIFY_H || QUANTIFY_H */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
54 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
55 typedef int (*VoidArgFunc)(void); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
56 typedef int (*StringArgFunc)(char*); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
57 typedef int (*PrintfishFunc)(const char*, ...); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
58 typedef int (*StringIntArgFunc)(const char*, int); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
59 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
60 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
61 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
62 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
63 call_voidarg_function(VoidArgFunc func, PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
64 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
65 int status; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
66 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
67 if (!PyArg_ParseTuple(args, "")) |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
68 return NULL; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
69 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
70 status = func(); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
71 return Py_BuildValue("i", status); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
72 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
73 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
74 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
75 call_stringarg_function(StringArgFunc func, PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
76 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
77 int status; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
78 char* stringarg; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
79 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
80 if (!PyArg_ParseTuple(args, "s", &stringarg)) |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
81 return NULL; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
82 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
83 status = func(stringarg); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
84 return Py_BuildValue("i", status); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
85 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
86 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
87 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
88 call_stringorint_function(StringArgFunc func, PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
89 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
90 int status; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
91 int intarg; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
92 char* stringarg; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
93 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
94 /* according to the quantify.h file, the argument to |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
95 * quantify_*_recording_system_call can be an integer or a string, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
96 * but the functions are prototyped as taking a single char* |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
97 * argument. Yikes! |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
98 */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
99 if (PyArg_ParseTuple(args, "i", &intarg)) |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
100 /* func is prototyped as int(*)(char*) |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
101 * better shut up the compiler |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
102 */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
103 status = func((char*)intarg); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
104 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
105 else { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
106 PyErr_Clear(); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
107 if (!PyArg_ParseTuple(args, "s", &stringarg)) |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
108 return NULL; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
109 else |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
110 status = func(stringarg); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
111 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
112 return Py_BuildValue("i", status); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
113 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
114 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
115 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
116 call_printfish_function(PrintfishFunc func, PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
117 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
118 /* we support the printf() style vararg functions by requiring the |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
119 * formatting be done in Python. At the C level we pass just a string |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
120 * to the printf() style function. |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
121 */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
122 int status; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
123 char* argstring; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
124 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
125 if (!PyArg_ParseTuple(args, "s", &argstring)) |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
126 return NULL; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
127 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
128 status = func("%s", argstring); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
129 return Py_BuildValue("i", status); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
130 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
131 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
132 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
133 call_intasaddr_function(StringArgFunc func, PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
134 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
135 long memrep; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
136 int id; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
137 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
138 if (!PyArg_ParseTuple(args, "l", &memrep)) |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
139 return NULL; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
140 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
141 id = func((char*)memrep); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
142 return Py_BuildValue("i", id); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
143 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
144 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
145 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
146 call_stringandint_function(StringIntArgFunc func, PyObject *self, |
|
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
147 PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
148 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
149 long srcrep; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
150 int size; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
151 int status; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
152 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
153 if (!PyArg_ParseTuple(args, "li", &srcrep, &size)) |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
154 return NULL; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
155 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
156 status = func((char*)srcrep, size); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
157 return Py_BuildValue("i", status); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
158 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
159 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
160 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
161 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
162 /* functions common to all products |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
163 * |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
164 * N.B. These printf() style functions are a bit of a kludge. Since the |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
165 * API doesn't provide vprintf versions of them, we can't call them |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
166 * directly. They don't support all the standard printf % modifiers |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
167 * anyway. The way to use these is to use Python's % string operator to do |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
168 * the formatting. By the time these functions get the thing to print, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
169 * it's already a string, and they just use "%s" as the format string. |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
170 */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
171 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
172 #ifdef COMMON_PURE_FUNCTIONS |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
173 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
174 static PyObject* |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
175 pure_pure_logfile_printf(PyObject* self, PyObject* args) |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
176 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
177 return call_printfish_function(pure_logfile_printf, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
178 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
179 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
180 static PyObject* |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
181 pure_pure_printf(PyObject* self, PyObject* args) |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
182 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
183 return call_printfish_function(pure_printf, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
184 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
185 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
186 static PyObject* |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
187 pure_pure_printf_with_banner(PyObject* self, PyObject* args) |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
188 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
189 return call_printfish_function(pure_printf_with_banner, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
190 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
191 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
192 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
193 #endif /* COMMON_PURE_FUNCTIONS */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
194 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
195 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
196 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
197 /* Purify functions |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
198 * |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
199 * N.B. There are some interfaces described in the purify.h file that are |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
200 * not described in the manual. |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
201 * |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
202 * Unsigned longs purify_report_{address,number,type,result} are not |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
203 * accessible from the Python layer since they seem mostly useful when |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
204 * purify_stop_here() is called by the (C) debugger. The same is true of |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
205 * the purify_stop_here_internal() function so it isn't exported either. |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
206 * And purify_stop_here() should never be called directly. |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
207 * |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
208 * The header file says purify_{new,all,clear_new}_reports() are obsolete |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
209 * so they aren't exported. |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
210 * |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
211 * None of the custom dynamic loader functions are exported. |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
212 * |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
213 * purify_unsafe_memcpy() isn't exported. |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
214 * |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
215 * purify_{start,size}_of_block() aren't exported. |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
216 * |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
217 * The manual that I have says that the prototype for the second argument |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
218 * to purify_map_pool is: |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
219 * |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
220 * void (*fn)(char*) |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
221 * |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
222 * but the purify.h file declares it as: |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
223 * |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
224 * void (*fn)(char*, int, void*) |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
225 * |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
226 * and does not explain what the other arguments are for. I support the |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
227 * latter but I don't know if I do it right or usefully. |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
228 * |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
229 * The header file says that purify_describe() returns a char* which is the |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
230 * pointer passed to it. The manual says it returns an int, but I believe |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
231 * that is a typo. |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
232 */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
233 #ifdef PURIFY_H |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
234 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
235 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
236 pure_purify_all_inuse(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
237 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
238 return call_voidarg_function(purify_all_inuse, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
239 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
240 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
241 pure_purify_all_leaks(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
242 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
243 return call_voidarg_function(purify_all_leaks, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
244 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
245 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
246 pure_purify_new_inuse(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
247 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
248 return call_voidarg_function(purify_new_inuse, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
249 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
250 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
251 pure_purify_new_leaks(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
252 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
253 return call_voidarg_function(purify_new_leaks, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
254 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
255 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
256 pure_purify_clear_inuse(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
257 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
258 return call_voidarg_function(purify_clear_inuse, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
259 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
260 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
261 pure_purify_clear_leaks(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
262 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
263 return call_voidarg_function(purify_clear_leaks, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
264 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
265 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
266 pure_purify_all_fds_inuse(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
267 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
268 return call_voidarg_function(purify_all_fds_inuse, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
269 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
270 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
271 pure_purify_new_fds_inuse(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
272 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
273 return call_voidarg_function(purify_new_fds_inuse, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
274 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
275 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
276 pure_purify_printf_with_call_chain(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
277 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
278 return call_printfish_function(purify_printf_with_call_chain, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
279 self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
280 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
281 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
282 pure_purify_set_pool_id(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
283 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
284 long memrep; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
285 int id; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
286 |
|
11882
dc65c5f6ad7c
Massive patch by Skip Montanaro to add ":name" to as many
Guido van Rossum <guido@python.org>
parents:
4981
diff
changeset
|
287 if (!PyArg_ParseTuple(args, "li:purify_set_pool_id", &memrep, &id)) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
288 return NULL; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
289 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
290 purify_set_pool_id((char*)memrep, id); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
291 Py_INCREF(Py_None); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
292 return Py_None; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
293 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
294 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
295 pure_purify_get_pool_id(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
296 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
297 return call_intasaddr_function(purify_get_pool_id, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
298 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
299 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
300 pure_purify_set_user_data(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
301 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
302 long memrep; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
303 long datarep; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
304 |
|
11882
dc65c5f6ad7c
Massive patch by Skip Montanaro to add ":name" to as many
Guido van Rossum <guido@python.org>
parents:
4981
diff
changeset
|
305 if (!PyArg_ParseTuple(args, "ll:purify_set_user_data", &memrep, &datarep)) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
306 return NULL; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
307 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
308 purify_set_user_data((char*)memrep, (void*)datarep); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
309 Py_INCREF(Py_None); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
310 return Py_None; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
311 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
312 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
313 pure_purify_get_user_data(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
314 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
315 /* can't use call_intasaddr_function() since purify_get_user_data() |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
316 * returns a void* |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
317 */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
318 long memrep; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
319 void* data; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
320 |
|
11882
dc65c5f6ad7c
Massive patch by Skip Montanaro to add ":name" to as many
Guido van Rossum <guido@python.org>
parents:
4981
diff
changeset
|
321 if (!PyArg_ParseTuple(args, "l:purify_get_user_data", &memrep)) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
322 return NULL; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
323 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
324 data = purify_get_user_data((char*)memrep); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
325 return Py_BuildValue("l", (long)data); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
326 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
327 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
328 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
329 /* this global variable is shared by both mapping functions: |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
330 * pure_purify_map_pool() and pure_purify_map_pool_id(). Since they cache |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
331 * this variable it should be safe in the face of recursion or cross |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
332 * calling. |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
333 * |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
334 * Further note that the prototype for the callback function is wrong in |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
335 * the Purify manual. The manual says the function takes a single char*, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
336 * but the header file says it takes an additional int and void*. I have |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
337 * no idea what these are for! |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
338 */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
339 static PyObject* MapCallable = NULL; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
340 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
341 static void |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
342 map_pool_callback(char* mem, int user_size, void *user_aux_data) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
343 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
344 long memrep = (long)mem; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
345 long user_aux_data_rep = (long)user_aux_data; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
346 PyObject* result; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
347 PyObject* memobj = Py_BuildValue("lil", memrep, user_size, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
348 user_aux_data_rep); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
349 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
350 if (memobj == NULL) |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
351 return; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
352 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
353 result = PyEval_CallObject(MapCallable, memobj); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
354 Py_DECREF(result); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
355 Py_DECREF(memobj); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
356 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
357 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
358 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
359 pure_purify_map_pool(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
360 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
361 /* cache global variable in case of recursion */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
362 PyObject* saved_callable = MapCallable; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
363 PyObject* arg_callable; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
364 int id; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
365 |
|
11882
dc65c5f6ad7c
Massive patch by Skip Montanaro to add ":name" to as many
Guido van Rossum <guido@python.org>
parents:
4981
diff
changeset
|
366 if (!PyArg_ParseTuple(args, "iO:purify_map_pool", &id, &arg_callable)) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
367 return NULL; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
368 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
369 if (!PyCallable_Check(arg_callable)) { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
370 PyErr_SetString(PyExc_TypeError, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
371 "Second argument must be callable"); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
372 return NULL; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
373 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
374 MapCallable = arg_callable; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
375 purify_map_pool(id, map_pool_callback); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
376 MapCallable = saved_callable; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
377 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
378 Py_INCREF(Py_None); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
379 return Py_None; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
380 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
381 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
382 static void |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
383 PurifyMapPoolIdCallback(int id) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
384 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
385 PyObject* result; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
386 PyObject* intobj = Py_BuildValue("i", id); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
387 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
388 if (intobj == NULL) |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
389 return; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
390 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
391 result = PyEval_CallObject(MapCallable, intobj); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
392 Py_DECREF(result); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
393 Py_DECREF(intobj); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
394 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
395 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
396 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
397 pure_purify_map_pool_id(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
398 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
399 /* cache global variable in case of recursion */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
400 PyObject* saved_callable = MapCallable; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
401 PyObject* arg_callable; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
402 |
|
11882
dc65c5f6ad7c
Massive patch by Skip Montanaro to add ":name" to as many
Guido van Rossum <guido@python.org>
parents:
4981
diff
changeset
|
403 if (!PyArg_ParseTuple(args, "O:purify_map_pool_id", &arg_callable)) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
404 return NULL; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
405 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
406 if (!PyCallable_Check(arg_callable)) { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
407 PyErr_SetString(PyExc_TypeError, "Argument must be callable."); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
408 return NULL; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
409 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
410 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
411 MapCallable = arg_callable; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
412 purify_map_pool_id(PurifyMapPoolIdCallback); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
413 MapCallable = saved_callable; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
414 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
415 Py_INCREF(Py_None); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
416 return Py_None; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
417 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
418 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
419 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
420 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
421 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
422 pure_purify_new_messages(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
423 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
424 return call_voidarg_function(purify_new_messages, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
425 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
426 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
427 pure_purify_all_messages(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
428 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
429 return call_voidarg_function(purify_all_messages, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
430 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
431 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
432 pure_purify_clear_messages(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
433 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
434 return call_voidarg_function(purify_clear_messages, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
435 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
436 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
437 pure_purify_clear_new_messages(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
438 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
439 return call_voidarg_function(purify_clear_new_messages, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
440 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
441 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
442 pure_purify_start_batch(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
443 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
444 return call_voidarg_function(purify_start_batch, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
445 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
446 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
447 pure_purify_start_batch_show_first(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
448 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
449 return call_voidarg_function(purify_start_batch_show_first, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
450 self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
451 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
452 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
453 pure_purify_stop_batch(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
454 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
455 return call_voidarg_function(purify_stop_batch, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
456 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
457 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
458 pure_purify_name_thread(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
459 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
460 /* can't strictly use call_stringarg_function since |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
461 * purify_name_thread takes a const char*, not a char* |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
462 */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
463 int status; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
464 char* stringarg; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
465 |
|
11882
dc65c5f6ad7c
Massive patch by Skip Montanaro to add ":name" to as many
Guido van Rossum <guido@python.org>
parents:
4981
diff
changeset
|
466 if (!PyArg_ParseTuple(args, "s:purify_name_thread", &stringarg)) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
467 return NULL; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
468 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
469 status = purify_name_thread(stringarg); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
470 return Py_BuildValue("i", status); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
471 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
472 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
473 pure_purify_watch(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
474 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
475 return call_intasaddr_function(purify_watch, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
476 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
477 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
478 pure_purify_watch_1(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
479 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
480 return call_intasaddr_function(purify_watch_1, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
481 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
482 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
483 pure_purify_watch_2(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
484 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
485 return call_intasaddr_function(purify_watch_2, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
486 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
487 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
488 pure_purify_watch_4(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
489 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
490 return call_intasaddr_function(purify_watch_4, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
491 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
492 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
493 pure_purify_watch_8(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
494 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
495 return call_intasaddr_function(purify_watch_8, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
496 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
497 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
498 pure_purify_watch_w_1(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
499 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
500 return call_intasaddr_function(purify_watch_w_1, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
501 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
502 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
503 pure_purify_watch_w_2(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
504 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
505 return call_intasaddr_function(purify_watch_w_2, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
506 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
507 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
508 pure_purify_watch_w_4(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
509 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
510 return call_intasaddr_function(purify_watch_w_4, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
511 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
512 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
513 pure_purify_watch_w_8(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
514 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
515 return call_intasaddr_function(purify_watch_w_8, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
516 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
517 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
518 pure_purify_watch_r_1(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
519 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
520 return call_intasaddr_function(purify_watch_r_1, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
521 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
522 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
523 pure_purify_watch_r_2(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
524 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
525 return call_intasaddr_function(purify_watch_r_2, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
526 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
527 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
528 pure_purify_watch_r_4(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
529 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
530 return call_intasaddr_function(purify_watch_r_4, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
531 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
532 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
533 pure_purify_watch_r_8(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
534 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
535 return call_intasaddr_function(purify_watch_r_8, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
536 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
537 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
538 pure_purify_watch_rw_1(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
539 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
540 return call_intasaddr_function(purify_watch_rw_1, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
541 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
542 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
543 pure_purify_watch_rw_2(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
544 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
545 return call_intasaddr_function(purify_watch_rw_2, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
546 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
547 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
548 pure_purify_watch_rw_4(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
549 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
550 return call_intasaddr_function(purify_watch_rw_4, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
551 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
552 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
553 pure_purify_watch_rw_8(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
554 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
555 return call_intasaddr_function(purify_watch_rw_8, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
556 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
557 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
558 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
559 pure_purify_watch_n(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
560 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
561 long addrrep; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
562 unsigned int size; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
563 char* type; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
564 int status; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
565 |
|
11882
dc65c5f6ad7c
Massive patch by Skip Montanaro to add ":name" to as many
Guido van Rossum <guido@python.org>
parents:
4981
diff
changeset
|
566 if (!PyArg_ParseTuple(args, "lis:purify_watch_n", &addrrep, &size, &type)) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
567 return NULL; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
568 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
569 status = purify_watch_n((char*)addrrep, size, type); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
570 return Py_BuildValue("i", status); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
571 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
572 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
573 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
574 pure_purify_watch_info(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
575 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
576 return call_voidarg_function(purify_watch_info, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
577 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
578 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
579 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
580 pure_purify_watch_remove(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
581 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
582 int watchno; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
583 int status; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
584 |
|
11882
dc65c5f6ad7c
Massive patch by Skip Montanaro to add ":name" to as many
Guido van Rossum <guido@python.org>
parents:
4981
diff
changeset
|
585 if (!PyArg_ParseTuple(args, "i:purify_watch_remove", &watchno)) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
586 return NULL; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
587 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
588 status = purify_watch_remove(watchno); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
589 return Py_BuildValue("i", status); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
590 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
591 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
592 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
593 pure_purify_watch_remove_all(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
594 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
595 return call_voidarg_function(purify_watch_remove_all, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
596 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
597 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
598 pure_purify_describe(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
599 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
600 long addrrep; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
601 char* rtn; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
602 |
|
11882
dc65c5f6ad7c
Massive patch by Skip Montanaro to add ":name" to as many
Guido van Rossum <guido@python.org>
parents:
4981
diff
changeset
|
603 if (!PyArg_ParseTuple(args, "l:purify_describe", &addrrep)) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
604 return NULL; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
605 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
606 rtn = purify_describe((char*)addrrep); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
607 return Py_BuildValue("l", (long)rtn); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
608 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
609 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
610 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
611 pure_purify_what_colors(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
612 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
613 long addrrep; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
614 unsigned int size; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
615 int status; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
616 |
|
11882
dc65c5f6ad7c
Massive patch by Skip Montanaro to add ":name" to as many
Guido van Rossum <guido@python.org>
parents:
4981
diff
changeset
|
617 if (!PyArg_ParseTuple(args, "li:purify_what_colors", &addrrep, &size)) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
618 return NULL; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
619 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
620 status = purify_what_colors((char*)addrrep, size); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
621 return Py_BuildValue("i", status); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
622 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
623 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
624 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
625 pure_purify_is_running(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
626 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
627 return call_voidarg_function(purify_is_running, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
628 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
629 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
630 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
631 pure_purify_assert_is_readable(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
632 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
633 return call_stringandint_function(purify_assert_is_readable, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
634 self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
635 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
636 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
637 pure_purify_assert_is_writable(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
638 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
639 return call_stringandint_function(purify_assert_is_writable, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
640 self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
641 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
642 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
643 #if HAS_PURIFY_EXIT |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
644 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
645 /* I wish I could include this, but I can't. See the notes at the top of |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
646 * the file. |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
647 */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
648 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
649 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
650 pure_purify_exit(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
651 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
652 int status; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
653 |
|
11882
dc65c5f6ad7c
Massive patch by Skip Montanaro to add ":name" to as many
Guido van Rossum <guido@python.org>
parents:
4981
diff
changeset
|
654 if (!PyArg_ParseTuple(args, "i:purify_exit", &status)) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
655 return NULL; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
656 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
657 /* purify_exit doesn't always act like exit(). See the manual */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
658 purify_exit(status); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
659 Py_INCREF(Py_None); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
660 return Py_None; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
661 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
662 #endif /* HAS_PURIFY_EXIT */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
663 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
664 #endif /* PURIFY_H */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
665 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
666 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
667 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
668 /* Quantify functions |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
669 * |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
670 * N.B. Some of these functions are only described in the quantify.h file, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
671 * not in the version of the hardcopy manual that I had. If you're not |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
672 * sure what some of these do, check the header file, it is documented |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
673 * fairly well. |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
674 * |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
675 * None of the custom dynamic loader functions are exported. |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
676 * |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
677 */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
678 #ifdef QUANTIFY_H |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
679 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
680 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
681 pure_quantify_is_running(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
682 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
683 return call_voidarg_function(quantify_is_running, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
684 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
685 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
686 pure_quantify_help(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
687 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
688 return call_voidarg_function(quantify_help, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
689 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
690 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
691 pure_quantify_print_recording_state(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
692 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
693 return call_voidarg_function(quantify_print_recording_state, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
694 self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
695 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
696 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
697 pure_quantify_start_recording_data(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
698 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
699 return call_voidarg_function(quantify_start_recording_data, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
700 self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
701 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
702 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
703 pure_quantify_stop_recording_data(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
704 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
705 return call_voidarg_function(quantify_stop_recording_data, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
706 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
707 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
708 pure_quantify_is_recording_data(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
709 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
710 return call_voidarg_function(quantify_is_recording_data, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
711 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
712 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
713 pure_quantify_start_recording_system_calls(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
714 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
715 return call_voidarg_function(quantify_start_recording_system_calls, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
716 self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
717 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
718 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
719 pure_quantify_stop_recording_system_calls(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
720 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
721 return call_voidarg_function(quantify_stop_recording_system_calls, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
722 self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
723 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
724 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
725 pure_quantify_is_recording_system_calls(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
726 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
727 return call_voidarg_function(quantify_is_recording_system_calls, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
728 self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
729 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
730 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
731 pure_quantify_start_recording_system_call(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
732 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
733 return call_stringorint_function(quantify_start_recording_system_call, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
734 self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
735 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
736 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
737 pure_quantify_stop_recording_system_call(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
738 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
739 return call_stringorint_function(quantify_stop_recording_system_call, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
740 self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
741 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
742 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
743 pure_quantify_is_recording_system_call(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
744 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
745 return call_stringorint_function(quantify_is_recording_system_call, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
746 self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
747 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
748 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
749 pure_quantify_start_recording_dynamic_library_data(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
750 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
751 return call_voidarg_function( |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
752 quantify_start_recording_dynamic_library_data, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
753 self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
754 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
755 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
756 pure_quantify_stop_recording_dynamic_library_data(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
757 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
758 return call_voidarg_function( |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
759 quantify_stop_recording_dynamic_library_data, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
760 self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
761 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
762 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
763 pure_quantify_is_recording_dynamic_library_data(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
764 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
765 return call_voidarg_function( |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
766 quantify_is_recording_dynamic_library_data, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
767 self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
768 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
769 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
770 pure_quantify_start_recording_register_window_traps(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
771 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
772 return call_voidarg_function( |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
773 quantify_start_recording_register_window_traps, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
774 self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
775 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
776 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
777 pure_quantify_stop_recording_register_window_traps(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
778 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
779 return call_voidarg_function( |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
780 quantify_stop_recording_register_window_traps, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
781 self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
782 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
783 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
784 pure_quantify_is_recording_register_window_traps(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
785 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
786 return call_voidarg_function( |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
787 quantify_is_recording_register_window_traps, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
788 self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
789 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
790 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
791 pure_quantify_disable_recording_data(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
792 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
793 return call_voidarg_function(quantify_disable_recording_data, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
794 self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
795 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
796 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
797 pure_quantify_clear_data(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
798 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
799 return call_voidarg_function(quantify_clear_data, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
800 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
801 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
802 pure_quantify_save_data(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
803 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
804 return call_voidarg_function(quantify_save_data, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
805 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
806 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
807 pure_quantify_save_data_to_file(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
808 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
809 return call_stringarg_function(quantify_save_data_to_file, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
810 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
811 static PyObject* |
|
14058
f69a372409fc
ANSI-fy function headers. Not much more can be done since I don't
Barry Warsaw <barry@python.org>
parents:
11882
diff
changeset
|
812 pure_quantify_add_annotation(PyObject *self, PyObject *args) |
|
4981
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
813 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
814 return call_stringarg_function(quantify_add_annotation, self, args); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
815 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
816 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
817 #endif /* QUANTIFY_H */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
818 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
819 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
820 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
821 /* external interface |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
822 */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
823 static struct PyMethodDef |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
824 pure_methods[] = { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
825 #ifdef COMMON_PURE_FUNCTIONS |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
826 {"pure_logfile_printf", pure_pure_logfile_printf, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
827 {"pure_printf", pure_pure_printf, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
828 {"pure_printf_with_banner", pure_pure_printf_with_banner, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
829 #endif /* COMMON_PURE_FUNCTIONS */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
830 #ifdef PURIFY_H |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
831 {"purify_all_inuse", pure_purify_all_inuse, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
832 {"purify_all_leaks", pure_purify_all_leaks, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
833 {"purify_new_inuse", pure_purify_new_inuse, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
834 {"purify_new_leaks", pure_purify_new_leaks, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
835 {"purify_clear_inuse", pure_purify_clear_inuse, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
836 {"purify_clear_leaks", pure_purify_clear_leaks, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
837 {"purify_all_fds_inuse", pure_purify_all_fds_inuse, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
838 {"purify_new_fds_inuse", pure_purify_new_fds_inuse, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
839 /* see purify.h */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
840 {"purify_logfile_printf", pure_pure_logfile_printf, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
841 {"purify_printf", pure_pure_printf, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
842 {"purify_printf_with_banner", pure_pure_printf_with_banner, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
843 /**/ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
844 {"purify_printf_with_call_chain", pure_purify_printf_with_call_chain, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
845 {"purify_set_pool_id", pure_purify_set_pool_id, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
846 {"purify_get_pool_id", pure_purify_get_pool_id, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
847 {"purify_set_user_data", pure_purify_set_user_data, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
848 {"purify_get_user_data", pure_purify_get_user_data, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
849 {"purify_map_pool", pure_purify_map_pool, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
850 {"purify_map_pool_id", pure_purify_map_pool_id, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
851 {"purify_new_messages", pure_purify_new_messages, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
852 {"purify_all_messages", pure_purify_all_messages, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
853 {"purify_clear_messages", pure_purify_clear_messages, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
854 {"purify_clear_new_messages", pure_purify_clear_new_messages, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
855 {"purify_start_batch", pure_purify_start_batch, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
856 {"purify_start_batch_show_first", pure_purify_start_batch_show_first, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
857 {"purify_stop_batch", pure_purify_stop_batch, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
858 {"purify_name_thread", pure_purify_name_thread, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
859 {"purify_watch", pure_purify_watch, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
860 {"purify_watch_1", pure_purify_watch_1, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
861 {"purify_watch_2", pure_purify_watch_2, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
862 {"purify_watch_4", pure_purify_watch_4, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
863 {"purify_watch_8", pure_purify_watch_8, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
864 {"purify_watch_w_1", pure_purify_watch_w_1, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
865 {"purify_watch_w_2", pure_purify_watch_w_2, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
866 {"purify_watch_w_4", pure_purify_watch_w_4, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
867 {"purify_watch_w_8", pure_purify_watch_w_8, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
868 {"purify_watch_r_1", pure_purify_watch_r_1, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
869 {"purify_watch_r_2", pure_purify_watch_r_2, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
870 {"purify_watch_r_4", pure_purify_watch_r_4, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
871 {"purify_watch_r_8", pure_purify_watch_r_8, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
872 {"purify_watch_rw_1", pure_purify_watch_rw_1, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
873 {"purify_watch_rw_2", pure_purify_watch_rw_2, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
874 {"purify_watch_rw_4", pure_purify_watch_rw_4, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
875 {"purify_watch_rw_8", pure_purify_watch_rw_8, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
876 {"purify_watch_n", pure_purify_watch_n, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
877 {"purify_watch_info", pure_purify_watch_info, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
878 {"purify_watch_remove", pure_purify_watch_remove, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
879 {"purify_watch_remove_all", pure_purify_watch_remove_all, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
880 {"purify_describe", pure_purify_describe, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
881 {"purify_what_colors", pure_purify_what_colors, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
882 {"purify_is_running", pure_purify_is_running, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
883 {"purify_assert_is_readable", pure_purify_assert_is_readable, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
884 {"purify_assert_is_writable", pure_purify_assert_is_writable, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
885 #if HAS_PURIFY_EXIT |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
886 /* I wish I could include this, but I can't. See the notes at the |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
887 * top of the file. |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
888 */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
889 {"purify_exit", pure_purify_exit, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
890 #endif /* HAS_PURIFY_EXIT */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
891 #endif /* PURIFY_H */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
892 #ifdef QUANTIFY_H |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
893 {"quantify_is_running", pure_quantify_is_running, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
894 {"quantify_help", pure_quantify_help, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
895 {"quantify_print_recording_state", pure_quantify_print_recording_state, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
896 {"quantify_start_recording_data", pure_quantify_start_recording_data, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
897 {"quantify_stop_recording_data", pure_quantify_stop_recording_data, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
898 {"quantify_is_recording_data", pure_quantify_is_recording_data, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
899 {"quantify_start_recording_system_calls", |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
900 pure_quantify_start_recording_system_calls, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
901 {"quantify_stop_recording_system_calls", |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
902 pure_quantify_stop_recording_system_calls, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
903 {"quantify_is_recording_system_calls", |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
904 pure_quantify_is_recording_system_calls, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
905 {"quantify_start_recording_system_call", |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
906 pure_quantify_start_recording_system_call, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
907 {"quantify_stop_recording_system_call", |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
908 pure_quantify_stop_recording_system_call, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
909 {"quantify_is_recording_system_call", |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
910 pure_quantify_is_recording_system_call, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
911 {"quantify_start_recording_dynamic_library_data", |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
912 pure_quantify_start_recording_dynamic_library_data, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
913 {"quantify_stop_recording_dynamic_library_data", |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
914 pure_quantify_stop_recording_dynamic_library_data, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
915 {"quantify_is_recording_dynamic_library_data", |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
916 pure_quantify_is_recording_dynamic_library_data, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
917 {"quantify_start_recording_register_window_traps", |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
918 pure_quantify_start_recording_register_window_traps, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
919 {"quantify_stop_recording_register_window_traps", |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
920 pure_quantify_stop_recording_register_window_traps, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
921 {"quantify_is_recording_register_window_traps", |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
922 pure_quantify_is_recording_register_window_traps, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
923 {"quantify_disable_recording_data", |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
924 pure_quantify_disable_recording_data, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
925 {"quantify_clear_data", pure_quantify_clear_data, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
926 {"quantify_save_data", pure_quantify_save_data, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
927 {"quantify_save_data_to_file", pure_quantify_save_data_to_file, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
928 {"quantify_add_annotation", pure_quantify_add_annotation, 1}, |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
929 #endif /* QUANTIFY_H */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
930 {NULL, NULL} /* sentinel */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
931 }; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
932 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
933 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
934 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
935 static void |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
936 ins(d, name, val) |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
937 PyObject *d; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
938 char* name; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
939 long val; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
940 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
941 PyObject *v = PyInt_FromLong(val); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
942 if (v) { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
943 (void)PyDict_SetItemString(d, name, v); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
944 Py_DECREF(v); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
945 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
946 } |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
947 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
948 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
949 void |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
950 initpure() |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
951 { |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
952 PyObject *m, *d; |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
953 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
954 m = Py_InitModule("pure", pure_methods); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
955 d = PyModule_GetDict(m); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
956 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
957 /* this is bogus because we should be able to find this information |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
958 * out from the header files. Pure's current versions don't |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
959 * include this information! |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
960 */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
961 #ifdef PURE_PURIFY_VERSION |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
962 ins(d, "PURIFY_VERSION", PURE_PURIFY_VERSION); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
963 #else |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
964 PyDict_SetItemString(d, "PURIFY_VERSION", Py_None); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
965 #endif |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
966 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
967 /* these aren't terribly useful because purify_exit() isn't |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
968 * exported correctly. See the note at the top of the file. |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
969 */ |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
970 #ifdef PURIFY_EXIT_ERRORS |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
971 ins(d, "PURIFY_EXIT_ERRORS", PURIFY_EXIT_ERRORS); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
972 #endif |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
973 #ifdef PURIFY_EXIT_LEAKS |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
974 ins(d, "PURIFY_EXIT_LEAKS", PURIFY_EXIT_LEAKS); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
975 #endif |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
976 #ifdef PURIFY_EXIT_PLEAKS |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
977 ins(d, "PURIFY_EXIT_PLEAKS", PURIFY_EXIT_PLEAKS); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
978 #endif |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
979 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
980 |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
981 #ifdef PURE_QUANTIFY_VERSION |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
982 ins(d, "QUANTIFY_VERSION", PURE_QUANTIFY_VERSION); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
983 #else |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
984 PyDict_SetItemString(d, "QUANTIFY_VERSION", Py_None); |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
985 #endif |
|
994376af9064
(puremodule.c): New module which exports the Purify and Quantify C API
Barry Warsaw <barry@python.org>
parents:
diff
changeset
|
986 } |
