pub struct ArrayBundle<T: HasBundleKind> { /* private fields */ }
Expand description
An instantiated array containing a fixed number of elements of T
.
Implementations§
Source§impl<T: HasBundleKind> ArrayBundle<T>
impl<T: HasBundleKind> ArrayBundle<T>
Sourcepub fn num_elems(&self) -> usize
pub fn num_elems(&self) -> usize
The number of elements (of type T) in the array.
Note that this may not be the same as the flattened length of the array.
An array with 10 elements has num_elems = 10
, but if each element
internally contains 2 items, the flattened length of the array is 20.
Sourcepub fn new(kind: T::BundleKind, elems: Vec<T>) -> Self
pub fn new(kind: T::BundleKind, elems: Vec<T>) -> Self
Creates a new array bundle with the given elements.
All elements must have the same bundle kind, which must be equal to kind
.
Panics if this condition is not satisfied.
Trait Implementations§
Source§impl<T: Clone + HasBundleKind> Clone for ArrayBundle<T>where
T::BundleKind: Clone,
impl<T: Clone + HasBundleKind> Clone for ArrayBundle<T>where
T::BundleKind: Clone,
Source§fn clone(&self) -> ArrayBundle<T>
fn clone(&self) -> ArrayBundle<T>
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl<T: Debug + HasBundleKind> Debug for ArrayBundle<T>where
T::BundleKind: Debug,
impl<T: Debug + HasBundleKind> Debug for ArrayBundle<T>where
T::BundleKind: Debug,
Source§impl<'de, T> Deserialize<'de> for ArrayBundle<T>
impl<'de, T> Deserialize<'de> for ArrayBundle<T>
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl<T: HasBundleKind + FlatLen> FlatLen for ArrayBundle<T>
impl<T: HasBundleKind + FlatLen> FlatLen for ArrayBundle<T>
Source§impl<S, T: HasBundleKind + Flatten<S>> Flatten<S> for ArrayBundle<T>
impl<S, T: HasBundleKind + Flatten<S>> Flatten<S> for ArrayBundle<T>
Source§impl<T: HasBundleKind> HasBundleKind for ArrayBundle<T>
impl<T: HasBundleKind> HasBundleKind for ArrayBundle<T>
Source§type BundleKind = Array<<T as HasBundleKind>::BundleKind>
type BundleKind = Array<<T as HasBundleKind>::BundleKind>
The Rust type of the
BundleKind
associated with this bundle.Source§fn kind(&self) -> Self::BundleKind
fn kind(&self) -> Self::BundleKind
Returns the
BundleKind
of this bundle.Source§impl<T: HasBundleKind + HasNestedView<NestedView: HasBundleKind<BundleKind = <T as HasBundleKind>::BundleKind>>> HasNestedView for ArrayBundle<T>
impl<T: HasBundleKind + HasNestedView<NestedView: HasBundleKind<BundleKind = <T as HasBundleKind>::BundleKind>>> HasNestedView for ArrayBundle<T>
Source§type NestedView = ArrayBundle<<T as HasNestedView>::NestedView>
type NestedView = ArrayBundle<<T as HasNestedView>::NestedView>
A view of the nested object. Read more
Source§fn nested_view(&self, parent: &InstancePath) -> NestedView<Self>
fn nested_view(&self, parent: &InstancePath) -> NestedView<Self>
Creates a nested view of the object given a parent node.
Source§impl<T: HasBundleKind, I> Index<I> for ArrayBundle<T>where
I: SliceIndex<[T]>,
impl<T: HasBundleKind, I> Index<I> for ArrayBundle<T>where
I: SliceIndex<[T]>,
Source§impl<T: HasBundleKind, I> IndexMut<I> for ArrayBundle<T>where
I: SliceIndex<[T]>,
impl<T: HasBundleKind, I> IndexMut<I> for ArrayBundle<T>where
I: SliceIndex<[T]>,
Source§impl<T: Ord + HasBundleKind> Ord for ArrayBundle<T>where
T::BundleKind: Ord,
impl<T: Ord + HasBundleKind> Ord for ArrayBundle<T>where
T::BundleKind: Ord,
Source§fn cmp(&self, other: &ArrayBundle<T>) -> Ordering
fn cmp(&self, other: &ArrayBundle<T>) -> Ordering
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl<T: PartialEq + HasBundleKind> PartialEq for ArrayBundle<T>where
T::BundleKind: PartialEq,
impl<T: PartialEq + HasBundleKind> PartialEq for ArrayBundle<T>where
T::BundleKind: PartialEq,
Source§impl<T: PartialOrd + HasBundleKind> PartialOrd for ArrayBundle<T>where
T::BundleKind: PartialOrd,
impl<T: PartialOrd + HasBundleKind> PartialOrd for ArrayBundle<T>where
T::BundleKind: PartialOrd,
Source§impl<T> Serialize for ArrayBundle<T>
impl<T> Serialize for ArrayBundle<T>
Source§impl<T: HasBundleKind + TransformRef> TransformRef for ArrayBundle<T>
impl<T: HasBundleKind + TransformRef> TransformRef for ArrayBundle<T>
Source§fn transform_ref(&self, trans: Transformation) -> Self
fn transform_ref(&self, trans: Transformation) -> Self
Applies matrix-vector
Transformation
trans
.Source§impl<T: HasBundleKind + TranslateRef> TranslateRef for ArrayBundle<T>
impl<T: HasBundleKind + TranslateRef> TranslateRef for ArrayBundle<T>
Source§fn translate_ref(&self, p: Point) -> Self
fn translate_ref(&self, p: Point) -> Self
Translates the shape by
Point
, returning a new shape.Source§impl<S, T: HasBundleKind + Unflatten<<T as HasBundleKind>::BundleKind, S>> Unflatten<Array<<T as HasBundleKind>::BundleKind>, S> for ArrayBundle<T>
impl<S, T: HasBundleKind + Unflatten<<T as HasBundleKind>::BundleKind, S>> Unflatten<Array<<T as HasBundleKind>::BundleKind>, S> for ArrayBundle<T>
Source§fn unflatten<I>(
data: &Array<<T as HasBundleKind>::BundleKind>,
source: &mut I,
) -> Option<Self>where
I: Iterator<Item = S>,
fn unflatten<I>(
data: &Array<<T as HasBundleKind>::BundleKind>,
source: &mut I,
) -> Option<Self>where
I: Iterator<Item = S>,
Unflatten a structure from an iterator. Read more
impl<T: Eq + HasBundleKind> Eq for ArrayBundle<T>where
T::BundleKind: Eq,
impl<T: HasBundleKind> StructuralPartialEq for ArrayBundle<T>
Auto Trait Implementations§
impl<T> Freeze for ArrayBundle<T>
impl<T> RefUnwindSafe for ArrayBundle<T>
impl<T> Send for ArrayBundle<T>
impl<T> Sync for ArrayBundle<T>
impl<T> Unpin for ArrayBundle<T>
impl<T> UnwindSafe for ArrayBundle<T>
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Converts
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
, which can then be
downcast
into Box<dyn ConcreteType>
where ConcreteType
implements Trait
.§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Converts
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
, which can then be further
downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Converts
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Converts
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.§impl<T> DowncastSend for T
impl<T> DowncastSend for T
§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key
and return true
if they are equal.§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Checks if this value is equivalent to the given key. Read more
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T
in a tonic::Request