Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
Loading...
Searching...
No Matches
tpl_paged_value_codec.H File Reference

Fixed-size portable codecs for paged persistent tree payloads. More...

#include <array>
#include <bit>
#include <concepts>
#include <cstddef>
#include <cstdint>
#include <cstring>
#include <limits>
#include <string>
#include <type_traits>
#include <tpl_paged_tree_durability.H>
Include dependency graph for tpl_paged_value_codec.H:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  Aleph::detail::Paged_Value_Codec< T >
 
struct  Aleph::detail::Paged_Value_Codec< std::array< T, N > >
 
struct  Aleph::detail::Paged_Bounded_String_Codec< Capacity, SizeType >
 

Namespaces

namespace  Aleph
 Main namespace for Aleph-w library functions.
 
namespace  Aleph::detail
 

Concepts

concept  Aleph::detail::Fixed_Paged_Value_Codec
 

Functions

constexpr std::uint32_t Aleph::detail::mix_codec_id (const std::uint32_t seed, const std::uint32_t value) noexcept
 
template<typename UInt >
requires (std::is_unsigned_v<UInt>)
void Aleph::detail::encode_unsigned_le (UInt value, unsigned char *out) noexcept
 
template<typename UInt >
requires (std::is_unsigned_v<UInt>)
UInt Aleph::detail::decode_unsigned_le (const unsigned char *in) noexcept
 

Detailed Description

Fixed-size portable codecs for paged persistent tree payloads.

This header centralizes the little-endian fixed-size serialization used by Aleph's paged persistent B-Tree and B+ Tree implementations. The default codecs cover integral types, enums, IEEE-754 float/double, and std::array compositions thereof.

Definition in file tpl_paged_value_codec.H.