cpython/Include
Guido van Rossum 29e46a9a12 Mass checkin (more to follow for other directories).
Introduce truly separate (sub)interpreter objects.  For now, these
must be used by separate threads, created from C.  See Demo/pysvr for
an example of how to use this.  This also rationalizes Python's
initialization and finalization behavior:

Py_Initialize() -- initialize the whole interpreter
Py_Finalize() -- finalize the whole interpreter

tstate = Py_NewInterpreter() -- create a new (sub)interpreter
Py_EndInterpreter(tstate) -- delete a new (sub)interpreter

There are also new interfaces relating to threads and the interpreter
lock, which can be used to create new threads, and sometimes have to
be used to manipulate the interpreter lock when creating or deleting
sub-interpreters.  These are only defined when WITH_THREAD is defined:

PyEval_AcquireLock() -- acquire the interpreter lock
PyEval_ReleaseLock() -- release the interpreter lock

PyEval_AcquireThread(tstate) -- acquire the lock and make the thread current
PyEval_ReleaseThread(tstate) -- release the lock and make NULL current

Other administrative changes:

- The header file bltinmodule.h is deleted.

- The init functions for Import, Sys and Builtin are now internal and
  declared in pythonrun.h.

- Py_Setup() and Py_Cleanup() are no longer declared.

- The interpreter state and thread state structures are now linked
  together in a chain (the chain of interpreters is a static variable
  in pythonrun.c).

- Some members of the interpreter and thread structures have new,
  shorter, more consistent, names.

- Added declarations for _PyImport_{Find,Fixup}Extension() to import.h.
1997-08-02 02:56:48 +00:00
..
abstract.h A few comment alignment and clarifications. 1997-03-04 18:31:47 +00:00
assert.h New permission notice, includes CNRI. 1996-10-25 14:44:06 +00:00
bitset.h New permission notice, includes CNRI. 1996-10-25 14:44:06 +00:00
ceval.h Mass checkin (more to follow for other directories). 1997-08-02 02:56:48 +00:00
classobject.h Remove redundant references to thread stuff -- long, long ago, there 1997-03-14 04:25:22 +00:00
cobject.h Added PyCObject_Import. 1997-01-22 20:48:48 +00:00
compile.h Add co_firstlineno and co_lnotab, for the line number table generated 1997-01-24 03:41:09 +00:00
complexobject.h Add prototypes for c_sum() etc. 1996-08-19 22:04:54 +00:00
config.h all: 1994 copyright 1994-01-02 00:11:39 +00:00
cStringIO.h Got rid of the static decl of PyCObject_Import, which was a 1.4 1997-04-09 18:04:08 +00:00
dictobject.h Subsumed mappingobject.h in dictobject.h. 1997-05-13 21:23:32 +00:00
errcode.h New permission notice, includes CNRI. 1996-10-25 14:44:06 +00:00
eval.h New permission notice, includes CNRI. 1996-10-25 14:44:06 +00:00
fileobject.h flushline and writestring can now return an error 1997-05-22 22:23:46 +00:00
floatobject.h Add cast to PyFloat_AS_DOUBLE macro, as suggested by Marc Lemburg. 1997-08-02 02:40:58 +00:00
frameobject.h Massive changes for separate thread state management. 1997-05-05 20:56:21 +00:00
funcobject.h New permission notice, includes CNRI. 1996-10-25 14:44:06 +00:00
graminit.h Added assert grammar. 1997-04-02 05:24:08 +00:00
grammar.h New permission notice, includes CNRI. 1996-10-25 14:44:06 +00:00
import.h Mass checkin (more to follow for other directories). 1997-08-02 02:56:48 +00:00
intobject.h Add cast to PyInt_AS_LONG macro, as suggested by Marc Lemburg. 1997-08-02 02:41:13 +00:00
intrcheck.h New permission notice, includes CNRI. 1996-10-25 14:44:06 +00:00
listobject.h added PyList_GET_SIZE macro 1997-01-06 22:42:00 +00:00
longintrepr.h New permission notice, includes CNRI. 1996-10-25 14:44:06 +00:00
longobject.h Added PyLong_FromUnsignedLong() and PyLong_AsUnsignedLong(). 1997-01-03 17:14:46 +00:00
Makefile Added Makefile with clean and clobber targets 1994-01-04 23:24:22 +00:00
marshal.h New permission notice, includes CNRI. 1996-10-25 14:44:06 +00:00
metagrammar.h New permission notice, includes CNRI. 1996-10-25 14:44:06 +00:00
methodobject.h New permission notice, includes CNRI. 1996-10-25 14:44:06 +00:00
modsupport.h Added PyArg_ParseTupleAndKeywords() prototype. 1997-02-14 16:36:35 +00:00
moduleobject.h New permission notice, includes CNRI. 1996-10-25 14:44:06 +00:00
mymalloc.h Only add 1 byte to all malloc calls when it is known that malloc(0) or 1997-07-10 22:40:54 +00:00
mymath.h Workaround for bug in Metrowerks MSL headers on 68K Macs (Jack) 1997-05-20 15:58:15 +00:00
myproto.h Oops, rename2.h was included by some other headers. 1997-05-07 23:50:40 +00:00
myselect.h New permission notice, includes CNRI. 1996-10-25 14:44:06 +00:00
mytime.h New permission notice, includes CNRI. 1996-10-25 14:44:06 +00:00
node.h Rename DEBUG macro to Py_DEBUG 1996-12-30 16:17:54 +00:00
object.h Oops, another forgotten renaming: varobject -> PyVarObject. 1997-05-15 21:31:03 +00:00
objimpl.h Oops, another forgotten renaming: varobject -> PyVarObject. 1997-05-15 21:31:03 +00:00
opcode.h Get rid of obsolete ACCESS_MODE opcode. 1997-05-09 00:39:04 +00:00
osdefs.h djgpp support. 1997-02-14 16:36:08 +00:00
parsetok.h New permission notice, includes CNRI. 1996-10-25 14:44:06 +00:00
patchlevel.h Changed the patch level to 1.5a3, to avoid confusion with a2 (I'm not 1997-07-19 23:46:59 +00:00
pgenheaders.h New permission notice, includes CNRI. 1996-10-25 14:44:06 +00:00
pydebug.h Got rid of "suppres printing" flag. 1997-07-19 19:26:38 +00:00
pyerrors.h Added AssertionError. 1997-04-02 05:22:53 +00:00
pyfpe.h Change PyFPE_END_PROTECT to PyFPE_END_PROTECT(v). v should be the 1997-03-14 04:23:42 +00:00
pystate.h Mass checkin (more to follow for other directories). 1997-08-02 02:56:48 +00:00
Python.h Mass checkin (more to follow for other directories). 1997-08-02 02:56:48 +00:00
pythonrun.h Mass checkin (more to follow for other directories). 1997-08-02 02:56:48 +00:00
pythread.h Massive changes for separate thread state management. 1997-05-05 20:56:21 +00:00
rangeobject.h New permission notice, includes CNRI. 1996-10-25 14:44:06 +00:00
rename1.h __builtins__ mods (and sys_checkinterval for ceval.c) 1995-01-09 17:53:26 +00:00
rename2.h Oops, another forgotten renaming: varobject -> PyVarObject. 1997-05-15 21:31:03 +00:00
sliceobject.h Forget about Ellipses b/w compatibility. 1996-10-16 04:18:36 +00:00
stringobject.h Two speedup hacks. Caching the hash saves recalculation of a string's 1997-01-18 07:53:23 +00:00
structmember.h New permission notice, includes CNRI. 1996-10-25 14:44:06 +00:00
sysmodule.h Mass checkin (more to follow for other directories). 1997-08-02 02:56:48 +00:00
thread.h Massive changes for separate thread state management. 1997-05-05 20:56:21 +00:00
token.h New permission notice, includes CNRI. 1996-10-25 14:44:06 +00:00
traceback.h New permission notice, includes CNRI. 1996-10-25 14:44:06 +00:00
tupleobject.h added PyTuple_GET_SIZE macro 1997-01-06 22:44:27 +00:00