pub trait Merge {
// Required method
fn merge(&mut self, other: Self) -> &mut Self;
// Provided methods
fn merge_iter(iterable: impl IntoIterator<Item = Self>) -> Self
where Self: Default { ... }
fn merge_vec(vec: Vec<Self>) -> Self
where Self: Default { ... }
fn merge_slice(slice: &[Self]) -> Self
where Self: Clone + Default { ... }
}
Expand description
A trait describing the action of merging mutltiple objects into a single object of the same type. This represents the inverse of splitting a mesh into components of the same type.
Required Methods§
Provided Methods§
Sourcefn merge_iter(iterable: impl IntoIterator<Item = Self>) -> Selfwhere
Self: Default,
fn merge_iter(iterable: impl IntoIterator<Item = Self>) -> Selfwhere
Self: Default,
Merge an iterator of objects into one of the same type.
Sourcefn merge_vec(vec: Vec<Self>) -> Selfwhere
Self: Default,
fn merge_vec(vec: Vec<Self>) -> Selfwhere
Self: Default,
Merge a Vec
of objects into one of the same type.
Sourcefn merge_slice(slice: &[Self]) -> Self
fn merge_slice(slice: &[Self]) -> Self
In contrast to merge_vec
, this function takes an immutable reference to a collection of
meshes, and creates a brand new mesh that is a union of all the given meshes.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.