pub struct PointViewMut<'a, 'b, B: BorrowedMutBuffer<'a>, T: PointType>
where 'a: 'b,
{ /* private fields */ }
Expand description

Like PointView, but provides mutable access to the strongly typed point data. For buffers with unknown memory layout, this means that you have to use PointViewMut::set_at, but if the underlying buffer implements InterleavedBufferMut, you can also get a mutable borrow the a strongly typed point!

Implementations§

source§

impl<'a, 'b, B: BorrowedMutBuffer<'a>, T: PointType> PointViewMut<'a, 'b, B, T>

source

pub fn at(&self, index: usize) -> T

Access the point at index

Panics

If index is out of bounds

source

pub fn set_at(&mut self, index: usize, point: T)

Sets the data for the point at index

Panics

If index is out of bounds

source§

impl<'a, 'b, B: InterleavedBuffer<'a> + BorrowedMutBuffer<'a>, T: PointType> PointViewMut<'a, 'b, B, T>

source

pub fn at_ref<'c>(&'c self, index: usize) -> &'c T
where 'b: 'c,

Access the point at index as an immutable reference

Panics

If index is out of bounds

source

pub fn iter<'c>(&'c self) -> PointIteratorByRef<'c, T>
where 'b: 'c,

Return an iterator over point data by immutable reference

source§

impl<'a, 'b, B: InterleavedBufferMut<'a>, T: PointType> PointViewMut<'a, 'b, B, T>

source

pub fn at_mut<'c>(&'c mut self, index: usize) -> &'c mut T
where 'b: 'c,

Access the point at index as a mutable reference

Panics

If index is out of bounds

source

pub fn iter_mut<'c>(&'c mut self) -> PointIteratorByMut<'c, T>
where 'b: 'c,

Returns an iterator over point data by mutable reference

source

pub fn sort_by<F: Fn(&T, &T) -> Ordering>(&mut self, comparator: F)

Sorts the point buffer using the given comparator function

source§

impl<'a, 'b, B: OwningBuffer<'a>, T: PointType> PointViewMut<'a, 'b, B, T>

source

pub fn push_point(&mut self, point: T)

Push the given point into the underlying buffer

Trait Implementations§

source§

impl<'a, 'b, B: Debug + BorrowedMutBuffer<'a>, T: Debug + PointType> Debug for PointViewMut<'a, 'b, B, T>
where 'a: 'b,

source§

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

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

impl<'a, 'b, 'c, 'd, B1: BorrowedMutBuffer<'a> + 'a, B2: BorrowedMutBuffer<'c> + 'c, T: PointType + PartialEq> PartialEq<PointViewMut<'c, 'd, B2, T>> for PointViewMut<'a, 'b, B1, T>

source§

fn eq(&self, other: &PointViewMut<'c, 'd, B2, T>) -> bool

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

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

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl<'a, 'b, B: BorrowedMutBuffer<'a> + 'a, T: PointType + Eq> Eq for PointViewMut<'a, 'b, B, T>

Auto Trait Implementations§

§

impl<'a, 'b, B, T> RefUnwindSafe for PointViewMut<'a, 'b, B, T>

§

impl<'a, 'b, B, T> Send for PointViewMut<'a, 'b, B, T>
where B: Send, T: Sync,

§

impl<'a, 'b, B, T> Sync for PointViewMut<'a, 'b, B, T>
where B: Sync, T: Sync,

§

impl<'a, 'b, B, T> Unpin for PointViewMut<'a, 'b, B, T>

§

impl<'a, 'b, B, T> !UnwindSafe for PointViewMut<'a, 'b, B, 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> 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> 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> Same for T

§

type Output = T

Should always be Self
§

impl<SS, SP> SupersetOf<SS> for SP
where SS: SubsetOf<SP>,

§

fn to_subset(&self) -> Option<SS>

The inverse inclusion map: attempts to construct self from the equivalent element of its superset. Read more
§

fn is_in_subset(&self) -> bool

Checks if self is actually part of its subset T (and can be converted to it).
§

fn to_subset_unchecked(&self) -> SS

Use with care! Same as self.to_subset but without any property checks. Always succeeds.
§

fn from_subset(element: &SS) -> SP

The inclusion map: converts self to the equivalent element of its superset.
source§

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

§

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>,

§

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.