PineForge unreleased
Deterministic PineScript v6 backtest runtime — C ABI reference
Loading...
Searching...
No Matches
admission_journal_codec.hpp
Go to the documentation of this file.
1#pragma once
4
5namespace pineforge::admission {
6inline namespace market_admission_v2 {
8 std::uint64_t sequence = 0;
9 int rejected_bar = -1;
10 bool rejected = false;
11};
12inline bool rejected_command(Outcome outcome) noexcept {
13 switch (outcome) {
17 default: return false;
18 }
19}
21 detail::ScratchBuffer, JournalRecordSummary&) noexcept;
23 detail::ScratchBuffer, std::uint64_t&) noexcept;
24// Validate the schema and extend the canonical fold in one forward pass.
25// A sequence at/below the frontier is validated without extending the digest.
26// Neither value output is published on failure. The optional diagnostic owns
27// the selected I/O failure across any validation-only error replay. After a
28// skipped text region, any failure replays the old scan for error priority;
29// successful records never replay.
31 detail::ScratchBuffer, JournalRecordSummary&, std::uint64_t&,
32 std::uint64_t after_sequence = 0,
33 std::optional<detail::ReportScratchIoError>* failure = nullptr) noexcept;
34}
35}
detail::ScratchStatus scan_journal_record(const detail::ScratchByteSource &source, detail::ScratchBuffer page, JournalRecordSummary &summary) noexcept
detail::ScratchStatus fold_journal_record(const detail::ScratchByteSource &source, detail::ScratchBuffer page, std::uint64_t &digest) noexcept
detail::ScratchStatus fold_validated_journal_record(const detail::ScratchByteSource &source, detail::ScratchBuffer page, JournalRecordSummary &summary, std::uint64_t &digest, std::uint64_t after_sequence, std::optional< detail::ReportScratchIoError > *failure) noexcept