const debug … // compressedBlock decompresses a compressed block, storing the decompressed // data in r.buffer. The blockSize argument is the compressed size. // RFC 3.1.1.3. func (r *Reader) compressedBlock(blockSize int) error { … } type seqCode … const seqLiteral … const seqOffset … const seqMatch … type seqCodeInfoData … var seqCodeInfo … // initSeqs reads the Sequences_Section_Header and sets up the FSE // tables used to read the sequence codes. It returns the number of // sequences and the new offset. RFC 3.1.1.3.2.1. func (r *Reader) initSeqs(data block, off int) (int, int, error) { … } // setSeqTable uses the Compression_Mode in mode to set up r.seqTables and // r.seqTableBits for kind. We store these in the Reader because one of // the modes simply reuses the value from the last block in the frame. func (r *Reader) setSeqTable(data block, off int, kind seqCode, mode byte) (int, error) { … } // execSeqs reads and executes the sequences. RFC 3.1.1.3.2.1.2. func (r *Reader) execSeqs(data block, off int, litbuf []byte, seqCount int) error { … } // Copy match bytes from the decoded output, or the window, at offset. func (r *Reader) copyFromWindow(rbr *reverseBitReader, offset, match uint32) error { … }