Issue 28753: Argument Clinic howto docfix, courtesy Julien Palard.

This commit is contained in:
Martin Panter 2016-12-10 03:49:12 +00:00
parent 932d40abf7
commit a277c130f7
1 changed files with 15 additions and 14 deletions

View File

@ -375,15 +375,12 @@ Let's dive in!
Write a pickled representation of obj to the open file. Write a pickled representation of obj to the open file.
[clinic start generated code]*/ [clinic start generated code]*/
12. Save and close the file, then run ``Tools/clinic/clinic.py`` on it. 12. Save and close the file, then run ``Tools/clinic/clinic.py`` on
With luck everything worked and your block now has output! Reopen it. With luck everything worked---your block now has output, and
the file in your text editor to see:: a ``.c.h`` file has been generated! Reopen the file in your
text editor to see:
/*[clinic input] .. code-block:: c
module _pickle
class _pickle.Pickler "PicklerObject *" "&Pickler_Type"
[clinic start generated code]*/
/*[clinic end generated code: checksum=da39a3ee5e6b4b0d3255bfef95601890afd80709]*/
/*[clinic input] /*[clinic input]
_pickle.Pickler.dump _pickle.Pickler.dump
@ -395,18 +392,22 @@ Let's dive in!
Write a pickled representation of obj to the open file. Write a pickled representation of obj to the open file.
[clinic start generated code]*/ [clinic start generated code]*/
PyDoc_STRVAR(_pickle_Pickler_dump__doc__,
"Write a pickled representation of obj to the open file.\n"
"\n"
...
static PyObject * static PyObject *
_pickle_Pickler_dump_impl(PicklerObject *self, PyObject *obj) _pickle_Pickler_dump(PicklerObject *self, PyObject *obj)
/*[clinic end generated code: checksum=3bd30745bf206a48f8b576a1da3d90f55a0a4187]*/ /*[clinic end generated code: output=87ecad1261e02ac7 input=552eb1c0f52260d9]*/
Obviously, if Argument Clinic didn't produce any output, it's because Obviously, if Argument Clinic didn't produce any output, it's because
it found an error in your input. Keep fixing your errors and retrying it found an error in your input. Keep fixing your errors and retrying
until Argument Clinic processes your file without complaint. until Argument Clinic processes your file without complaint.
For readability, most of the glue code has been generated to a ``.c.h``
file. You'll need to include that in your original ``.c`` file,
typically right after the clinic module block:
.. code-block:: c
#include "clinic/_pickle.c.h"
13. Double-check that the argument-parsing code Argument Clinic generated 13. Double-check that the argument-parsing code Argument Clinic generated
looks basically the same as the existing code. looks basically the same as the existing code.