Struct rustpython_vm::builtins::PyList
source · pub struct PyList { /* private fields */ }
Implementations§
source§impl PyList
impl PyList
pub fn new_ref(elements: Vec<PyObjectRef>, ctx: &Context) -> PyRef<Self>
pub fn borrow_vec(&self) -> PyMappedRwLockReadGuard<'_, [PyObjectRef]>
pub fn borrow_vec_mut(&self) -> PyRwLockWriteGuard<'_, Vec<PyObjectRef>>
Trait Implementations§
source§impl AsMapping for PyList
impl AsMapping for PyList
fn as_mapping() -> &'static PyMappingMethods
fn mapping_downcast(mapping: PyMapping<'_>) -> &Py<Self>
fn __extend_method_def(method_defs: &mut Vec<PyMethodDef>)
fn __extend_py_class(ctx: &Context, class: &'static Py<PyType>)
fn __extend_slots(slots: &mut PyTypeSlots)
source§impl AsSequence for PyList
impl AsSequence for PyList
fn as_sequence() -> &'static PySequenceMethods
fn sequence_downcast(seq: PySequence<'_>) -> &Py<Self>
fn __extend_method_def(method_defs: &mut Vec<PyMethodDef>)
fn __extend_py_class(ctx: &Context, class: &'static Py<PyType>)
fn __extend_slots(slots: &mut PyTypeSlots)
source§impl Comparable for PyList
impl Comparable for PyList
fn cmp( zelf: &Py<Self>, other: &PyObject, op: PyComparisonOp, vm: &VirtualMachine ) -> PyResult<PyComparisonValue>
fn slot_richcompare( zelf: &PyObject, other: &PyObject, op: PyComparisonOp, vm: &VirtualMachine ) -> PyResult<Either<PyObjectRef, PyComparisonValue>>
fn eq( zelf: &Py<Self>, other: PyObjectRef, vm: &VirtualMachine ) -> PyResult<PyComparisonValue>
fn ne( zelf: &Py<Self>, other: PyObjectRef, vm: &VirtualMachine ) -> PyResult<PyComparisonValue>
fn lt( zelf: &Py<Self>, other: PyObjectRef, vm: &VirtualMachine ) -> PyResult<PyComparisonValue>
fn le( zelf: &Py<Self>, other: PyObjectRef, vm: &VirtualMachine ) -> PyResult<PyComparisonValue>
fn ge( zelf: &Py<Self>, other: PyObjectRef, vm: &VirtualMachine ) -> PyResult<PyComparisonValue>
fn gt( zelf: &Py<Self>, other: PyObjectRef, vm: &VirtualMachine ) -> PyResult<PyComparisonValue>
fn __extend_method_def(method_defs: &mut Vec<PyMethodDef>)
fn __extend_py_class(ctx: &Context, class: &'static Py<PyType>)
fn __extend_slots(slots: &mut PyTypeSlots)
source§impl Constructor for PyList
impl Constructor for PyList
type Args = FuncArgs
fn py_new(cls: PyTypeRef, _args: FuncArgs, vm: &VirtualMachine) -> PyResult
fn slot_new(cls: PyTypeRef, args: FuncArgs, vm: &VirtualMachine) -> PyResult
fn __extend_method_def(method_defs: &mut Vec<PyMethodDef>)
fn __extend_py_class(ctx: &Context, class: &'static Py<PyType>)
fn __extend_slots(slots: &mut PyTypeSlots)
source§impl From<Vec<PyObjectRef, Global>> for PyList
impl From<Vec<PyObjectRef, Global>> for PyList
source§fn from(elements: Vec<PyObjectRef>) -> Self
fn from(elements: Vec<PyObjectRef>) -> Self
Converts to this type from the input type.
source§impl FromIterator<PyObjectRef> for PyList
impl FromIterator<PyObjectRef> for PyList
source§fn from_iter<T: IntoIterator<Item = PyObjectRef>>(iter: T) -> Self
fn from_iter<T: IntoIterator<Item = PyObjectRef>>(iter: T) -> Self
Creates a value from an iterator. Read more
source§impl Initializer for PyList
impl Initializer for PyList
type Args = OptionalArg<PyObjectRef>
fn init( zelf: PyRef<Self>, iterable: Self::Args, vm: &VirtualMachine ) -> PyResult<()>
fn slot_init( zelf: PyObjectRef, args: FuncArgs, vm: &VirtualMachine ) -> PyResult<()>
fn __init__( zelf: PyRef<Self>, args: Self::Args, vm: &VirtualMachine ) -> PyResult<()>
fn __extend_method_def(method_defs: &mut Vec<PyMethodDef>)
fn __extend_py_class(ctx: &Context, class: &'static Py<PyType>)
fn __extend_slots(slots: &mut PyTypeSlots)
source§impl Iterable for PyList
impl Iterable for PyList
fn iter(zelf: PyRef<Self>, vm: &VirtualMachine) -> PyResult
fn slot_iter(zelf: PyObjectRef, vm: &VirtualMachine) -> PyResult
fn __iter__(zelf: PyObjectRef, vm: &VirtualMachine) -> PyResult
fn extend_slots(_slots: &mut PyTypeSlots)
fn __extend_method_def(method_defs: &mut Vec<PyMethodDef>)
fn __extend_py_class(ctx: &Context, class: &'static Py<PyType>)
fn __extend_slots(slots: &mut PyTypeSlots)
source§impl MaybeTraverse for PyList
impl MaybeTraverse for PyList
fn try_traverse(&self, tracer_fn: &mut TraverseFn<'_>)
source§impl MutObjectSequenceOp for PyList
impl MutObjectSequenceOp for PyList
type Guard<'a> = MappedRwLockReadGuard<'a, RawCellRwLock, [PyObjectRef]>
fn do_get<'a>( index: usize, guard: &'a Self::Guard<'_> ) -> Option<&'a PyObjectRef>
fn do_lock(&self) -> Self::Guard<'_>
fn mut_count(&self, vm: &VirtualMachine, needle: &PyObject) -> PyResult<usize>
fn mut_index_range( &self, vm: &VirtualMachine, needle: &PyObject, range: Range<usize> ) -> PyResult<Optioned<usize>>
fn mut_index( &self, vm: &VirtualMachine, needle: &PyObject ) -> PyResult<Optioned<usize>>
fn mut_contains(&self, vm: &VirtualMachine, needle: &PyObject) -> PyResult<bool>
fn _mut_iter_equal_skeleton<F, const SHORT: bool>( &self, vm: &VirtualMachine, needle: &PyObject, range: Range<usize>, f: F ) -> PyResult<Optioned<usize>>where F: FnMut(),
source§impl PyClassDef for PyList
impl PyClassDef for PyList
source§impl PyClassImpl for PyList
impl PyClassImpl for PyList
const TP_FLAGS: PyTypeFlags = _
fn impl_extend_class(ctx: &Context, class: &'static Py<PyType>)
fn impl_extend_method_def(method_defs: &mut Vec<PyMethodDef>)
fn extend_slots(slots: &mut PyTypeSlots)
fn extend_class(ctx: &Context, class: &'static Py<PyType>)
fn make_class(ctx: &Context) -> PyTypeRefwhere Self: StaticType,
fn make_slots() -> PyTypeSlots
source§impl PyPayload for PyList
impl PyPayload for PyList
fn class(ctx: &Context) -> &'static Py<PyType>
fn into_pyobject(self, vm: &VirtualMachine) -> PyObjectRef
fn _into_ref(self, cls: PyTypeRef, ctx: &Context) -> PyRef<Self>
fn into_exact_ref(self, ctx: &Context) -> PyRefExact<Self>
fn into_ref(self, ctx: &Context) -> PyRef<Self>
fn into_ref_with_type( self, vm: &VirtualMachine, cls: PyTypeRef ) -> PyResult<PyRef<Self>>
source§impl Representable for PyList
impl Representable for PyList
fn repr_str(zelf: &Py<Self>, vm: &VirtualMachine) -> PyResult<String>
fn slot_repr(zelf: &PyObject, vm: &VirtualMachine) -> PyResult<PyStrRef>
fn __repr__(zelf: PyObjectRef, vm: &VirtualMachine) -> PyResult<PyStrRef>
fn repr(zelf: &Py<Self>, vm: &VirtualMachine) -> PyResult<PyStrRef>
fn __extend_method_def(method_defs: &mut Vec<PyMethodDef>)
fn __extend_py_class(ctx: &Context, class: &'static Py<PyType>)
fn __extend_slots(slots: &mut PyTypeSlots)
source§impl StaticType for PyList
impl StaticType for PyList
fn static_cell() -> &'static StaticCell<PyTypeRef>
fn static_metaclass() -> &'static Py<PyType>
fn static_baseclass() -> &'static Py<PyType>
fn static_type() -> &'static Py<PyType>
fn init_manually(typ: PyTypeRef) -> &'static Py<PyType>
fn init_builtin_type() -> &'static Py<PyType>where Self: PyClassImpl,
fn create_static_type() -> PyTypeRefwhere Self: PyClassImpl,
Auto Trait Implementations§
impl !RefUnwindSafe for PyList
impl !Send for PyList
impl !Sync for PyList
impl Unpin for PyList
impl !UnwindSafe for PyList
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more