Struct rustpython_vm::builtins::PyDict
source · pub struct PyDict { /* private fields */ }
Implementations§
source§impl PyDict
impl PyDict
pub fn new_ref(ctx: &Context) -> PyRef<Self>
pub fn is_empty(&self) -> bool
pub fn get_or_insert( &self, vm: &VirtualMachine, key: PyObjectRef, default: impl FnOnce() -> PyObjectRef ) -> PyResult
pub fn from_attributes( attrs: IndexMap<&'static PyStrInterned, PyObjectRef, RandomState>, vm: &VirtualMachine ) -> PyResult<Self>
pub fn contains_key<K: DictKey + ?Sized>( &self, key: &K, vm: &VirtualMachine ) -> bool
pub fn size(&self) -> DictSize
Trait Implementations§
source§impl AsMapping for PyDict
impl AsMapping for PyDict
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 AsNumber for PyDict
impl AsNumber for PyDict
fn as_number() -> &'static PyNumberMethods
fn clone_exact(_zelf: &Py<Self>, _vm: &VirtualMachine) -> PyRef<Self>
fn number_downcast(num: PyNumber<'_>) -> &Py<Self>
fn number_downcast_exact(num: PyNumber<'_>, vm: &VirtualMachine) -> PyRef<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 PyDict
impl AsSequence for PyDict
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 PyDict
impl Comparable for PyDict
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 PyDict
impl Constructor for PyDict
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 Initializer for PyDict
impl Initializer for PyDict
type Args = (OptionalArg<PyObjectRef>, KwArgs<PyObjectRef>)
fn init( zelf: PyRef<Self>, (dict_obj, kwargs): 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<'a> IntoIterator for &'a PyDict
impl<'a> IntoIterator for &'a PyDict
source§impl Iterable for PyDict
impl Iterable for PyDict
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 PyDict
impl MaybeTraverse for PyDict
fn try_traverse(&self, tracer_fn: &mut TraverseFn<'_>)
source§impl PyClassDef for PyDict
impl PyClassDef for PyDict
source§impl PyClassImpl for PyDict
impl PyClassImpl for PyDict
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 PyDict
impl PyPayload for PyDict
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 PyDict
impl Representable for PyDict
fn repr(zelf: &Py<Self>, vm: &VirtualMachine) -> PyResult<PyStrRef>
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 __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 PyDict
impl StaticType for PyDict
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 PyDict
impl !Send for PyDict
impl !Sync for PyDict
impl Unpin for PyDict
impl !UnwindSafe for PyDict
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