Crate libquery [] [src]

Traits used internally to query the data.

As we have multiple sources of data (in-memory, the journal and the aggregated data, we define several traits to handle them uniformly during the query.

There are two important traits. One is for the containers (note that the in-memory is actually multiple containers and the files on the disk is one container each), called Container. The other is on the bits of data ‒ flow slices ‒ which is ValueSrc. They depend on further traits.

The plan of how the filtering is done is as follows:

Modules

query

Data structures describing a query to the data contained in the keeper.

Enums

PreFilterResult

Result of the pre_filter call from the PreFilter trait.

Traits

Container

A trait to choose which containers are to be examined to find relevant data.

InTimeInterval

A trait to check if the data fall into the queried time interval.

ValueSrc

A trait to extract values out of flow slices.