@@ -228,29 +228,30 @@ Implementing functions and methods
228228 Structure used to describe a method of an extension type. This structure has
229229 four fields:
230230
231- +------------------+---------------+-------------------------------+
232- | Field | C Type | Meaning |
233- +==================+===============+===============================+
234- | :attr: `ml_name ` | const char \* | name of the method |
235- +------------------+---------------+-------------------------------+
236- | :attr: `ml_meth ` | PyCFunction | pointer to the C |
237- | | | implementation |
238- +------------------+---------------+-------------------------------+
239- | :attr: `ml_flags ` | int | flag bits indicating how the |
240- | | | call should be constructed |
241- +------------------+---------------+-------------------------------+
242- | :attr: `ml_doc ` | const char \* | points to the contents of the |
243- | | | docstring |
244- +------------------+---------------+-------------------------------+
245-
246- The :attr: `ml_meth ` is a C function pointer. The functions may be of different
231+ .. c :member :: const char * ml_name
232+
233+ name of the method
234+
235+ .. c :member :: PyCFunction ml_meth
236+
237+ pointer to the C implementation
238+
239+ .. c :member :: int ml_flags
240+
241+ flags bits indicating how the call should be constructed
242+
243+ .. c :member :: const char * ml_doc
244+
245+ points to the contents of the docstring
246+
247+ The :c:member: `ml_meth ` is a C function pointer. The functions may be of different
247248types, but they always return :c:expr: `PyObject* `. If the function is not of
248249the :c:type: `PyCFunction `, the compiler will require a cast in the method table.
249250Even though :c:type: `PyCFunction ` defines the first parameter as
250251:c:expr: `PyObject* `, it is common that the method implementation uses the
251252specific C type of the *self * object.
252253
253- The :attr : `ml_flags ` field is a bitfield which can include the following flags.
254+ The :c:member : `ml_flags ` field is a bitfield which can include the following flags.
254255The individual flags indicate either a calling convention or a binding
255256convention.
256257
0 commit comments