pub trait DerefToPyAny { }
Expand description
Python objects that have a base type.
This marks types that can be upcast into a PyAny
and used in its place.
This essentially includes every Python object except PyAny
itself.
This is used to provide the Deref<Target = Bound<'_, PyAny>>
implementations for Bound<'_, T>
.
Users should not need to implement this trait directly. It’s implementation
is provided by the #[pyclass]
attribute.
§Note
This is needed because the compiler currently tries to figure out all the
types in a deref-chain before starting to look for applicable method calls.
So we need to prevent Bound<'_, PyAny
dereferencing to
itself in order to avoid running into the recursion limit. This trait is
used to exclude this from our blanket implementation. See this Rust
issue for more details. If the compiler limitation gets resolved, this
trait will be removed.
Implementors§
impl DerefToPyAny for Coroutine
experimental-async
only.impl DerefToPyAny for CancelledError
impl DerefToPyAny for IncompleteReadError
impl DerefToPyAny for InvalidStateError
impl DerefToPyAny for LimitOverrunError
impl DerefToPyAny for QueueEmpty
impl DerefToPyAny for QueueFull
impl DerefToPyAny for TimeoutError
impl DerefToPyAny for gaierror
impl DerefToPyAny for herror
impl DerefToPyAny for timeout
impl DerefToPyAny for PyArithmeticError
impl DerefToPyAny for PyAssertionError
impl DerefToPyAny for PyAttributeError
impl DerefToPyAny for PyBaseException
impl DerefToPyAny for PyBlockingIOError
impl DerefToPyAny for PyBrokenPipeError
impl DerefToPyAny for PyBufferError
impl DerefToPyAny for PyBytesWarning
impl DerefToPyAny for PyChildProcessError
impl DerefToPyAny for PyConnectionAbortedError
impl DerefToPyAny for PyConnectionError
impl DerefToPyAny for PyConnectionRefusedError
impl DerefToPyAny for PyConnectionResetError
impl DerefToPyAny for PyDeprecationWarning
impl DerefToPyAny for PyEOFError
impl DerefToPyAny for PyEncodingWarning
impl DerefToPyAny for PyEnvironmentError
impl DerefToPyAny for PyException
impl DerefToPyAny for PyFileExistsError
impl DerefToPyAny for PyFileNotFoundError
impl DerefToPyAny for PyFloatingPointError
impl DerefToPyAny for PyFutureWarning
impl DerefToPyAny for PyGeneratorExit
impl DerefToPyAny for PyIOError
impl DerefToPyAny for PyImportError
impl DerefToPyAny for PyImportWarning
impl DerefToPyAny for PyIndexError
impl DerefToPyAny for PyInterruptedError
impl DerefToPyAny for PyIsADirectoryError
impl DerefToPyAny for PyKeyError
impl DerefToPyAny for PyKeyboardInterrupt
impl DerefToPyAny for PyLookupError
impl DerefToPyAny for PyMemoryError
impl DerefToPyAny for PyModuleNotFoundError
impl DerefToPyAny for PyNameError
impl DerefToPyAny for PyNotADirectoryError
impl DerefToPyAny for PyNotImplementedError
impl DerefToPyAny for PyOSError
impl DerefToPyAny for PyOverflowError
impl DerefToPyAny for PyPendingDeprecationWarning
impl DerefToPyAny for PyPermissionError
impl DerefToPyAny for PyProcessLookupError
impl DerefToPyAny for PyRecursionError
impl DerefToPyAny for PyReferenceError
impl DerefToPyAny for PyResourceWarning
impl DerefToPyAny for PyRuntimeError
impl DerefToPyAny for PyRuntimeWarning
impl DerefToPyAny for PyStopAsyncIteration
impl DerefToPyAny for PyStopIteration
impl DerefToPyAny for PySyntaxError
impl DerefToPyAny for PySyntaxWarning
impl DerefToPyAny for PySystemError
impl DerefToPyAny for PySystemExit
impl DerefToPyAny for PyTimeoutError
impl DerefToPyAny for PyTypeError
impl DerefToPyAny for PyUnboundLocalError
impl DerefToPyAny for PyUnicodeDecodeError
impl DerefToPyAny for PyUnicodeEncodeError
impl DerefToPyAny for PyUnicodeError
impl DerefToPyAny for PyUnicodeTranslateError
impl DerefToPyAny for PyUnicodeWarning
impl DerefToPyAny for PyUserWarning
impl DerefToPyAny for PyValueError
impl DerefToPyAny for PyWarning
impl DerefToPyAny for PyZeroDivisionError
impl DerefToPyAny for PanicException
impl DerefToPyAny for PyBool
impl DerefToPyAny for PyByteArray
impl DerefToPyAny for PyBytes
impl DerefToPyAny for PyCFunction
impl DerefToPyAny for PyCapsule
impl DerefToPyAny for PyCode
Py_LIMITED_API
and non-PyPy
and non-GraalPy
only.impl DerefToPyAny for PyComplex
impl DerefToPyAny for PyDate
Py_LIMITED_API
only.impl DerefToPyAny for PyDateTime
Py_LIMITED_API
only.impl DerefToPyAny for PyDelta
Py_LIMITED_API
only.impl DerefToPyAny for PyDict
impl DerefToPyAny for PyDictItems
impl DerefToPyAny for PyDictKeys
impl DerefToPyAny for PyDictValues
impl DerefToPyAny for PyEllipsis
impl DerefToPyAny for PyFloat
impl DerefToPyAny for PyFrame
Py_LIMITED_API
and non-PyPy
and non-GraalPy
only.impl DerefToPyAny for PyFrozenSet
impl DerefToPyAny for PyFunction
impl DerefToPyAny for PyInt
impl DerefToPyAny for PyIterator
impl DerefToPyAny for PyList
impl DerefToPyAny for PyMapping
impl DerefToPyAny for PyMappingProxy
impl DerefToPyAny for PyMemoryView
impl DerefToPyAny for PyModule
impl DerefToPyAny for PyNone
impl DerefToPyAny for PyNotImplemented
impl DerefToPyAny for PySequence
impl DerefToPyAny for PySet
impl DerefToPyAny for PySlice
impl DerefToPyAny for PyString
impl DerefToPyAny for PySuper
PyPy
nor GraalPy
.impl DerefToPyAny for PyTime
Py_LIMITED_API
only.impl DerefToPyAny for PyTraceback
impl DerefToPyAny for PyTuple
impl DerefToPyAny for PyType
impl DerefToPyAny for PyTzInfo
Py_LIMITED_API
only.