Skip to main content

Initializer

Trait Initializer 

Source
pub trait Initializer: PyPayload {
    type Args: FromArgs;

    const __OWN_METHOD_DEFS: &'static [PyMethodDef] = _;

    // Required method
    fn init(
        zelf: PyRef<Self>,
        args: Self::Args,
        vm: &VirtualMachine,
    ) -> PyResult<()>;

    // Provided methods
    fn slot_init(
        zelf: PyObjectRef,
        args: FuncArgs,
        vm: &VirtualMachine,
    ) -> PyResult<()> { ... }
    fn __extend_py_class(ctx: &'static Context, class: &'static Py<PyType>) { ... }
    fn __extend_slots(slots: &mut PyTypeSlots) { ... }
}

Provided Associated Constants§

Source

const __OWN_METHOD_DEFS: &'static [PyMethodDef] = _

Required Associated Types§

Required Methods§

Source

fn init( zelf: PyRef<Self>, args: Self::Args, vm: &VirtualMachine, ) -> PyResult<()>

Provided Methods§

Source

fn slot_init( zelf: PyObjectRef, args: FuncArgs, vm: &VirtualMachine, ) -> PyResult<()>

Source

fn __extend_py_class(ctx: &'static Context, class: &'static Py<PyType>)

Source

fn __extend_slots(slots: &mut PyTypeSlots)

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl Initializer for PyAttributeError

Source§

impl Initializer for PyBaseException

Source§

impl Initializer for PyBaseExceptionGroup

Source§

impl Initializer for PyBaseObject

Source§

impl Initializer for PyByteArray

Source§

type Args = ByteInnerNewOptions

Source§

impl Initializer for PyClassMethod

Source§

impl Initializer for PyDict

Source§

impl Initializer for PyImportError

Source§

impl Initializer for PyList

Source§

impl Initializer for PyModule

Source§

type Args = ModuleInitArgs

Source§

impl Initializer for PyNameError

Source§

impl Initializer for PyNamespace

Source§

impl Initializer for PyOSError

Source§

impl Initializer for PyProperty

Source§

type Args = PropertyArgs

Source§

impl Initializer for PySet

Source§

impl Initializer for PyStaticMethod

Source§

impl Initializer for PyStopIteration

Source§

impl Initializer for PySuper

Source§

type Args = InitArgs

Source§

impl Initializer for PySyntaxError

Source§

impl Initializer for PySystemExit

Source§

impl Initializer for PyType

Source§

impl Initializer for PyUnicodeDecodeError

Source§

impl Initializer for PyUnicodeEncodeError

Source§

impl Initializer for PyUnicodeTranslateError

Source§

impl Initializer for PyWeak

Source§

type Args = WeakNewArgs