[][src]Module compressed_vec::sink

Structs

AddConstSink

A Sink for adding a constant value to all output elements. Note that all SIMD types we use also support Add :) This sink is also used for decoding Delta-encoded u64/u32 values, then passing the output to another sink.

Section256Sink

A simple sink storing up to 256 values in an array, ie all the values in a section. Useful for iterating over or processing all the raw values of a section.

VecSink

A Sink which writes all values to a Vec. A good choice as the final Sink in a chain of Sink processors! Important! This Sink will decode entire sections at a time, so the result will have up to 255 extra values.

XorSink

A sink for FP/XOR decoding. Keeps a running "last bits" octet and XORs each new octet with the last one. Forwards resulting XORed/restored output to another sink.

Traits

Sink

A sink processes data during unpacking. The type, Input, is supposed to represent 8 integers of fixed width, since NibblePack works on 8 ints at a time.

SinkInput

An input to a sink. Sinks take a type which represents 8 values of an int, such as [u64; 8]. Item type represents the underlying type of each individual item in the 8 item SinkInput.

Type Definitions

U32_256Sink
U64_256Sink