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
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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 }