pub trait CommandDecoder {
type CommandSliceType: SliceWrapper<u8>;
// Required methods
fn decode(
&mut self,
input: &[u8],
input_offset: &mut usize,
output: &mut [Command<Self::CommandSliceType>],
output_offset: &mut usize,
) -> DivansResult;
fn flush(&mut self) -> DivansResult;
}