PineForge unreleased
Deterministic PineScript v6 backtest runtime — C ABI reference
Loading...
Searching...
No Matches
pineforge::source::PlacementTable Class Reference

#include <pine_adapter.hpp>

Data Structures

class  Iterator
 

Public Types

using iterator = Iterator<false>
 
using const_iterator = Iterator<true>
 

Public Member Functions

 PlacementTable ()=default
 
 PlacementTable (std::size_t cache_bytes)
 
 PlacementTable (std::size_t cache_bytes, std::size_t sequence_bytes)
 
 PlacementTable (CacheCapacity minima, CacheCapacity sequence)
 
void set_cache_capacity (CacheCapacity minima, CacheCapacity sequence)
 
 PlacementTable (const PlacementTable &)=delete
 
PlacementTable & operator= (const PlacementTable &)=delete
 
 PlacementTable (PlacementTable &&) noexcept=default
 
PlacementTable & operator= (PlacementTable &&) noexcept=default
 
void set_auxiliary_tables_directory (const std::string &directory)
 
void bind_auxiliary_scratch_tables (const std::shared_ptr<::pineforge::detail::ScratchSlab > &)
 
void fixture_use_memory_auxiliary_tables ()
 
std::uint64_t auxiliary_disk_bytes () const noexcept
 
std::size_t size () const noexcept
 
std::size_t max_size () const noexcept
 
std::uint64_t high_water () const noexcept
 
std::array< std::uint64_t, 5 > sequence_work () const noexcept
 
std::uint64_t erased_rows () const noexcept
 
void reserve (std::size_t count)
 
void clear () noexcept
 
std::uint64_t visited_slots () const noexcept
 
iterator begin () noexcept
 
iterator end () noexcept
 
const_iterator begin () const noexcept
 
const_iterator end () const noexcept
 
const_iterator upper_bound (std::uint64_t incarnation) const noexcept
 
template<class Visit>
void visit_rows (Visit &&visit) const
 
iterator find (std::uint64_t incarnation) noexcept
 
const_iterator find (std::uint64_t incarnation) const noexcept
 
bool contains (std::uint64_t incarnation) const noexcept
 
PlacementSnapshot & at (std::uint64_t incarnation)
 
const PlacementSnapshot & at (std::uint64_t incarnation) const
 
template<class... Args>
std::pair< iterator, bool > try_emplace (std::uint64_t incarnation, Args &&... args)
 
void replace (std::uint64_t incarnation, PlacementSnapshot &&snapshot)
 
template<class Enumerate>
void preflight_erased_rows (const Enumerate &enumerate) const
 
bool erase (std::uint64_t incarnation)
 
void compact ()
 
std::uint64_t command_sequence_for (const std::string &source_id, const std::string &from_entry) const
 
bool erased_non_margin_id_outside (const SourceId &first, const SourceId &second) const noexcept
 
std::uint64_t erased_digest () const noexcept
 

Detailed Description

Definition at line 591 of file pine_adapter.hpp.

Member Typedef Documentation

◆ iterator

Definition at line 651 of file pine_adapter.hpp.

◆ const_iterator

Constructor & Destructor Documentation

◆ PlacementTable() [1/6]

pineforge::source::PlacementTable::PlacementTable ( )
default

◆ PlacementTable() [2/6]

pineforge::source::PlacementTable::PlacementTable ( std::size_t cache_bytes)
inlineexplicit

Definition at line 655 of file pine_adapter.hpp.

◆ PlacementTable() [3/6]

pineforge::source::PlacementTable::PlacementTable ( std::size_t cache_bytes,
std::size_t sequence_bytes )
inline

Definition at line 656 of file pine_adapter.hpp.

◆ PlacementTable() [4/6]

pineforge::source::PlacementTable::PlacementTable ( CacheCapacity minima,
CacheCapacity sequence )
inline

Definition at line 659 of file pine_adapter.hpp.

◆ PlacementTable() [5/6]

pineforge::source::PlacementTable::PlacementTable ( const PlacementTable & )
delete

References PlacementTable().

◆ PlacementTable() [6/6]

pineforge::source::PlacementTable::PlacementTable ( PlacementTable && )
defaultnoexcept

References PlacementTable().

Member Function Documentation

◆ set_cache_capacity()

void pineforge::source::PlacementTable::set_cache_capacity ( CacheCapacity minima,
CacheCapacity sequence )
inline

Definition at line 662 of file pine_adapter.hpp.

◆ operator=() [1/2]

PlacementTable & pineforge::source::PlacementTable::operator= ( const PlacementTable & )
delete

References PlacementTable().

◆ operator=() [2/2]

◆ set_auxiliary_tables_directory()

void pineforge::source::PlacementTable::set_auxiliary_tables_directory ( const std::string & directory)

Definition at line 29031 of file pine_adapter.cpp.

References set_auxiliary_tables_directory().

Referenced by operator=(), and set_auxiliary_tables_directory().

◆ bind_auxiliary_scratch_tables()

void pineforge::source::PlacementTable::bind_auxiliary_scratch_tables ( const std::shared_ptr<::pineforge::detail::ScratchSlab > & slab)

◆ fixture_use_memory_auxiliary_tables()

void pineforge::source::PlacementTable::fixture_use_memory_auxiliary_tables ( )

◆ auxiliary_disk_bytes()

std::uint64_t pineforge::source::PlacementTable::auxiliary_disk_bytes ( ) const
noexcept

Definition at line 29049 of file pine_adapter.cpp.

References auxiliary_disk_bytes().

Referenced by auxiliary_disk_bytes(), and operator=().

◆ size()

std::size_t pineforge::source::PlacementTable::size ( ) const
inlinenoexcept

Definition at line 676 of file pine_adapter.hpp.

References size().

Referenced by size().

◆ max_size()

std::size_t pineforge::source::PlacementTable::max_size ( ) const
inlinenoexcept

Definition at line 677 of file pine_adapter.hpp.

◆ high_water()

std::uint64_t pineforge::source::PlacementTable::high_water ( ) const
inlinenoexcept

Definition at line 681 of file pine_adapter.hpp.

◆ sequence_work()

std::array< std::uint64_t, 5 > pineforge::source::PlacementTable::sequence_work ( ) const
noexcept

Definition at line 29919 of file pine_adapter.cpp.

References sequence_work().

Referenced by sequence_work().

◆ erased_rows()

std::uint64_t pineforge::source::PlacementTable::erased_rows ( ) const
inlinenoexcept

Definition at line 683 of file pine_adapter.hpp.

References erased_rows().

Referenced by erased_rows().

◆ reserve()

void pineforge::source::PlacementTable::reserve ( std::size_t count)
inline

Definition at line 686 of file pine_adapter.hpp.

◆ clear()

void pineforge::source::PlacementTable::clear ( )
inlinenoexcept

◆ visited_slots()

std::uint64_t pineforge::source::PlacementTable::visited_slots ( ) const
inlinenoexcept

Definition at line 705 of file pine_adapter.hpp.

◆ begin() [1/2]

iterator pineforge::source::PlacementTable::begin ( )
inlinenoexcept

Definition at line 706 of file pine_adapter.hpp.

◆ end() [1/2]

iterator pineforge::source::PlacementTable::end ( )
inlinenoexcept

Definition at line 710 of file pine_adapter.hpp.

Referenced by find(), and find().

◆ begin() [2/2]

const_iterator pineforge::source::PlacementTable::begin ( ) const
inlinenoexcept

Definition at line 711 of file pine_adapter.hpp.

◆ end() [2/2]

const_iterator pineforge::source::PlacementTable::end ( ) const
inlinenoexcept

Definition at line 715 of file pine_adapter.hpp.

◆ upper_bound()

const_iterator pineforge::source::PlacementTable::upper_bound ( std::uint64_t incarnation) const
inlinenoexcept

Definition at line 717 of file pine_adapter.hpp.

◆ visit_rows()

template<class Visit>
void pineforge::source::PlacementTable::visit_rows ( Visit && visit) const
inline

Definition at line 726 of file pine_adapter.hpp.

◆ find() [1/2]

iterator pineforge::source::PlacementTable::find ( std::uint64_t incarnation)
inlinenoexcept

Definition at line 759 of file pine_adapter.hpp.

References end().

◆ find() [2/2]

const_iterator pineforge::source::PlacementTable::find ( std::uint64_t incarnation) const
inlinenoexcept

Definition at line 763 of file pine_adapter.hpp.

References end().

◆ contains()

bool pineforge::source::PlacementTable::contains ( std::uint64_t incarnation) const
inlinenoexcept

Definition at line 771 of file pine_adapter.hpp.

◆ at() [1/2]

PlacementSnapshot & pineforge::source::PlacementTable::at ( std::uint64_t incarnation)
inline

Definition at line 775 of file pine_adapter.hpp.

Referenced by replace().

◆ at() [2/2]

const PlacementSnapshot & pineforge::source::PlacementTable::at ( std::uint64_t incarnation) const
inline

Definition at line 780 of file pine_adapter.hpp.

◆ try_emplace()

template<class... Args>
std::pair< iterator, bool > pineforge::source::PlacementTable::try_emplace ( std::uint64_t incarnation,
Args &&... args )
inline

Definition at line 787 of file pine_adapter.hpp.

◆ replace()

void pineforge::source::PlacementTable::replace ( std::uint64_t incarnation,
PlacementSnapshot && snapshot )
inline

Definition at line 812 of file pine_adapter.hpp.

References at().

◆ preflight_erased_rows()

template<class Enumerate>
void pineforge::source::PlacementTable::preflight_erased_rows ( const Enumerate & enumerate) const
inline

◆ erase()

bool pineforge::source::PlacementTable::erase ( std::uint64_t incarnation)
inline

◆ compact()

void pineforge::source::PlacementTable::compact ( )

Definition at line 955 of file pine_adapter.cpp.

◆ command_sequence_for()

std::uint64_t pineforge::source::PlacementTable::command_sequence_for ( const std::string & source_id,
const std::string & from_entry ) const

Definition at line 986 of file pine_adapter.cpp.

◆ erased_non_margin_id_outside()

bool pineforge::source::PlacementTable::erased_non_margin_id_outside ( const SourceId & first,
const SourceId & second ) const
inlinenoexcept

Definition at line 867 of file pine_adapter.hpp.

References erased_non_margin_id_outside().

Referenced by erased_non_margin_id_outside().

◆ erased_digest()

std::uint64_t pineforge::source::PlacementTable::erased_digest ( ) const
inlinenoexcept

Definition at line 877 of file pine_adapter.hpp.


The documentation for this class was generated from the following files: