/// Static Indexed Storage - Reference
pub trait StDenseStoRef {
    type Item;
    fn as_slice(&self) -> &[Self::Item];
}

#[cfg(feature = "std")]
impl<T> StDenseStoRef for Vec<T> {
    type Item = T;
    fn as_slice(&self) -> &[Self::Item] {
        &self[..]
    }
}

impl<'a, T> StDenseStoRef for &'a [T] {
    type Item = T;
    fn as_slice(&self) -> &[Self::Item] {
        &self
    }
}

impl<'a, T> StDenseStoRef for &'a mut [T] {
    type Item = T;
    fn as_slice(&self) -> &[Self::Item] {
        &self
    }
}
