[−][src]Trait tinyvec::Array
A trait for types that are an array.
An "array", for our purposes, has the following properties:
- Owns some number of elements.
- The element type can be generic, but must implement [
Default
]. - The capacity is fixed at compile time, based on the implementing type.
- You can get a shared or mutable slice to the elements.
You are generally not expected to need to implement this yourself. It is
already implemented for all the major array lengths (0..=32
and the powers
of 2 up to 4,096). Additional lengths can easily be added upon request.
Safety Reminder
Just a reminder: this trait is 100% safe, which means that unsafe
code
must not rely on an instance of this trait being correct.
Associated Types
Loading content...Associated Constants
const CAPACITY: usize
The number of slots in the thing.
Required methods
fn as_slice(&self) -> &[Self::Item]
Gives a shared slice over the whole thing.
A correct implementation will return a slice with a length equal to the
CAPACITY
value.
fn as_slice_mut(&mut self) -> &mut [Self::Item]
Gives a unique slice over the whole thing.
A correct implementation will return a slice with a length equal to the
CAPACITY
value.