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

Internal helpers for snapshot-backed persistent tree wrappers. More...

#include <array>
#include <bit>
#include <cstdint>
#include <cstring>
#include <filesystem>
#include <fstream>
#include <string>
#include <type_traits>
#include <ah-errors.H>
#include <tpl_array.H>
Include dependency graph for tpl_tree_snapshot.H:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  Aleph::detail::Ordered_Tree_Snapshot_Header
 

Namespaces

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

Functions

template<size_t N>
constexpr std::array< char, Ordered_Tree_Snapshot_Magic_SizeAleph::detail::ordered_tree_snapshot_magic (const char(&text)[N]) noexcept
 
bool Aleph::detail::ordered_tree_snapshot_exists (const std::string &file_path)
 
void Aleph::detail::ensure_ordered_tree_snapshot_parent_dir (const std::string &file_path, const char *kind)
 
template<typename Key >
Key Aleph::detail::ordered_tree_read_key (std::istream &in, const std::string &file_path, const char *kind, const std::uint64_t index)
 
template<typename Key >
void Aleph::detail::ordered_tree_write_key (std::ostream &out, const Key &key, const std::string &file_path, const char *kind, const std::uint64_t index)
 
void Aleph::detail::ordered_tree_validate_header (const Ordered_Tree_Snapshot_Header &header, const std::array< char, Ordered_Tree_Snapshot_Magic_Size > &expected_magic, const std::uint32_t expected_key_size, const std::uint64_t expected_min_degree, const std::string &file_path, const char *kind)
 
template<typename Key >
Array< Key > Aleph::detail::load_ordered_tree_snapshot (const std::string &file_path, const std::array< char, Ordered_Tree_Snapshot_Magic_Size > &expected_magic, const std::uint64_t expected_min_degree, const char *kind)
 
template<typename Key >
void Aleph::detail::save_ordered_tree_snapshot (const std::string &file_path, const std::array< char, Ordered_Tree_Snapshot_Magic_Size > &expected_magic, const std::uint64_t expected_min_degree, const Array< Key > &keys, const char *kind)
 

Variables

constexpr size_t Aleph::detail::Ordered_Tree_Snapshot_Magic_Size = 16
 
constexpr std::uint32_t Aleph::detail::Ordered_Tree_Snapshot_Version = 1
 

Detailed Description

Internal helpers for snapshot-backed persistent tree wrappers.

This header centralizes the low-level binary I/O used by Aleph::File_B_Tree and Aleph::File_BPlus_Tree.

Definition in file tpl_tree_snapshot.H.