PineForge unreleased
Deterministic PineScript v6 backtest runtime — C ABI reference
Loading...
Searching...
No Matches
pineforge::detail::IdPairStore< Value, MaintainSortedFold > Class Template Reference

#include <id_pair_store.hpp>

Data Structures

class  const_iterator
 
struct  Entry
 
struct  FixtureFoldWork
 
struct  KeyView
 

Public Member Functions

 IdPairStore ()=default
 
 IdPairStore (const IdPairStore &)=delete
 
IdPairStore & operator= (const IdPairStore &)=delete
 
 IdPairStore (IdPairStore &&other) noexcept
 
IdPairStore & operator= (IdPairStore &&other) noexcept
 
void set_directory (const std::string &directory)
 
void clear () noexcept
 
std::size_t size () const noexcept
 
bool empty () const noexcept
 
std::uint64_t disk_bytes () const noexcept
 
const_iterator begin () const
 
const_iterator end () const
 
void bind_scratch_tables (const std::shared_ptr< ScratchSlab > &slab, ScratchResource data, ScratchResource index)
 
template<class Enumerate>
void preflight_keys (const Enumerate &enumerate) const
 
void preflight_assign (std::string_view first, std::optional< std::string_view > second=std::nullopt) const
 
void preflight_joined_single (std::string_view first, char separator, std::string_view last) const
 
void fold_sorted (BrokerStateHashSink &sink) const
 
void fixture_count_io (IdPairScratchFile::FixtureIO *io) noexcept
 
void fixture_count_fold_work (FixtureFoldWork *work) noexcept
 
void fixture_use_memory_reference ()
 
void fixture_force_hash_collisions (std::uint64_t hash)
 
std::optional< Value > lookup (std::string_view id) const
 
std::optional< Value > lookup (std::string_view id, std::string_view from_entry) const
 
Value at (const std::string &id) const
 
bool insert_or_assign (std::string_view id, Value value)
 
bool insert_or_assign (std::string_view id, std::string_view from_entry, Value value)
 
void min_assign (std::string_view id, Value value)
 
void min_assign (std::string_view id, std::string_view from_entry, Value value)
 
bool erase (std::string_view id)
 
bool erase (std::string_view id, std::string_view from_entry)
 

Detailed Description

template<class Value, bool MaintainSortedFold = false>
class pineforge::detail::IdPairStore< Value, MaintainSortedFold >

Definition at line 40 of file id_pair_store.hpp.

Constructor & Destructor Documentation

◆ IdPairStore() [1/3]

template<class Value, bool MaintainSortedFold = false>
pineforge::detail::IdPairStore< Value, MaintainSortedFold >::IdPairStore ( )
default

◆ IdPairStore() [2/3]

template<class Value, bool MaintainSortedFold = false>
pineforge::detail::IdPairStore< Value, MaintainSortedFold >::IdPairStore ( const IdPairStore< Value, MaintainSortedFold > & )
delete

◆ IdPairStore() [3/3]

template<class Value, bool MaintainSortedFold = false>
pineforge::detail::IdPairStore< Value, MaintainSortedFold >::IdPairStore ( IdPairStore< Value, MaintainSortedFold > && other)
inlinenoexcept

Definition at line 177 of file id_pair_store.hpp.

Member Function Documentation

◆ operator=() [1/2]

template<class Value, bool MaintainSortedFold = false>
IdPairStore & pineforge::detail::IdPairStore< Value, MaintainSortedFold >::operator= ( const IdPairStore< Value, MaintainSortedFold > & )
delete

◆ operator=() [2/2]

template<class Value, bool MaintainSortedFold = false>
IdPairStore & pineforge::detail::IdPairStore< Value, MaintainSortedFold >::operator= ( IdPairStore< Value, MaintainSortedFold > && other)
inlinenoexcept

Definition at line 178 of file id_pair_store.hpp.

◆ set_directory()

template<class Value, bool MaintainSortedFold = false>
void pineforge::detail::IdPairStore< Value, MaintainSortedFold >::set_directory ( const std::string & directory)
inline

Definition at line 186 of file id_pair_store.hpp.

◆ clear()

template<class Value, bool MaintainSortedFold = false>
void pineforge::detail::IdPairStore< Value, MaintainSortedFold >::clear ( )
inlinenoexcept

◆ size()

template<class Value, bool MaintainSortedFold = false>
std::size_t pineforge::detail::IdPairStore< Value, MaintainSortedFold >::size ( ) const
inlinenoexcept

Definition at line 210 of file id_pair_store.hpp.

◆ empty()

template<class Value, bool MaintainSortedFold = false>
bool pineforge::detail::IdPairStore< Value, MaintainSortedFold >::empty ( ) const
inlinenoexcept

Definition at line 211 of file id_pair_store.hpp.

◆ disk_bytes()

template<class Value, bool MaintainSortedFold = false>
std::uint64_t pineforge::detail::IdPairStore< Value, MaintainSortedFold >::disk_bytes ( ) const
inlinenoexcept

Definition at line 212 of file id_pair_store.hpp.

◆ begin()

template<class Value, bool MaintainSortedFold = false>
const_iterator pineforge::detail::IdPairStore< Value, MaintainSortedFold >::begin ( ) const
inline

Definition at line 222 of file id_pair_store.hpp.

◆ end()

template<class Value, bool MaintainSortedFold = false>
const_iterator pineforge::detail::IdPairStore< Value, MaintainSortedFold >::end ( ) const
inline

◆ bind_scratch_tables()

template<class Value, bool MaintainSortedFold = false>
void pineforge::detail::IdPairStore< Value, MaintainSortedFold >::bind_scratch_tables ( const std::shared_ptr< ScratchSlab > & slab,
ScratchResource data,
ScratchResource index )
inline

Definition at line 228 of file id_pair_store.hpp.

Referenced by pineforge::detail::bind_id_pair_scratch_tables().

◆ preflight_keys()

template<class Value, bool MaintainSortedFold = false>
template<class Enumerate>
void pineforge::detail::IdPairStore< Value, MaintainSortedFold >::preflight_keys ( const Enumerate & enumerate) const
inline

◆ preflight_assign()

template<class Value, bool MaintainSortedFold = false>
void pineforge::detail::IdPairStore< Value, MaintainSortedFold >::preflight_assign ( std::string_view first,
std::optional< std::string_view > second = std::nullopt ) const
inline

Definition at line 309 of file id_pair_store.hpp.

◆ preflight_joined_single()

template<class Value, bool MaintainSortedFold = false>
void pineforge::detail::IdPairStore< Value, MaintainSortedFold >::preflight_joined_single ( std::string_view first,
char separator,
std::string_view last ) const
inline

Definition at line 317 of file id_pair_store.hpp.

◆ fold_sorted()

template<class Value, bool MaintainSortedFold = false>
void pineforge::detail::IdPairStore< Value, MaintainSortedFold >::fold_sorted ( BrokerStateHashSink & sink) const
inline

Definition at line 360 of file id_pair_store.hpp.

◆ fixture_count_io()

template<class Value, bool MaintainSortedFold = false>
void pineforge::detail::IdPairStore< Value, MaintainSortedFold >::fixture_count_io ( IdPairScratchFile::FixtureIO * io)
inlinenoexcept

Definition at line 374 of file id_pair_store.hpp.

◆ fixture_count_fold_work()

template<class Value, bool MaintainSortedFold = false>
void pineforge::detail::IdPairStore< Value, MaintainSortedFold >::fixture_count_fold_work ( FixtureFoldWork * work)
inlinenoexcept

Definition at line 378 of file id_pair_store.hpp.

◆ fixture_use_memory_reference()

template<class Value, bool MaintainSortedFold = false>
void pineforge::detail::IdPairStore< Value, MaintainSortedFold >::fixture_use_memory_reference ( )
inline

Definition at line 386 of file id_pair_store.hpp.

◆ fixture_force_hash_collisions()

template<class Value, bool MaintainSortedFold = false>
void pineforge::detail::IdPairStore< Value, MaintainSortedFold >::fixture_force_hash_collisions ( std::uint64_t hash)
inline

Definition at line 391 of file id_pair_store.hpp.

◆ lookup() [1/2]

template<class Value, bool MaintainSortedFold = false>
std::optional< Value > pineforge::detail::IdPairStore< Value, MaintainSortedFold >::lookup ( std::string_view id) const
inline

◆ lookup() [2/2]

template<class Value, bool MaintainSortedFold = false>
std::optional< Value > pineforge::detail::IdPairStore< Value, MaintainSortedFold >::lookup ( std::string_view id,
std::string_view from_entry ) const
inline

Definition at line 398 of file id_pair_store.hpp.

◆ at()

template<class Value, bool MaintainSortedFold = false>
Value pineforge::detail::IdPairStore< Value, MaintainSortedFold >::at ( const std::string & id) const
inline

Definition at line 401 of file id_pair_store.hpp.

◆ insert_or_assign() [1/2]

template<class Value, bool MaintainSortedFold = false>
bool pineforge::detail::IdPairStore< Value, MaintainSortedFold >::insert_or_assign ( std::string_view id,
Value value )
inline

◆ insert_or_assign() [2/2]

template<class Value, bool MaintainSortedFold = false>
bool pineforge::detail::IdPairStore< Value, MaintainSortedFold >::insert_or_assign ( std::string_view id,
std::string_view from_entry,
Value value )
inline

Definition at line 409 of file id_pair_store.hpp.

◆ min_assign() [1/2]

template<class Value, bool MaintainSortedFold = false>
void pineforge::detail::IdPairStore< Value, MaintainSortedFold >::min_assign ( std::string_view id,
Value value )
inline

Definition at line 413 of file id_pair_store.hpp.

◆ min_assign() [2/2]

template<class Value, bool MaintainSortedFold = false>
void pineforge::detail::IdPairStore< Value, MaintainSortedFold >::min_assign ( std::string_view id,
std::string_view from_entry,
Value value )
inline

Definition at line 417 of file id_pair_store.hpp.

◆ erase() [1/2]

template<class Value, bool MaintainSortedFold = false>
bool pineforge::detail::IdPairStore< Value, MaintainSortedFold >::erase ( std::string_view id)
inline

Definition at line 421 of file id_pair_store.hpp.

◆ erase() [2/2]

template<class Value, bool MaintainSortedFold = false>
bool pineforge::detail::IdPairStore< Value, MaintainSortedFold >::erase ( std::string_view id,
std::string_view from_entry )
inline

Definition at line 422 of file id_pair_store.hpp.


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