use crate::traits::{IntoInternalListReader, IntoInternalStructReader};
pub fn get_struct_data_section<'a, T>(value: T) -> &'a [u8]
where
T: IntoInternalStructReader<'a>,
{
value
.into_internal_struct_reader()
.get_data_section_as_blob()
}
pub fn get_struct_pointer_section<'a, T>(value: T) -> crate::any_pointer_list::Reader<'a>
where
T: IntoInternalStructReader<'a>,
{
crate::any_pointer_list::Reader::new(
value
.into_internal_struct_reader()
.get_pointer_section_as_list(),
)
}
pub fn get_list_element_size<'a, T>(value: T) -> crate::private::layout::ElementSize
where
T: IntoInternalListReader<'a>,
{
value.into_internal_list_reader().get_element_size()
}
pub fn get_list_step_size_in_bits<'a, T>(value: T) -> u32
where
T: IntoInternalListReader<'a>,
{
value.into_internal_list_reader().get_step_size_in_bits()
}
pub fn get_list_bytes<'a, T>(value: T) -> &'a [u8]
where
T: IntoInternalListReader<'a>,
{
value.into_internal_list_reader().into_raw_bytes()
}