Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Handling the frame itself

You are reaching the end of the frame parsing! It is time to put the various bits together.

Building the type

✅ Make the frame::ZstandardFrame structure contain three fields: the frame header, a vector of blocks, and an optional checksum.

Parsing

✅ Implement ZstandardFrame::parse() and call it from Frame::parse() in the presence of a Zstandard frame.

This method will need to:

  • parse the header;
  • parse the blocks (there is at least one), and continue doing so as long as the parsed block is not the last one;
  • parse the checksum if it is present according to the frame descriptor header.

Decoding

✅ Implement ZstandardFrame::decode() and call it from Frame::decode() in the presence of a Zstandard frame.

Decoding a frame means decoding each block in turn and concatenating the result.