pub struct RawStream<'a> {
pub meta: StreamMeta,
pub data: RawStreamData<'a>,
}Expand description
Representation of an encoded stream
Fields§
§meta: StreamMeta§data: RawStreamData<'a>Implementations§
Source§impl RawStream<'_>
impl RawStream<'_>
Sourcepub fn decode_bools(self, dec: &mut Decoder) -> Result<Vec<bool>, MltError>
pub fn decode_bools(self, dec: &mut Decoder) -> Result<Vec<bool>, MltError>
Decode a boolean stream: byte-RLE → packed bitmap → Vec<bool>, charging dec.
pub fn decode_i8s(self, dec: &mut Decoder) -> Result<Vec<i8>, MltError>
pub fn decode_u8s(self, dec: &mut Decoder) -> Result<Vec<u8>, MltError>
pub fn decode_i32s(self, dec: &mut Decoder) -> Result<Vec<i32>, MltError>
pub fn decode_u32s(self, dec: &mut Decoder) -> Result<Vec<u32>, MltError>
pub fn decode_u64s(self, dec: &mut Decoder) -> Result<Vec<u64>, MltError>
pub fn decode_i64s(self, dec: &mut Decoder) -> Result<Vec<i64>, MltError>
Sourcepub fn decode_f32s(self, dec: &mut Decoder) -> Result<Vec<f32>, MltError>
pub fn decode_f32s(self, dec: &mut Decoder) -> Result<Vec<f32>, MltError>
Decode a stream of f32 values from raw little-endian bytes, charging dec.
Sourcepub fn decode_f64s(self, dec: &mut Decoder) -> Result<Vec<f64>, MltError>
pub fn decode_f64s(self, dec: &mut Decoder) -> Result<Vec<f64>, MltError>
Decode a stream of f64 values from raw little-endian bytes, charging dec.
Sourcepub fn decode_bits_u32(
self,
buf: &mut Vec<u32>,
dec: &mut Decoder,
) -> MltResult<()>
pub fn decode_bits_u32( self, buf: &mut Vec<u32>, dec: &mut Decoder, ) -> MltResult<()>
Physically decode the stream into buf as u32 values.
buf is cleared and filled with the decoded words. The caller owns the
buffer and is responsible for deciding whether it constitutes a final
persistent allocation (and therefore should be charged to a Decoder).
Sourcepub fn decode_bits_u64(
self,
buf: &mut Vec<u64>,
dec: &mut Decoder,
) -> MltResult<()>
pub fn decode_bits_u64( self, buf: &mut Vec<u64>, dec: &mut Decoder, ) -> MltResult<()>
Physically decode the stream into buf as u64 values.
buf is cleared and filled with the decoded words. The caller owns the
buffer and is responsible for deciding whether it constitutes a final
persistent allocation (and therefore should be charged to a Decoder).
Source§impl<'a> RawStream<'a>
impl<'a> RawStream<'a>
pub fn new(meta: StreamMeta, data: RawStreamData<'a>) -> Self
pub fn as_bytes(&self) -> &'a [u8] ⓘ
pub fn from_bytes( input: &'a [u8], parser: &mut Parser, ) -> MltRefResult<'a, Self>
pub fn parse_multiple( input: &'a [u8], count: usize, parser: &mut Parser, ) -> MltRefResult<'a, Vec<Self>>
pub fn parse_bool( input: &'a [u8], parser: &mut Parser, ) -> MltRefResult<'a, Self>
Trait Implementations§
Source§impl Analyze for RawStream<'_>
impl Analyze for RawStream<'_>
Source§fn for_each_stream(&self, cb: &mut dyn FnMut(StreamMeta))
fn for_each_stream(&self, cb: &mut dyn FnMut(StreamMeta))
cb with the StreamMeta of every stream contained in self.
Default implementation is a no-op (types that hold no streams).