Trait cpython::py_class::BaseObject [] [src]

pub trait BaseObject: PythonObject {
    type InitType;
    fn size() -> usize;
unsafe fn alloc(
        py: Python,
        ty: &PyType,
        init_val: Self::InitType
    ) -> PyResult<PyObject>;
unsafe fn dealloc(py: Python, obj: *mut PyObject); }

A PythonObject that is usable as a base type with the py_class!() macro.

Associated Types

Required Methods

Gets the size of the object, in bytes.

Allocates a new object (usually by calling ty->tp_alloc), and initializes it using init_val. ty must be derived from the Self type, and the resulting object must be of type ty.

Calls the rust destructor for the object and frees the memory (usually by calling ptr->ob_type->tp_free). This function is used as tp_dealloc implementation.

Implementors