PineForge unreleased
Deterministic PineScript v6 backtest runtime — C ABI reference
Loading...
Searching...
No Matches
pineforge::detail::ScratchBacking Class Referenceabstract

#include <scratch_backing.hpp>

Public Member Functions

virtual ~ScratchBacking () noexcept=default
 
 ScratchBacking (const ScratchBacking &)=delete
 
ScratchBacking & operator= (const ScratchBacking &)=delete
 
 ScratchBacking (ScratchBacking &&)=delete
 
ScratchBacking & operator= (ScratchBacking &&)=delete
 
ScratchBackingKind kind () const noexcept
 
std::size_t page_size () const noexcept
 
virtual std::uint64_t page_count () const noexcept=0
 
virtual std::optional< std::uint64_t > arena_capacity_bytes () const noexcept
 
virtual const ReportScratchIoError * carried_failure () const noexcept
 
ScratchStatus read_page (ScratchPageId id, ScratchBuffer destination) const noexcept
 
ScratchStatus write_page (ScratchPageId id, ScratchBytes source) noexcept
 
ScratchStatus sync (ScratchDurability durability) noexcept
 

Protected Member Functions

 ScratchBacking (ScratchBackingKind kind, std::size_t page_size, ScratchIoObserver observer={}) noexcept
 
virtual ScratchStatus do_read_page (ScratchPageId, ScratchBuffer) const noexcept=0
 
virtual ScratchStatus do_write_page (ScratchPageId, ScratchBytes) noexcept=0
 
virtual ScratchStatus do_sync (ScratchDurability) noexcept=0
 

Detailed Description

Definition at line 88 of file scratch_backing.hpp.

Constructor & Destructor Documentation

◆ ~ScratchBacking()

virtual pineforge::detail::ScratchBacking::~ScratchBacking ( )
virtualdefaultnoexcept

◆ ScratchBacking() [1/3]

pineforge::detail::ScratchBacking::ScratchBacking ( const ScratchBacking & )
delete

◆ ScratchBacking() [2/3]

pineforge::detail::ScratchBacking::ScratchBacking ( ScratchBacking && )
delete

References ScratchBacking().

◆ ScratchBacking() [3/3]

pineforge::detail::ScratchBacking::ScratchBacking ( ScratchBackingKind kind,
std::size_t page_size,
ScratchIoObserver observer = {} )
inlineprotectednoexcept

Definition at line 132 of file scratch_backing.hpp.

References kind(), and page_size().

Member Function Documentation

◆ operator=() [1/2]

ScratchBacking & pineforge::detail::ScratchBacking::operator= ( const ScratchBacking & )
delete

References ScratchBacking().

◆ operator=() [2/2]

ScratchBacking & pineforge::detail::ScratchBacking::operator= ( ScratchBacking && )
delete

References ScratchBacking().

◆ kind()

ScratchBackingKind pineforge::detail::ScratchBacking::kind ( ) const
inlinenoexcept

Definition at line 96 of file scratch_backing.hpp.

References kind().

Referenced by kind(), and ScratchBacking().

◆ page_size()

◆ page_count()

virtual std::uint64_t pineforge::detail::ScratchBacking::page_count ( ) const
pure virtualnoexcept

◆ arena_capacity_bytes()

virtual std::optional< std::uint64_t > pineforge::detail::ScratchBacking::arena_capacity_bytes ( ) const
inlinevirtualnoexcept

Definition at line 101 of file scratch_backing.hpp.

References arena_capacity_bytes().

Referenced by arena_capacity_bytes().

◆ carried_failure()

virtual const ReportScratchIoError * pineforge::detail::ScratchBacking::carried_failure ( ) const
inlinevirtualnoexcept

Definition at line 107 of file scratch_backing.hpp.

◆ read_page()

ScratchStatus pineforge::detail::ScratchBacking::read_page ( ScratchPageId id,
ScratchBuffer destination ) const
inlinenoexcept

◆ write_page()

ScratchStatus pineforge::detail::ScratchBacking::write_page ( ScratchPageId id,
ScratchBytes source )
inlinenoexcept

◆ sync()

◆ do_read_page()

virtual ScratchStatus pineforge::detail::ScratchBacking::do_read_page ( ScratchPageId ,
ScratchBuffer  ) const
protectedpure virtualnoexcept

◆ do_write_page()

virtual ScratchStatus pineforge::detail::ScratchBacking::do_write_page ( ScratchPageId ,
ScratchBytes  )
protectedpure virtualnoexcept

◆ do_sync()

virtual ScratchStatus pineforge::detail::ScratchBacking::do_sync ( ScratchDurability )
protectedpure virtualnoexcept

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