docs: fix warnings
This commit is contained in:
parent
e245f5239a
commit
3d6356223e
|
@ -84,6 +84,9 @@ jobs:
|
||||||
name: Prepare LD_LIBRARY_PATH (Ubuntu only)
|
name: Prepare LD_LIBRARY_PATH (Ubuntu only)
|
||||||
run: echo LD_LIBRARY_PATH=${pythonLocation}/lib >> $GITHUB_ENV
|
run: echo LD_LIBRARY_PATH=${pythonLocation}/lib >> $GITHUB_ENV
|
||||||
|
|
||||||
|
- name: Build docs
|
||||||
|
run: cargo doc --features "num-bigint num-complex" --verbose --target ${{ matrix.platform.rust-target }}
|
||||||
|
|
||||||
- name: Build without default features
|
- name: Build without default features
|
||||||
run: cargo build --no-default-features --verbose --target ${{ matrix.platform.rust-target }}
|
run: cargo build --no-default-features --verbose --target ${{ matrix.platform.rust-target }}
|
||||||
|
|
||||||
|
|
|
@ -136,7 +136,7 @@ The `#[pyclass]` macro accepts the following parameters:
|
||||||
The performance improvement applies to types that are often created and deleted in a row,
|
The performance improvement applies to types that are often created and deleted in a row,
|
||||||
so that they can benefit from a freelist. `XXX` is a number of items for the free list.
|
so that they can benefit from a freelist. `XXX` is a number of items for the free list.
|
||||||
* `gc` - Classes with the `gc` parameter participate in Python garbage collection.
|
* `gc` - Classes with the `gc` parameter participate in Python garbage collection.
|
||||||
If a custom class contains references to other Python objects that can be collected, the [`PyGCProtocol`] trait has to be implemented.
|
If a custom class contains references to other Python objects that can be collected, the [`PyGCProtocol`](https://docs.rs/pyo3/latest/pyo3/class/gc/trait.PyGCProtocol.html) trait has to be implemented.
|
||||||
* `weakref` - Adds support for Python weak references.
|
* `weakref` - Adds support for Python weak references.
|
||||||
* `extends=BaseType` - Use a custom base class. The base `BaseType` must implement `PyTypeInfo`.
|
* `extends=BaseType` - Use a custom base class. The base `BaseType` must implement `PyTypeInfo`.
|
||||||
* `subclass` - Allows Python classes to inherit from this class.
|
* `subclass` - Allows Python classes to inherit from this class.
|
||||||
|
|
|
@ -225,3 +225,4 @@ defines exceptions for several standard library modules.
|
||||||
[`PyErr`]: https://docs.rs/pyo3/latest/pyo3/struct.PyErr.html
|
[`PyErr`]: https://docs.rs/pyo3/latest/pyo3/struct.PyErr.html
|
||||||
[`PyErr::from_instance`]: https://docs.rs/pyo3/latest/pyo3/struct.PyErr.html#method.from_instance
|
[`PyErr::from_instance`]: https://docs.rs/pyo3/latest/pyo3/struct.PyErr.html#method.from_instance
|
||||||
[`Python::is_instance`]: https://docs.rs/pyo3/latest/pyo3/struct.Python.html#method.is_instance
|
[`Python::is_instance`]: https://docs.rs/pyo3/latest/pyo3/struct.Python.html#method.is_instance
|
||||||
|
[`PyAny::is_instance`]: https://docs.rs/pyo3/latest/pyo3/struct.PyAny.html#method.is_instance
|
||||||
|
|
|
@ -182,13 +182,13 @@ the following:
|
||||||
|
|
||||||
### Calling Python functions in Rust
|
### Calling Python functions in Rust
|
||||||
|
|
||||||
You can pass Python `def`'d functions and built-in functions to Rust functions `[PyFunction]`
|
You can pass Python `def`'d functions and built-in functions to Rust functions [`PyFunction`]
|
||||||
corresponds to regular Python functions while `[PyCFunction]` describes built-ins such as
|
corresponds to regular Python functions while [`PyCFunction`] describes built-ins such as
|
||||||
`repr()`.
|
`repr()`.
|
||||||
|
|
||||||
You can also use [`PyAny::is_callable`] to check if you have a callable object. `is_callable` will
|
You can also use [`PyAny::is_callable`] to check if you have a callable object. `is_callable` will
|
||||||
return `true` for functions (including lambdas), methods and objects with a `__call__` method.
|
return `true` for functions (including lambdas), methods and objects with a `__call__` method.
|
||||||
You can call the object with [`PyAny::call`] with the args as first parameter and the kwargs
|
You can call the object with [`PyAny::call`] with the args as first parameter and the kwargs
|
||||||
(or `None`) as second parameter. There are also [`PyAny::call0`] with no args and [`PyAny::call1`]
|
(or `None`) as second parameter. There are also [`PyAny::call0`] with no args and [`PyAny::call1`]
|
||||||
with only positional args.
|
with only positional args.
|
||||||
|
|
||||||
|
@ -208,6 +208,8 @@ in Python code.
|
||||||
[`PyAny::call1`]: https://docs.rs/pyo3/latest/pyo3/struct.PyAny.html#tymethod.call1
|
[`PyAny::call1`]: https://docs.rs/pyo3/latest/pyo3/struct.PyAny.html#tymethod.call1
|
||||||
[`PyObject`]: https://docs.rs/pyo3/latest/pyo3/type.PyObject.html
|
[`PyObject`]: https://docs.rs/pyo3/latest/pyo3/type.PyObject.html
|
||||||
[`wrap_pyfunction!`]: https://docs.rs/pyo3/latest/pyo3/macro.wrap_pyfunction.html
|
[`wrap_pyfunction!`]: https://docs.rs/pyo3/latest/pyo3/macro.wrap_pyfunction.html
|
||||||
|
[`PyFunction`]: https://docs.rs/pyo3/0.12.4/pyo3/types/struct.PyFunction.html
|
||||||
|
[`PyCFunction`]: https://docs.rs/pyo3/0.12.4/pyo3/types/struct.PyCFunction.html
|
||||||
|
|
||||||
### Accessing the module of a function
|
### Accessing the module of a function
|
||||||
|
|
||||||
|
@ -255,7 +257,7 @@ fn module_with_fn(py: Python, m: &PyModule) -> PyResult<()> {
|
||||||
|
|
||||||
## Accessing the FFI functions
|
## Accessing the FFI functions
|
||||||
|
|
||||||
In order to make Rust functions callable from Python, PyO3 generates a
|
In order to make Rust functions callable from Python, PyO3 generates a
|
||||||
`extern "C" Fn(slf: *mut PyObject, args: *mut PyObject, kwargs: *mut PyObject) -> *mut Pyobject`
|
`extern "C" Fn(slf: *mut PyObject, args: *mut PyObject, kwargs: *mut PyObject) -> *mut Pyobject`
|
||||||
function and embeds the call to the Rust function inside this FFI-wrapper function. This
|
function and embeds the call to the Rust function inside this FFI-wrapper function. This
|
||||||
wrapper handles extraction of the regular arguments and the keyword arguments from the input
|
wrapper handles extraction of the regular arguments and the keyword arguments from the input
|
||||||
|
@ -263,4 +265,4 @@ wrapper handles extraction of the regular arguments and the keyword arguments fr
|
||||||
offers the `raw_pycfunction!()` macro to get the identifier of this generated wrapper.
|
offers the `raw_pycfunction!()` macro to get the identifier of this generated wrapper.
|
||||||
|
|
||||||
The `wrap_pyfunction` macro can be used to directly get a `PyCFunction` given a
|
The `wrap_pyfunction` macro can be used to directly get a `PyCFunction` given a
|
||||||
`#[pyfunction]` and a `PyModule`: `wrap_pyfunction!(rust_fun, module)`.
|
`#[pyfunction]` and a `PyModule`: `wrap_pyfunction!(rust_fun, module)`.
|
||||||
|
|
|
@ -212,7 +212,7 @@ impl PyModule {
|
||||||
/// ```
|
/// ```
|
||||||
///
|
///
|
||||||
/// **This function will be deprecated in the next release. Please use the specific
|
/// **This function will be deprecated in the next release. Please use the specific
|
||||||
/// [add_function] and [add_submodule] functions instead.**
|
/// [PyModule::add_function] and [PyModule::add_submodule] functions instead.**
|
||||||
pub fn add_wrapped<'a, T>(&'a self, wrapper: &impl Fn(Python<'a>) -> T) -> PyResult<()>
|
pub fn add_wrapped<'a, T>(&'a self, wrapper: &impl Fn(Python<'a>) -> T) -> PyResult<()>
|
||||||
where
|
where
|
||||||
T: IntoPyCallbackOutput<PyObject>,
|
T: IntoPyCallbackOutput<PyObject>,
|
||||||
|
|
Loading…
Reference in New Issue