Commit Graph

228 Commits

Author SHA1 Message Date
Fred Drake 8f6df46d40 Strengthen the constraints on calling PyObject_GC_Fini(). 2001-03-23 17:42:09 +00:00
Fred Drake e28d8aef2d Be more clear about the specific rules for supporting the cyclic GC in an
extension object.  Also included an example showing exactly what needs to
be done and nothing else.

This closes SF bug #228591.
2001-03-22 16:30:17 +00:00
Fred Drake c392b570db Integrated an expanded version of some text from Neil Schemenauer about
supporting cyclic garbage collection.  (This is not all of it, but I'm
taking a break!)

Also fixed some markup nits.
2001-03-21 22:15:01 +00:00
Fred Drake 83e01bf6c8 Finally fill in the documentation for the PyDict_Next() function. It is
different enough to actually require an explanation.  ;-)

Fix a couple of PyDictObject* types that should be PyObject* types.
2001-03-16 15:41:29 +00:00
Guido van Rossum 1874c8f23b Document PyErr_WarnExplicit(). 2001-02-28 23:46:44 +00:00
Fred Drake a05460c148 PyTuple_*() functions take PyObject* parameters, not PyTupleObject* values.
This closes SF bug #131304.
2001-02-12 17:38:18 +00:00
Fred Drake f0e08ef9cb Remove an now-false statement about there being only one type flag
defined.
2001-02-03 01:11:26 +00:00
Fred Drake 5838d0fc84 Document the PyInstance_*() functions and data. 2001-01-28 06:39:35 +00:00
Fred Drake 5566c1ce36 Fixed a bunch of typos caught by Gilles Civario. 2001-01-19 22:48:33 +00:00
Marc-André Lemburg a544ea2354 Undoing the whitespace patches which sneaked into the earlier patch. 2001-01-17 18:04:31 +00:00
Marc-André Lemburg ad7c98e264 This patch adds a new builtin unistr() which behaves like str()
except that it always returns Unicode objects.

A new C API PyObject_Unicode() is also provided.

This closes patch #101664.

Written by Marc-Andre Lemburg. Copyright assigned to Guido van Rossum.
2001-01-17 17:09:53 +00:00
Fred Drake 81473b12b7 The Python/C API deals in PyObject*, not PyDictObject*. 2001-01-08 05:53:53 +00:00
Fred Drake 316ef7c574 Markup nit: Command line options should be marked with \programopt. 2001-01-04 05:56:34 +00:00
Guido van Rossum e22e4b2b59 Oops. The value "0 or +1" for the category argument of PyErr_Warn()
doesn't work.  Make it 0.  (Although it really *should* be 0 or +1 --
the refcount is incremented when it is raised as an exception, but not
otherwise.)
2000-12-19 03:58:11 +00:00
Guido van Rossum 9a18a7ed03 Document Pyerr_Warn().
Add an XXX comment at the beginning expressing disappointment over the
confusing way refcount behavior of arguments is documented.
2000-12-19 03:53:57 +00:00
Guido van Rossum 3dbb406335 Document Pyerr_Warn(). 2000-12-19 03:53:01 +00:00
Fred Drake 6b3f3f2861 In the first discussion showing how to handle exceptions from C, make the
Python equivalent actually equivalent to the C code.  Also, in the C code,
place the "goto" statements on a line by themselves for better visibility
of statements that affect control flow.

This closes bug #123398.
2000-11-29 15:48:22 +00:00
Fred Drake ee814bf2c9 Added documentation for the Py_InitModule*() family of functions. 2000-11-28 22:34:32 +00:00
Fred Drake 0ac000cd54 Updates to reflect pending changes to the XML conversion process. 2000-11-22 16:42:37 +00:00
Fred Drake 8902442e2f Added exception to the rule that the buffer returned by PyString_AsString()
and PyString_AsStringAndSize() for strings that were just created using
PyString_FromStringAndSize(NULL, n).

This closes bug #117377.

Added warning about passing NULL to the concrete object functions; many of
them use the appropriate Py<Type>_Check() test, but do not check for NULL.

"de-allocated" --> "deallocated"
2000-10-23 16:00:54 +00:00
Fred Drake 89fb035248 For PyErr_Format(), note that the exception parameter can be a string or
class, but not an instance (since an instance will be created using the
formatted message string as the constructor parameter).
2000-10-14 05:49:30 +00:00
Fred Drake 5d64421c23 Fix a couple of places where the descriptions of *_GET_SIZE() macros said
they were similar to *_GetSize(); should be similar to *_Size().

Error noted by William Park <parkw@better.net>.
2000-10-07 12:31:50 +00:00
Neil Schemenauer 410cb6be8f The _PyTuple_Resize() last_is_sticky flag must now always be false. 2000-10-05 19:38:24 +00:00
Fred Drake ffe58ca6ef Reversely --> Conversely
This closes SourceForge bug #115673.
2000-09-29 17:31:54 +00:00
Fred Drake 0b71ceaeff Note that including Python.h includes limits.h when available. 2000-09-26 05:51:50 +00:00
Fred Drake 891150bdf2 Added documentation for the new PyModule_*() convenience functions.
This closes SourceForge patch #101233.
2000-09-23 03:25:42 +00:00
Fred Drake 1fa9365066 Added refcount information for the *_InPlace*() API series.
This closes SourceForge bug #114287.
2000-09-22 18:19:37 +00:00
Fred Drake c0e6c5beb2 PyNumber_Coerce() returns an int, not a PyObject *. 2000-09-22 18:17:49 +00:00
Fred Drake ed773ef78d Include the new text on reporting bugs in a few useful places.
This closes SourceForge bug #114792.
2000-09-21 21:35:22 +00:00
Marc-André Lemburg d1ba443206 This patch adds a new Python C API called PyString_AsStringAndSize()
which implements the automatic conversion from Unicode to a string
object using the default encoding.

The new API is then put to use to have eval() and exec accept
Unicode objects as code parameter. This closes bugs #110924
and #113890.

As side-effect, the traditional C APIs PyString_Size() and
PyString_AsString() will also accept Unicode objects as
parameters.
2000-09-19 21:04:18 +00:00
Guido van Rossum c96ec6ef2b Document new APIs PyOS_getsig() and PyOS_setsig().
(Is there no macro to document a typedef?)

Fred, please check my latex!
2000-09-16 16:30:48 +00:00
Fred Drake d5d0435617 Use \shortversion in a number of places.
This partially addresses SourceForge bug #114318.
2000-09-14 20:24:17 +00:00
Fred Drake 933f0c38ef Avoid reference to specific versions of Python where possible.
This partially addresses SourceForge bug #114318.
2000-09-14 18:12:48 +00:00
Fred Drake 7740a01096 Thomas Wouters <thomas@xs4all.net>:
Fix up some of the PyNumber_*() documentation.
Add documentation for the InPlace API calls.
2000-09-12 20:27:05 +00:00
Fred Drake f913e542be Vladimir Marangozov <Vladimir.Marangozov@inrialpes.fr>:
Here are some changes to the C API docs. The memory examples & API have
been updated because one malloc family is gone (Py_Malloc).
You'll see other small additions to the "building new types" section
for completeness and some cleanup at the end of the memory section.
2000-09-12 20:17:17 +00:00
Fred Drake 81cccb7563 Added documentation for PySequence_Fast() and PySequence_Fast_GET_ITEM(). 2000-09-12 15:22:05 +00:00
Moshe Zadka 57a5932f13 Update documentation for PyErr_Format, because the function has changed.
Connected to patch 100895
2000-09-01 09:47:20 +00:00
Fred Drake e0d9a83bea Document PyImport_AppendInittab(), PyImport_ExtendInittab(), and
struct _inittab.

This closes SourceForge bug #111499.
2000-09-01 05:30:00 +00:00
Jeremy Hylton b709df3810 refactor __del__ exception handler into PyErr_WriteUnraisable
add sanity check to gc: if an exception occurs during GC, call
PyErr_WriteUnraisable and then call Py_FatalEror.
2000-09-01 02:47:25 +00:00
Fred Drake 17e6343d2d Document PyOS_CheckStack().
Fix a couple of really minor markup nits.
2000-08-31 05:50:40 +00:00
Fred Drake 34c391d743 Correct the reference count information for the parameters of
PyErr_Restore().
2000-08-15 04:36:16 +00:00
Fred Drake 510d08bfe4 In the section on the "Very High Level Layer", address concerns brought up
by Edward K. Ream <edream@users.sourceforge.net> about FILE* values and
incompatible C libraries in dynamically linked extensions.  It is not clear
(to me) how realistic the issue is, but it is better documented than not.

This closes SourceForge bug #111520.
2000-08-14 02:50:21 +00:00
Fred Drake 4ca744c70e Added information for PyEval_EvalCode().
Fixed a couple of typos (new references are represented by "+1", not "1").
2000-08-12 03:39:47 +00:00
Fred Drake a8d7341f63 PyRun_InteractiveOne(),
PyRun_InteractiveLoop():  Added descriptions.

PyExc_WindowsError:  Added to list of standard exceptions and added note
                     about the right preprocessor symbol to use to protect
                     code that uses it.
2000-08-11 20:39:29 +00:00
Fred Drake 7d45d34ed7 ANY becomes void, to reflect the requirement for ANSI C. 2000-08-11 17:07:32 +00:00
Andrew M. Kuchling 8c46b30e0a Document PyObject_AsFileDescriptor 2000-07-13 23:58:16 +00:00
Marc-André Lemburg 4707320566 Added new APIs and fixed some other Unicode ones (missing * or
extra ' ').
2000-07-07 15:48:54 +00:00
Marc-André Lemburg 5a20b21fb1 Added docs for the new Unicode and string APIs. 2000-07-07 15:47:06 +00:00
Fred Drake ae96aab1fe Marc-Andre Lemburg <mal@lemburg.com>:
Update the API docs for the new macros Py_UNICODE_ISALPHA() and
Py_UNICODE_ISALNUM().
2000-07-03 13:38:10 +00:00
Fred Drake e06f0f9a13 Uncomment some additions from Vladimir pertinent to 2.0 but not 1.5.2. 2000-06-30 15:52:39 +00:00
Fred Drake d04038d9d2 Update comments relating to the removal of the -X option and of string
exceptions in the interpreter and standard library.
2000-06-29 20:15:14 +00:00
Fred Drake cabbc3be5b Added documentation for PyOS_AfterFork(). 2000-06-28 15:53:13 +00:00
Fred Drake 1d15869534 Markup consistency nits. 2000-06-18 05:21:21 +00:00
Fred Drake 992fe5a83e Updates from Marc-Andre Lemburg <mal@leburg.com> for the Unicode support. 2000-06-16 21:04:15 +00:00
Fred Drake 1c2d06acaf Added reference count information for PySequence_List(). 2000-06-16 20:00:04 +00:00
Fred Drake a8455abcf8 Documented PySequence_List() and PySequence_Tuple().
Added a bit more documentation in the chapter on building extension types,
including Py_FindMethod() documentation.

Several minor consistency nits were fixed.
2000-06-16 19:58:42 +00:00
Fred Drake 8520cc2328 Added reference count information for Py_FindMethod(). 2000-04-10 19:38:24 +00:00
Fred Drake 7357770153 Yet another markup nit: functions that are part of the Python/C API
are still C functions, and should be marked.
2000-04-10 18:50:14 +00:00
Fred Drake 37f41565a8 PyErr_Format():
Remove statement that the return value is always NULL; this is
        generated by the formatting.
2000-04-10 18:46:22 +00:00
Jeremy Hylton 98605b54b4 document PyErr_Format 2000-04-10 18:40:57 +00:00
Fred Drake 8394595f3b Add to the comment a description of the "null" value for returned
PyObject* values.
2000-04-10 18:29:21 +00:00
Fred Drake db2764d941 The reference count field for PyErr_NoMemory() and
PyErr_SetFromErrno() should be "null".
2000-04-10 18:25:09 +00:00
Fred Drake a4cd2611f4 Marc-Andre Lemburg <mal@lemburg.com>:
API documentation for Unicode support from C.
2000-04-06 14:10:29 +00:00
Fred Drake 659ebfa79e Merge in changes from the 1.5.2p2 release.
Hopefully I got all this right!
2000-04-03 15:42:13 +00:00
Fred Drake eb725cd045 Merged changes from the 1.5.2p2 release. 2000-04-03 15:06:40 +00:00
Fred Drake ddc6c276b7 Improve explanation of reference counts for PyString_Concat(). 2000-03-31 18:22:38 +00:00
Jeremy Hylton a12c7a7620 Add PyDict_Copy() function to C API for dicts. It returns a new
dictionary that contains the same key/value pairs as p.
2000-03-30 22:27:31 +00:00
Fred Drake 310ee61f20 Missed a couple of program options that had been marked by \code. 1999-11-09 17:31:42 +00:00
Fred Drake be48646cfa Use \citetitle and \programopt as appropriate. 1999-11-09 17:03:03 +00:00
Fred Drake 805bf1b330 Added note that Skip created the initial version of this file.
Fixed up a few of his ??? comments.
1999-10-20 16:03:38 +00:00
Fred Drake 7b7dc6b49d Initial version as provided by Skip Montanaro <skip@mojam.com>. 1999-10-20 15:06:24 +00:00
Fred Drake c924b8d976 Clarified start parameter to Py_CompileString, documented
Py_eval_input, Py_file_input, and Py_single_input.

Problems reported by Aaron Brancotti <aaron@icona.it>.
1999-08-23 18:57:25 +00:00
Fred Drake 58c5a2a53c Started documentation on buffer objects & types. Very preliminary.
Greg Stein:  Please help with this; it's your baby!
1999-08-04 13:13:24 +00:00
Guido van Rossum 32bc45f737 Removed PyMapping_Clear() -- it was wishful thinking and serves no
great purpose.
1999-08-02 20:49:37 +00:00
Fred Drake dab44682c2 PyCObject_FromVoidPtr(): Clarify that the destr function will only be
called on destruction is non-NULL.
1999-05-13 18:41:14 +00:00
Fred Drake 0041a94e74 Fill in a few holes in the "Very High Level" chapter. 1999-04-29 04:20:46 +00:00
Fred Drake 127ed0a71e Updated list of standard exceptions in section 4.1. 1999-02-17 23:09:05 +00:00
Fred Drake 66b989c805 Be explicit about the reference count of the original value of the
first parameter to PyString_Concat().
1999-02-15 20:15:39 +00:00
Fred Drake efd146c916 Markup nits.
Added section on module objects; described functions in
moduleobject.c.
1999-02-15 15:30:45 +00:00
Guido van Rossum d1dbf633ed Header for PyObject_DelItem() mentioned non-existing 3rd argument. 1999-01-22 20:10:49 +00:00
Fred Drake 2f8592cbea Ignore the byproducts of SGML/XML conversions for now. 1998-12-01 18:58:28 +00:00
Guido van Rossum a096a2e6a2 Warn that AddModule doesn't import the module. 1998-11-02 17:02:42 +00:00
Guido van Rossum 0a0f11b6d4 PyMapping_SetItemString() returns int, not an object. 1998-10-16 17:43:53 +00:00
Guido van Rossum ed9dcc10f8 Clarify that the Python interpreter lock need *not* be held by
PyInterpreterState_New() and PyThreadState_New() -- but that you may
use it to serialize calls to them.
1998-08-07 18:28:03 +00:00
Fred Drake 9f86b662d1 Update to use a separate page for front matter. 1998-07-28 21:55:19 +00:00
Guido van Rossum a937d14898 Fred's right -- we need PyList_SET_ITEM(). 1998-04-24 18:22:02 +00:00
Fred Drake f8830d1de5 Convert recent additions to use new, "logical" markup.
I suppose we really do need a markup guide.  -sigh-
1998-04-23 14:06:01 +00:00
Guido van Rossum 4447513e94 Filled in some more blanks, with the help of Drew Csillag. 1998-04-21 15:30:01 +00:00
Guido van Rossum 3c4378bd9b Some patches by Drew Csillag; plus a few of my own uncommitted changes. 1998-04-14 20:21:10 +00:00
Fred Drake 003d8da779 Typo: (and often severly limited) -- severely
Typo: (but not to the tuple or list into which the item it put!) -- is put

Thanks, AMK!
1998-04-13 00:53:42 +00:00
Fred Drake c94d9348ca In descriptions of Py_GetPrefix() and Py_GetExecPrefix(), make sure the
"--" at the start of the configure options isn't collapsed to "-" when the
HTML is generated.
1998-04-12 02:39:13 +00:00
Fred Drake 2de75ec245 Don't assume that \version expands to the 3-character major.minor number; it
is the full release version name ("1.5.1beta1", for instance).
1998-04-09 14:12:11 +00:00
Fred Drake 7e9d3148d1 Capitalize "Python" for consistency. 1998-04-03 05:02:28 +00:00
Fred Drake c6fa34e4d0 Markup consistency & nits.
Fix typo in a C code example:  KeyError is spelled PyExc_KeyError in C; the
"K" is upper case!

Some index entries.

On function signatures, always use parameter names.  Make return types match
what's in the header files.  When the return type is a pointer, always omit
the space between te type name and the "*"; leaving it in results in

	type * func(..)

and having two spaces there just looks terrible.
1998-04-02 06:47:24 +00:00
Fred Drake f3aa0e0627 Revert the index stuff to work better with LaTeX2HTML. 1998-03-17 06:23:13 +00:00
Fred Drake 7d20ffe245 Adjust the index inclusion for the new index support. 1998-03-09 16:39:22 +00:00
Fred Drake 6659c30b67 Convert LaTeX support to create a new class of documents. HTML generation
now requires LaTeX2HTML 98.1p1 or newer (& and is still in progress).

This means that doing things to change the formatting of the manuals (at the
"normal user" level, like A4 paper), can happen in just one place, rather
than in each document file.
1998-03-03 22:02:19 +00:00
Fred Drake f39ed67fa2 Added \label{}s for logical addressing. 1998-02-26 22:01:23 +00:00
Fred Drake b92dce38e7 PyFile_FromFile() description: make sure the closing brace for the arguments
comes after the arguments are complete.
1998-02-25 15:40:22 +00:00
Fred Drake 7baf3d4ea7 Fixed typo reported by Vladimir Marangozov <Vladimir.Marangozov@imag.fr>. 1998-02-20 00:45:52 +00:00
Fred Drake 9d20ac36a9 Removed various "(New in 1.5a?!)" constructs. Other notes pertaining to
versioning remain intact.
1998-02-16 15:27:08 +00:00
Fred Drake 4de05a90be Place C typedef for Py_complex after brief description, to be more consistent
with the other example of a structure description (struct _frozen).

Added index entries for the modules referenced in the document.
1998-02-16 14:25:26 +00:00
Fred Drake 53fb7723ee Added index enties for the Python built-in functions, where appropriate. 1998-02-16 06:23:20 +00:00
Fred Drake e058b4f124 Lots of nitty-gritty stuff:
Use \emph{} when referring to title of any of the Python manuals, like is
done in the other manuals.

In some places, use \emph{} or \dfn{} instead of ``...''.

Use \samp{} instead of \code{} when marking identifier prefixes.

Use logical markup wherever it made sense.

Fixed a bunch of typos.

In several places, use "---" instead of "--" to get the emdash.

Start sentences with capital letters and end them with periods, as needed.

"it's" --> "its" in many places:  "it's" it *always* a contraction of "it is",
and "its" should always be used for the possessive.

"don't" --> "doesn't"

"should discards any" --> "should discard any"

In C function descriptions, use \var{} to mark parameters in the running
text instead of \code{}.  This matches usage in the other manauls better,
and is more consistent with the formatting of the function signatures.
Lots of little changes to implement this.

Lots of fixups needed due to appearant heavy cut-&-paste in the orignal
document.

Mention that the exception objects may be either classes or strings,
depending on the use of -X; they were unequivocally stated to be strings
in the section "Standard Exceptions".

"mkvalue()" --> "Py_BuildValue()"

Description of PyNumber_Power() indicates that the third value is option,
but not how to indicate that it was omitted.  Clarified.

Explain the behavior of PyString_FromStringAndSize() if the buffer is NULL.

Explain the Py_complex structure a little (tell what it's used for) and use
a {verbatim} environment for the structure definition itself.

Fix explanation of PyFile_SoftSpace().

Update the example version string to 1.5.

Combined the sections on defining new object types.
1998-02-16 06:15:35 +00:00
Fred Drake 2a4646c660 Remove obsolete pagenumbering / pagestyle cruft. 1998-02-13 07:08:56 +00:00
Fred Drake e5bc49785c "ASCII" --> "\ASCII{}" 1998-02-12 23:36:49 +00:00
Fred Drake e5bf8b2c79 Reorganized a bit. No changed content.
Guido, please take a look at new structure, at least the ToC.
1998-02-12 21:22:28 +00:00
Fred Drake f44617d298 For sections describing the "Foo Protocol", consistently use the capitalized
"Protocol" and not "protocol".
1998-02-12 20:57:15 +00:00
Fred Drake faa1afe2d7 Py_Exit(status) calls exit(status), not exit(0). 1998-02-12 20:51:02 +00:00
Fred Drake c6c921a4de Py_AtExit(): Added brief note about the constraint on cleanup functions not
calling the Python API.
1998-01-26 19:16:27 +00:00
Fred Drake 4d4f9e726a Removed \mytableofcontents; just use \tableofcontents. 1998-01-13 22:25:02 +00:00
Fred Drake b0a78738ea Consistency:
"Unix" ==> "\UNIX{}"

"C" ==> "\C{}"

"C++" ==> "\Cpp{}"
1998-01-13 18:51:10 +00:00
Fred Drake dca8792b52 Added openright option the the \documentclass{} for each of the manuals. 1998-01-13 16:53:23 +00:00
Fred Drake 1f8449af4e Revise prologue and frontmatter to use latex2e (not in 2.09 compatibility
mode) and take advantage of changes in myformat.sty.
1998-01-09 05:36:43 +00:00
Fred Drake 85a5c52752 Descriptions for PyRun_String(), PyRun_File(), and PyRun_CompileString() all
gave the return type as part of the function field and used an empty return
type field.  Fixed.

Function name field for PyLong_FromString() included an asterisk at the
beginning of the function name field; removed.
1998-01-02 03:24:19 +00:00
Guido van Rossum 5b8a523538 A whole bunch of typos fixed by Andrew Kuchling.
Added a warning about the incompleteness to the front.
Added a reminder about CObject to the back.
1997-12-30 04:38:44 +00:00
Guido van Rossum 580aa8dbc3 Several changes, e.g. restructuring of the intro to be closer to what
it ought to be.  Maybe the last checkin before 1.5b1 is released.
1997-11-25 15:34:51 +00:00
Fred Drake 36fbe76a45 struct _frozen:
Use spaces instead of tabs to indent structure definition; tabs don't
	work in tex/latex.

PyImport_FrozenModules:
	struct _freeze ==> struct _frozen
1997-10-13 18:18:33 +00:00
Guido van Rossum 9faf4c57b0 Change title to {Python/C API Reference Manual}; remove \bcode \ecode
which appears to be out of fashion in this file.
1997-10-07 14:38:54 +00:00
Guido van Rossum c44d3d6664 Done with tread state descriptions. Sigh! 1997-10-06 05:10:47 +00:00
Guido van Rossum 42cefd03cf Checkpoint. Added docs for the new exception handling APIs and for
the interfaces defined in import.h.
1997-10-05 15:27:29 +00:00
Guido van Rossum b904629f75 Fix some badly botched prototypes for PyRun* c.s. 1997-08-21 02:28:57 +00:00
Guido van Rossum 5060b3be9b Consistently change Python-C API to Python/C API; added lots of new
introductory text for reference counts and error handling, with good
examples.
1997-08-17 18:02:23 +00:00
Guido van Rossum 09270b51e4 Fixes to make it pass latex without complaints. 1997-08-15 18:57:32 +00:00
Guido van Rossum 4a944d7a47 Added more stuff on initialization (still rudimentary) 1997-08-14 20:35:38 +00:00
Guido van Rossum 59a61352ad Added new intro sections (incomplete); fixed various typos 1997-08-14 20:34:33 +00:00
Guido van Rossum ae110af13b Just another checkin for backup. Nothing substantial yet. 1997-05-22 20:11:52 +00:00
Guido van Rossum 9231c8f176 Made a start with api.tex, the Python-C API Reference Manual.
Removed extref.tex (which provided the starting point).
Also removed qua.tex, which is out of date and no longer needed.
1997-05-15 21:43:21 +00:00