pub trait FrameDef<'data>: Sealed {
    type Unit: Into<Unit>;

    // Required methods
    fn len(&self) -> usize;
    fn get<'def>(
        &'def self,
        index: usize
    ) -> Option<FieldDef<'data, Self::Unit>>
       where 'data: 'def;

    // Provided methods
    fn is_empty(&self) -> bool { ... }
    fn iter<'def>(&'def self) -> FieldDefIter<'data, 'def, Self> 
       where Self: Sized { ... }
}
Expand description

A parsed data frame definition.

Note: All methods exclude any required metadata fields. See each frame’s definition struct documentation for a list.

Required Associated Types§

Required Methods§

source

fn len(&self) -> usize

Returns the number of fields in the frame.

source

fn get<'def>(&'def self, index: usize) -> Option<FieldDef<'data, Self::Unit>>
where 'data: 'def,

Returns a field definition by its index.

Provided Methods§

source

fn is_empty(&self) -> bool

Returns true if the frame is empty, or none of its fields satisfy the configured filter.

source

fn iter<'def>(&'def self) -> FieldDefIter<'data, 'def, Self>
where Self: Sized,

Iterates over all field definitions in order.

Implementors§

source§

impl<'data> FrameDef<'data> for GpsFrameDef<'data>

source§

impl<'data> FrameDef<'data> for MainFrameDef<'data>

source§

impl<'data> FrameDef<'data> for SlowFrameDef<'data>

source§

impl<'data, F: FrameDef<'data>> FrameDef<'data> for FilteredFrameDef<'_, F>

§

type Unit = <F as FrameDef<'data>>::Unit