Everett
Loading...
Searching...
No Matches
Classes | Namespaces | Enumerations | Functions
profile.h File Reference

Declares Everett's profile support. More...

#include <everett/error_detail.h>
#include <everett/policy.h>
#include <everett/key_detail.h>
#include <everett/elias_fano.h>
#include <algorithm>
#include <array>
#include <bit>
#include <cstddef>
#include <cstdint>
#include <cstring>
#include <limits>
#include <memory>
#include <optional>
#include <span>
#include <stdexcept>
#include <string_view>
#include <utility>
#include <vector>

Go to the source code of this file.

Classes

struct  everett::bit_view
 
struct  everett::bit_string
 
struct  everett::bit_comparison
 
struct  everett::profile_anchor< P >
 
struct  everett::profile_metadata
 
struct  everett::profile_record
 
struct  everett::profile_item< P >
 
struct  everett::profile_encoded_record
 
struct  everett::profile_decoded_record< P >
 
struct  everett::profile_query_context< P >
 
struct  everett::profile_comparison_work
 
struct  everett::profile_comparison_item< P >
 
struct  everett::profile_view< P, Role >
 
struct  everett::profile_view< P, Role >::shape_only
 
struct  everett::profile_encoded_cursor< P, Role >
 
struct  everett::profile_cursor< P, Role >
 
struct  everett::profile_array< P, Role >
 
struct  everett::profile_detail::borrowed_sections< P >
 
struct  everett::profile_borrowed_writer< P >
 

Namespaces

namespace  everett
 
namespace  everett::cola_detail
 
namespace  everett::profile_detail
 

Enumerations

enum class  everett::profile_count_code : std::uint8_t { everett::varint , everett::exp_golomb_zero }
 
enum class  everett::profile_bit_order : std::uint8_t { everett::msb_first }
 

Functions

std::uint64_t everett::profile_detail::add (std::uint64_t a, std::uint64_t b)
 
std::uint64_t everett::profile_detail::multiply (std::uint64_t a, std::uint64_t b)
 
std::uint64_t everett::profile_detail::byte_count (std::uint64_t bits) noexcept
 
std::uint64_t everett::profile_detail::low_mask (unsigned width) noexcept
 
std::uint64_t everett::profile_detail::load_bits (bit_view data, std::uint64_t first, unsigned width) noexcept
 
void everett::profile_detail::store_bits (std::byte *target, std::uint64_t at, std::uint64_t value, unsigned width) noexcept
 
void everett::profile_detail::copy_bits (std::byte *target, std::uint64_t first, bit_view source) noexcept
 
template<simd::architecture Arch = simd::scalar>
bit_comparison everett::compare_common_bits (bit_view a, bit_view b)
 
template<simd::architecture Arch = simd::scalar>
int everett::compare_bits (bit_view a, bit_view b)
 
template<class P >
std::uint64_t everett::common_prefix_units (bit_view a, bit_view b)
 
template<class P >
int everett::compare_profile_prefix (profile_anchor< P > key, bit_view query)
 
void everett::profile_detail::resize (bit_string &value, std::uint64_t bits)
 
void everett::profile_detail::copy_into (bit_string &target, std::uint64_t first, bit_view source)
 
void everett::profile_detail::append (bit_string &target, bit_view source)
 
void everett::profile_detail::append_bit (bit_string &target, bool bit)
 
void everett::profile_detail::append_byte (bit_string &target, unsigned value)
 
void everett::profile_detail::put_fixed (bit_string &target, std::uint64_t &at, std::uint64_t value, unsigned width)
 
std::uint64_t everett::profile_detail::read_fixed (bit_view data, std::uint64_t &at, unsigned width)
 
std::uint64_t everett::profile_detail::read_zero_run (bit_view data, std::uint64_t &at, std::uint64_t limit, char const *truncated, char const *overflow)
 
template<class P >
void everett::profile_detail::write_count (bit_string &target, std::uint64_t value)
 
template<class P >
std::uint64_t everett::profile_detail::read_count (bit_view data, std::uint64_t &offset)
 
template<class P >
constexpr std::uint64_t everett::profile_detail::golomb_cutoff ()
 
template<class P >
std::uint64_t everett::profile_detail::backspace_bits (std::uint64_t value)
 
template<class P >
void everett::profile_detail::write_backspace (bit_string &target, std::uint64_t value)
 
template<class P >
std::uint64_t everett::profile_detail::read_backspace (bit_view data, std::uint64_t &offset)
 
template<class P , stream_role Role>
profile_metadata everett::profile_detail::initial_metadata ()
 

Detailed Description

Declares Everett's profile support.

Author
Edward Kmett ekmet.nosp@m.t@gm.nosp@m.ail.c.nosp@m.om
SPDX-FileType: SOURCE
SPDX-FileCopyrightText: 2026 Edward Kmett <ekmett@gmail.com>
SPDX-License-Identifier: BSD-2-Clause OR Apache-2.0