Struct Py

Source
pub struct Py<T: PyObjectPayload>(/* private fields */);

Implementations§

Source§

impl Py<PyDict>

Source

pub fn to_attributes( &self, vm: &VirtualMachine, ) -> IndexMap<&'static PyStrInterned, PyObjectRef, RandomState>

Take a python dictionary and convert it to attributes.

Source

pub fn get_item_opt<K: DictKey + ?Sized>( &self, key: &K, vm: &VirtualMachine, ) -> PyResult<Option<PyObjectRef>>

Source

pub fn get_item<K: DictKey + ?Sized>( &self, key: &K, vm: &VirtualMachine, ) -> PyResult

Source

pub fn set_item<K: DictKey + ?Sized>( &self, key: &K, value: PyObjectRef, vm: &VirtualMachine, ) -> PyResult<()>

Source

pub fn del_item<K: DictKey + ?Sized>( &self, key: &K, vm: &VirtualMachine, ) -> PyResult<()>

Source

pub fn get_chain<K: DictKey + ?Sized>( &self, other: &Self, key: &K, vm: &VirtualMachine, ) -> PyResult<Option<PyObjectRef>>

Source§

impl Py<Frame>

Source

pub fn f_back(&self, vm: &VirtualMachine) -> Option<PyRef<Frame>>

Source§

impl Py<PyModule>

Source

pub fn __init_methods(&self, vm: &VirtualMachine) -> PyResult<()>

Source

pub fn dict(&self) -> PyDictRef

Source

pub fn get_attr<'a>( &self, attr_name: impl AsPyStr<'a>, vm: &VirtualMachine, ) -> PyResult

Source

pub fn set_attr<'a>( &self, attr_name: impl AsPyStr<'a>, attr_value: impl Into<PyObjectRef>, vm: &VirtualMachine, ) -> PyResult<()>

Source§

impl Py<PyType>

Source

pub fn fast_issubclass(&self, cls: &impl Borrow<PyObject>) -> bool

Determines if subclass is actually a subclass of cls, this doesn’t call subclasscheck, so only use this if cls is known to have not overridden the base subclasscheck magic method.

Source

pub fn mro_map_collect<F, R>(&self, f: F) -> Vec<R>
where F: Fn(&Self) -> R,

Source

pub fn mro_collect(&self) -> Vec<PyRef<PyType>>

Source

pub fn iter_base_chain(&self) -> impl Iterator<Item = &Py<PyType>>

Source

pub fn extend_methods( &'static self, method_defs: &'static [PyMethodDef], ctx: &Context, )

Source§

impl Py<Frame>

Source§

impl Py<HeapMethodDef>

Source

pub fn build_function(&self, vm: &VirtualMachine) -> PyRef<PyNativeFunction>

Source

pub fn build_method( &self, class: &'static Py<PyType>, vm: &VirtualMachine, ) -> PyRef<PyMethodDescriptor>

Source§

impl Py<PyWeak>

Source

pub fn upgrade(&self) -> Option<PyObjectRef>

Source§

impl<T: PyObjectPayload> Py<T>

Source

pub fn downgrade( &self, callback: Option<PyObjectRef>, vm: &VirtualMachine, ) -> PyResult<PyWeakRef<T>>

Trait Implementations§

Source§

impl<T: PyObjectPayload> AsRef<Py<T>> for PyExact<T>

Source§

fn as_ref(&self) -> &Py<T>

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl<T> AsRef<Py<T>> for PyRef<T>
where T: PyObjectPayload,

Source§

fn as_ref(&self) -> &Py<T>

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl<T: PyObjectPayload> AsRef<Py<T>> for PyRefExact<T>

Source§

fn as_ref(&self) -> &Py<T>

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl<T> AsRef<PyObject> for Py<T>
where T: PyObjectPayload,

Source§

fn as_ref(&self) -> &PyObject

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl AsRef<str> for Py<PyStr>

Source§

fn as_ref(&self) -> &str

Converts this type into a shared reference of the (usually inferred) input type.
Source§

impl<T: PyObjectPayload> Borrow<Py<T>> for PyExact<T>

Source§

fn borrow(&self) -> &Py<T>

Immutably borrows from an owned value. Read more
Source§

impl<T> Borrow<Py<T>> for PyRef<T>
where T: PyObjectPayload,

Source§

fn borrow(&self) -> &Py<T>

Immutably borrows from an owned value. Read more
Source§

impl<T: PyObjectPayload> Borrow<Py<T>> for PyRefExact<T>

Source§

fn borrow(&self) -> &Py<T>

Immutably borrows from an owned value. Read more
Source§

impl<T: PyObjectPayload> Borrow<PyObject> for Py<T>

Source§

fn borrow(&self) -> &PyObject

Immutably borrows from an owned value. Read more
Source§

impl<T: PyObjectPayload> Debug for Py<T>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<T: PyObjectPayload> Deref for Py<T>

Source§

type Target = T

The resulting type after dereferencing.
Source§

fn deref(&self) -> &Self::Target

Dereferences the value.
Source§

impl<T> Display for Py<T>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'a, T: PyObjectPayload> From<&'a Py<T>> for &'a PyObject

Source§

fn from(py_ref: &'a Py<T>) -> Self

Converts to this type from the input type.
Source§

impl<T> Hash for Py<T>
where T: Hash + PyObjectPayload,

Source§

fn hash<H: Hasher>(&self, state: &mut H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl<'a> IntoIterator for &'a Py<PyDict>

Source§

type Item = (PyObjectRef, PyObjectRef)

The type of the elements being iterated over.
Source§

type IntoIter = DictIter<'a>

Which kind of iterator are we turning this into?
Source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
Source§

impl<'a> IntoIterator for &'a Py<PyTuple>

Source§

type Item = &'a PyObjectRef

The type of the elements being iterated over.
Source§

type IntoIter = Iter<'a, PyObjectRef>

Which kind of iterator are we turning this into?
Source§

fn into_iter(self) -> Self::IntoIter

Creates an iterator from a value. Read more
Source§

impl<T> PartialEq for Py<T>

Source§

fn eq(&self, other: &Self) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl<T: PyObjectPayload> ToOwned for Py<T>

Source§

type Owned = PyRef<T>

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> Self::Owned

Creates owned data from borrowed data, usually by cloning. Read more
1.63.0 · Source§

fn clone_into(&self, target: &mut Self::Owned)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T: PyObjectPayload> Traverse for Py<T>

Source§

fn traverse(&self, tracer_fn: &mut TraverseFn<'_>)

DO notice that call trace on Py<T> means apply tracer_fn on Py<T>’s children, not like call trace on PyRef<T> which apply tracer_fn on PyRef<T> itself

Source§

impl<'a, T: PyPayload> TryFromBorrowedObject<'a> for &'a Py<T>

Source§

fn try_from_borrowed_object( vm: &VirtualMachine, obj: &'a PyObject, ) -> PyResult<Self>

Attempt to convert a Python object to a value of this type.
Source§

impl<T> Eq for Py<T>
where T: Eq + PyObjectPayload,

Auto Trait Implementations§

§

impl<T> !Freeze for Py<T>

§

impl<T> !RefUnwindSafe for Py<T>

§

impl<T> !Send for Py<T>

§

impl<T> !Sync for Py<T>

§

impl<T> Unpin for Py<T>
where T: Unpin,

§

impl<T> !UnwindSafe for Py<T>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> AsObject for T
where T: Borrow<PyObject>,

Source§

fn as_object(&self) -> &PyObject

Source§

fn get_id(&self) -> usize

Source§

fn is<T>(&self, other: &T) -> bool
where T: AsObject,

Source§

fn class(&self) -> &Py<PyType>

Source§

fn get_class_attr( &self, attr_name: &'static PyStrInterned, ) -> Option<PyObjectRef>

Source§

fn fast_isinstance(&self, cls: &Py<PyType>) -> bool

Determines if obj actually an instance of cls, this doesn’t call instancecheck, so only use this if cls is known to have not overridden the base instancecheck magic method.
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Checks if this value is equivalent to the given key. Read more
Source§

impl<Q, K> Equivalent<K> for Q
where Q: Eq + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn equivalent(&self, key: &K) -> bool

Compare self to key and return true if they are equal.
Source§

impl<T, U> ExactFrom<T> for U
where U: TryFrom<T>,

Source§

fn exact_from(value: T) -> U

Source§

impl<T, U> ExactInto<U> for T
where U: ExactFrom<T>,

Source§

fn exact_into(self) -> U

Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T, U> OverflowingInto<U> for T
where U: OverflowingFrom<T>,

Source§

impl<P, T> Receiver for P
where P: Deref<Target = T> + ?Sized, T: ?Sized,

Source§

type Target = T

🔬This is a nightly-only experimental API. (arbitrary_self_types)
The target type on which the method may be called.
Source§

impl<T, U> RoundingInto<U> for T
where U: RoundingFrom<T>,

Source§

impl<T, U> SaturatingInto<U> for T
where U: SaturatingFrom<T>,

Source§

impl<T> ToDebugString for T
where T: Debug,

Source§

fn to_debug_string(&self) -> String

Returns the String produced by Ts Debug implementation.

§Examples
use malachite_base::strings::ToDebugString;

assert_eq!([1, 2, 3].to_debug_string(), "[1, 2, 3]");
assert_eq!(
    [vec![2, 3], vec![], vec![4]].to_debug_string(),
    "[[2, 3], [], [4]]"
);
assert_eq!(Some(5).to_debug_string(), "Some(5)");
Source§

impl<T> ToString for T
where T: Display + ?Sized,

Source§

fn to_string(&self) -> String

Converts the given value to a String. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T, U> WrappingInto<U> for T
where U: WrappingFrom<T>,

Source§

fn wrapping_into(self) -> U

Source§

impl<T> PyThreadingConstraint for T

Morty Proxy This is a proxified and sanitized view of the page, visit original site.