AssignVec

Struct AssignVec 

Source
pub struct AssignVec<A>(/* private fields */)
where
    A: StrictDumb + StrictEncode + StrictDecode;

Implementations§

Source§

impl<A> AssignVec<A>

Source

pub fn with( vec: Confined<Vec<A>, amplify::::collection::confinement::NonEmptyVec::{constant#0}, rgbcore::::operation::assignments::{impl#0}::with::{constant#0}>, ) -> AssignVec<A>

Methods from Deref<Target = Confined<Vec<A>, amplify::::collection::confinement::NonEmptyVec::{constant#0}, rgbcore::::operation::assignments::{impl#19}::Target::{constant#0}>>§

Source

pub fn iter_mut(&'c mut self) -> <&'c mut C as IntoIterator>::IntoIter

Returns an iterator that allows modifying each value.

The iterator yields all items from start to end.

Source

pub fn values_mut( &mut self, ) -> impl Iterator<Item = &mut <C as KeyedCollection>::Value>

Returns an iterator that allows modifying each value for each key.

Source

pub fn keyed_values_mut( &mut self, ) -> impl Iterator<Item = (&<C as KeyedCollection>::Key, &mut <C as KeyedCollection>::Value)>

Returns an iterator that allows modifying each value for each key.

Source

pub fn as_inner(&self) -> &C

👎Deprecated since 4.7.0: use as_unconfined method

Returns inner collection type

Source

pub fn as_unconfined(&self) -> &C

Returns reference to the inner collection type.

Source

pub fn to_inner(&self) -> C
where C: Clone,

👎Deprecated since 4.7.0: use to_unconfined method

Clones inner collection type and returns it

Source

pub fn to_unconfined(&self) -> C
where C: Clone,

Clones inner collection and returns an unconfined version of it.

Source

pub fn push(&mut self, elem: <C as Collection>::Item) -> Result<(), Error>

Attempts to add a single element to the confined collection. Fails if the number of elements in the collection already maximal.

Source

pub fn extend<T>(&mut self, iter: T) -> Result<(), Error>
where T: IntoIterator<Item = <C as Collection>::Item>,

Attempts to add all elements from an iterator to the confined collection. Fails if the number of elements in the collection already maximal.

Source

pub fn clear(&mut self)

Removes all elements from the confined collection.

Source

pub fn len_u8(&self) -> u8

Returns number of elements in the confined collection as u8. The confinement guarantees that the collection length can’t exceed u8::MAX.

Source

pub fn len_u16(&self) -> u16

Returns number of elements in the confined collection as u16. The confinement guarantees that the collection length can’t exceed u16::MAX.

Source

pub fn len_u24(&self) -> u24

Returns number of elements in the confined collection as u24. The confinement guarantees that the collection length can’t exceed u24::MAX.

Source

pub fn len_u32(&self) -> u32

Returns number of elements in the confined collection as u32. The confinement guarantees that the collection length can’t exceed u32::MAX.

Source

pub fn get_mut( &mut self, key: &<C as KeyedCollection>::Key, ) -> Option<&mut <C as KeyedCollection>::Value>

Gets mutable reference to an element of the collection.

Source

pub fn insert( &mut self, key: <C as KeyedCollection>::Key, value: <C as KeyedCollection>::Value, ) -> Result<Option<<C as KeyedCollection>::Value>, Error>

Inserts a new value into the confined collection under a given key. Fails if the collection already contains maximum number of elements allowed by the confinement.

Source

pub fn entry( &mut self, key: <C as KeyedCollection>::Key, ) -> Result<<C as KeyedCollection>::Entry<'_>, Error>

Gets the given key’s corresponding entry in the map for in-place manipulation. Errors if the collection entry is vacant and the collection has already reached maximal size of its confinement.

Source

pub fn as_slice(&self) -> &[T]

Returns slice representation of the vec.

Source

pub fn get_mut<I>( &mut self, index: I, ) -> Option<&mut <I as SliceIndex<[T]>>::Output>
where I: SliceIndex<[T]>,

Gets the mutable element of a vector

Source

pub fn pop(&mut self) -> Option<T>

Removes the last element from a vector and returns it, or None if it is empty.

Source

pub fn remove(&mut self, index: usize) -> Result<T, Error>

Removes an element from the vector at a given index. Errors if the index exceeds the number of elements in the vector, of if the new vector length will be less than the confinement requirement. Returns the removed element otherwise.

Source

pub fn iter(&self) -> Iter<'_, T>

Returns an iterator over the slice.

The iterator yields all items from start to end.

Trait Implementations§

Source§

impl<A> AsMut<<AssignVec<A> as Wrapper>::Inner> for AssignVec<A>

Source§

fn as_mut(&mut self) -> &mut <AssignVec<A> as Wrapper>::Inner

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

impl<A> AsRef<Confined<Vec<A>, amplify::::collection::confinement::NonEmptyVec::{constant#0}, rgbcore::::operation::assignments::{impl#17}::{constant#0}>> for AssignVec<A>

Source§

fn as_ref( &self, ) -> &Confined<Vec<A>, amplify::::collection::confinement::NonEmptyVec::{constant#0}, rgbcore::::operation::assignments::{impl#17}::as_ref::{constant#0}>

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

impl<A> Borrow<Confined<Vec<A>, amplify::::collection::confinement::NonEmptyVec::{constant#0}, rgbcore::::operation::assignments::{impl#18}::{constant#0}>> for AssignVec<A>

Source§

fn borrow( &self, ) -> &Confined<Vec<A>, amplify::::collection::confinement::NonEmptyVec::{constant#0}, rgbcore::::operation::assignments::{impl#18}::borrow::{constant#0}>

Immutably borrows from an owned value. Read more
Source§

impl<A> BorrowMut<<AssignVec<A> as Wrapper>::Inner> for AssignVec<A>

Source§

fn borrow_mut(&mut self) -> &mut <AssignVec<A> as Wrapper>::Inner

Mutably borrows from an owned value. Read more
Source§

impl<A> Clone for AssignVec<A>

Source§

fn clone(&self) -> AssignVec<A>

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<A> Debug for AssignVec<A>

Source§

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

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

impl<A> Deref for AssignVec<A>

Source§

type Target = Confined<Vec<A>, amplify::::collection::confinement::NonEmptyVec::{constant#0}, rgbcore::::operation::assignments::{impl#19}::Target::{constant#0}>

The resulting type after dereferencing.
Source§

fn deref(&self) -> &<AssignVec<A> as Deref>::Target

Dereferences the value.
Source§

impl<A> DerefMut for AssignVec<A>

Source§

fn deref_mut(&mut self) -> &mut <AssignVec<A> as Deref>::Target

Mutably dereferences the value.
Source§

impl<'de, A> Deserialize<'de> for AssignVec<A>

Source§

fn deserialize<__D>( __deserializer: __D, ) -> Result<AssignVec<A>, <__D as Deserializer<'de>>::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl<A> From<AssignVec<A>> for Confined<Vec<A>, amplify::::collection::confinement::NonEmptyVec::{constant#0}, rgbcore::::operation::assignments::{impl#16}::{constant#0}>

Source§

fn from( wrapped: AssignVec<A>, ) -> Confined<Vec<A>, amplify::::collection::confinement::NonEmptyVec::{constant#0}, rgbcore::::operation::assignments::{impl#16}::{constant#0}>

Converts to this type from the input type.
Source§

impl<A> From<Confined<Vec<A>, amplify::::collection::confinement::NonEmptyVec::{constant#0}, rgbcore::::operation::assignments::{impl#31}::{constant#0}>> for AssignVec<A>

Source§

fn from( v: Confined<Vec<A>, amplify::::collection::confinement::NonEmptyVec::{constant#0}, rgbcore::::operation::assignments::{impl#31}::from::{constant#0}>, ) -> AssignVec<A>

Converts to this type from the input type.
Source§

impl<A> IntoIterator for AssignVec<A>

Source§

type Item = A

The type of the elements being iterated over.
Source§

type IntoIter = IntoIter<A>

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

fn into_iter(self) -> <AssignVec<A> as IntoIterator>::IntoIter

Creates an iterator from a value. Read more
Source§

impl<A> Ord for AssignVec<A>

Source§

fn cmp(&self, other: &AssignVec<A>) -> Ordering

This method returns an Ordering between self and other. Read more
1.21.0 · Source§

fn max(self, other: Self) -> Self
where Self: Sized,

Compares and returns the maximum of two values. Read more
1.21.0 · Source§

fn min(self, other: Self) -> Self
where Self: Sized,

Compares and returns the minimum of two values. Read more
1.50.0 · Source§

fn clamp(self, min: Self, max: Self) -> Self
where Self: Sized,

Restrict a value to a certain interval. Read more
Source§

impl<A> PartialEq for AssignVec<A>

Source§

fn eq(&self, other: &AssignVec<A>) -> 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<A> PartialOrd for AssignVec<A>

Source§

fn partial_cmp(&self, other: &AssignVec<A>) -> Option<Ordering>

This method returns an ordering between self and other values if one exists. Read more
1.0.0 · Source§

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

Tests less than (for self and other) and is used by the < operator. Read more
1.0.0 · Source§

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

Tests less than or equal to (for self and other) and is used by the <= operator. Read more
1.0.0 · Source§

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

Tests greater than (for self and other) and is used by the > operator. Read more
1.0.0 · Source§

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

Tests greater than or equal to (for self and other) and is used by the >= operator. Read more
Source§

impl<A> Serialize for AssignVec<A>

Source§

fn serialize<__S>( &self, __serializer: __S, ) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl<A> StrictDecode for AssignVec<A>

Source§

fn strict_decode( reader: &mut impl TypedRead, ) -> Result<AssignVec<A>, DecodeError>

Source§

fn strict_read(reader: impl ReadRaw) -> Result<Self, DecodeError>

Source§

impl<A> StrictDumb for AssignVec<A>

Source§

impl<A> StrictEncode for AssignVec<A>

Source§

fn strict_encode<W>(&self, writer: W) -> Result<W, Error>
where W: TypedWrite,

Source§

fn strict_write(&self, writer: impl WriteRaw) -> Result<(), Error>

Source§

impl<A> StrictTuple for AssignVec<A>

Source§

impl<A> StrictType for AssignVec<A>

Source§

const STRICT_LIB_NAME: &'static str = LIB_NAME_RGB_COMMIT

Source§

fn strict_name() -> Option<TypeName>

Source§

impl<A> Wrapper for AssignVec<A>

Source§

type Inner = Confined<Vec<A>, amplify::::collection::confinement::NonEmptyVec::{constant#0}, rgbcore::::operation::assignments::{impl#15}::Inner::{constant#0}>

Inner type wrapped by the current newtype
Source§

fn from_inner(inner: <AssignVec<A> as Wrapper>::Inner) -> AssignVec<A>

Instantiates wrapper type with the inner data
Source§

fn as_inner(&self) -> &<AssignVec<A> as Wrapper>::Inner

Returns reference to the inner representation for the wrapper type
Source§

fn into_inner(self) -> <AssignVec<A> as Wrapper>::Inner

Unwraps the wrapper returning the inner type
Source§

fn to_inner(&self) -> Self::Inner
where Self::Inner: Clone,

Clones inner data of the wrapped type and return them
Source§

fn copy(&self) -> Self
where Self: Sized, Self::Inner: Copy,

Copies the wrapped type
Source§

impl<A> WrapperMut for AssignVec<A>

Source§

fn as_inner_mut(&mut self) -> &mut <AssignVec<A> as Wrapper>::Inner

Returns a mutable reference to the inner representation for the wrapper type
Source§

impl<A> Eq for AssignVec<A>

Source§

impl<A> StrictProduct for AssignVec<A>

Source§

impl<A> StructuralPartialEq for AssignVec<A>

Auto Trait Implementations§

§

impl<A> Freeze for AssignVec<A>

§

impl<A> RefUnwindSafe for AssignVec<A>
where A: RefUnwindSafe,

§

impl<A> Send for AssignVec<A>
where A: Send,

§

impl<A> Sync for AssignVec<A>
where A: Sync,

§

impl<A> Unpin for AssignVec<A>
where A: Unpin,

§

impl<A> UnwindSafe for AssignVec<A>
where A: UnwindSafe,

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> 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<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<Q, K> Comparable<K> for Q
where Q: Ord + ?Sized, K: Borrow<Q> + ?Sized,

Source§

fn compare(&self, key: &K) -> Ordering

Compare self to key and return their ordering.
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<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<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<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> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

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

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. 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> VerifyEq for T
where T: Eq,

Source§

fn verify_eq(&self, other: &T) -> bool

Verifies commit-equivalence of two instances of the same type.
Source§

impl<T> VerifyEq for T
where T: Eq,

Source§

fn verify_eq(&self, other: &T) -> bool

Verifies commit-equivalence of two instances of the same type.
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,