PineForge unreleased
Deterministic PineScript v6 backtest runtime — C ABI reference
Loading...
Searching...
No Matches
exit_payload_readback.hpp
Go to the documentation of this file.
1#pragma once
2
4
8public:
9 PlacementReadback() noexcept = default;
10 PlacementReadback(const pineforge::detail::CommandScratchStore& store,
11 pineforge::detail::ScratchHandle version) noexcept
12 : PayloadReadback(store, version, pineforge::detail::PayloadSchema::placement) {}
15 return find("source_id", out);
16 }
18 return find("from_entry", out);
19 }
21 return find("comment", out);
22 }
24 return find("oca_name", out);
25 }
27 return find("close_first_id", out);
28 }
29};
31public:
32 PendingReadback() noexcept = default;
33 PendingReadback(const pineforge::detail::CommandScratchStore& store,
34 pineforge::detail::ScratchHandle version) noexcept
35 : PayloadReadback(store, version, pineforge::detail::PayloadSchema::pending) {}
37 pineforge::detail::PayloadChunkBytes& out) const noexcept;
40 const auto status = subobject("request", view);
42 return status;
43 }
46 const auto status = subobject("placement", view);
48 return status;
49 }
50};
51
52namespace detail {
53// Borrow the join's context and keep the field-stream readbacks separate from
54// its owning-value ExitScratchVersions contract and production provider.
57 const PlacementSnapshot&, ScratchHandle& version);
59 const native_order::Request&, ScratchHandle& version);
61 const native_order::Request&, const PlacementSnapshot&,
62 const ScratchByteSource& replacement_key, ScratchHandle& version);
64} // namespace detail
65} // namespace pineforge::source
Paged text emitted from a same-store source.
All reads borrow store/version; no owning row or text reconstruction.
ScratchHandle version() const noexcept
PayloadReadback() noexcept=default
ScratchStatus subobject(std::string_view name, PayloadReadback &out) const noexcept
ScratchStatus find(std::string_view name, PayloadField &out) const noexcept
Complete request schema, including owner text and every opening handle.
pineforge::detail::ScratchStatus replacement_key(pineforge::detail::PayloadChunkBytes &out) const noexcept
pineforge::detail::ScratchStatus placement(PlacementReadback &out) const noexcept
pineforge::detail::ScratchStatus request(native_order::RequestReadback &out) const noexcept
PendingReadback() noexcept=default
pineforge::detail::ScratchStatus source_id(pineforge::detail::PayloadField &out) const noexcept
PlacementReadback(pineforge::detail::PayloadReadback view) noexcept
pineforge::detail::ScratchStatus close_first_id(pineforge::detail::PayloadField &out) const noexcept
pineforge::detail::ScratchStatus comment(pineforge::detail::PayloadField &out) const noexcept
pineforge::detail::ScratchStatus from_entry(pineforge::detail::PayloadField &out) const noexcept
pineforge::detail::ScratchStatus oca_name(pineforge::detail::PayloadField &out) const noexcept
std::uint64_t ScratchHandle
ScratchStatus release_payload_scope(ExitScratchContext &, std::uint64_t scope) noexcept
ScratchStatus freeze_placement(ExitScratchContext &, std::uint64_t scope, const PlacementSnapshot &, ScratchHandle &version)
ScratchStatus freeze_pending(ExitScratchContext &, std::uint64_t scope, const native_order::Request &, const PlacementSnapshot &, const ScratchByteSource &replacement_key, ScratchHandle &version)
ScratchStatus freeze_request(ExitScratchContext &, std::uint64_t scope, const native_order::Request &, ScratchHandle &version)
pineforge::detail::ScratchKeyOrder exit_payload_key_order() noexcept