summaryrefslogtreecommitdiffstats
path: root/vendor/tinyvec/src/array/const_generic_impl.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/tinyvec/src/array/const_generic_impl.rs')
-rw-r--r--vendor/tinyvec/src/array/const_generic_impl.rs23
1 files changed, 23 insertions, 0 deletions
diff --git a/vendor/tinyvec/src/array/const_generic_impl.rs b/vendor/tinyvec/src/array/const_generic_impl.rs
new file mode 100644
index 000000000..0b145f168
--- /dev/null
+++ b/vendor/tinyvec/src/array/const_generic_impl.rs
@@ -0,0 +1,23 @@
+use super::Array;
+
+impl<T: Default, const N: usize> Array for [T; N] {
+ type Item = T;
+ const CAPACITY: usize = N;
+
+ #[inline(always)]
+ #[must_use]
+ fn as_slice(&self) -> &[T] {
+ &*self
+ }
+
+ #[inline(always)]
+ #[must_use]
+ fn as_slice_mut(&mut self) -> &mut [T] {
+ &mut *self
+ }
+
+ #[inline(always)]
+ fn default() -> Self {
+ [(); N].map(|_| Default::default())
+ }
+}