pub trait BinarySource<'de>: Sized {
type Mark;
fn mark(&mut self) -> Result<Self::Mark>;
fn restore(&mut self, mark: &Self::Mark) -> Result<()>;
fn skip(&mut self) -> Result<()>;
fn peek(&mut self) -> Result<u8>;
fn readbytes(&mut self, count: usize) -> Result<Cow<'de, [u8]>>;
fn readbytes_into(&mut self, bs: &mut [u8]) -> Result<()>;
fn packed<D: Embeddable, N: NestedValue<D>, Dec: DomainDecode<D>>(
&mut self,
decode_embedded: Dec
) -> PackedReader<'de, '_, D, N, Dec, Self> { ... }
fn packed_iovalues(
&mut self
) -> PackedReader<'de, '_, IOValue, IOValue, IOValueDomainCodec, Self> { ... }
fn text<D: Embeddable, N: NestedValue<D>, Dec: DomainParse<D>>(
&mut self,
decode_embedded: Dec
) -> TextReader<'de, '_, D, Dec, Self> { ... }
fn text_iovalues(
&mut self
) -> TextReader<'de, '_, IOValue, ViaCodec<IOValueDomainCodec>, Self> { ... }
}