xrpld
Loading...
Searching...
No Matches
RawView.h
1#pragma once
2
3#include <xrpl/ledger/ReadView.h>
4#include <xrpl/protocol/STLedgerEntry.h>
5#include <xrpl/protocol/Serializer.h>
6#include <xrpl/protocol/XRPAmount.h>
7
8#include <memory>
9
10namespace xrpl {
11
18{
19public:
20 virtual ~RawView() = default;
21 RawView() = default;
22 RawView(RawView const&) = default;
23 RawView&
24 operator=(RawView const&) = delete;
25
32 virtual void
34
47 virtual void
49
63 virtual void
65
71 virtual void
72 rawDestroyXRP(XRPAmount const& fee) = 0;
73};
74
75//------------------------------------------------------------------------------
76
83class TxsRawView : public RawView
84{
85public:
92 virtual void
94 ReadView::key_type const& key,
96 std::shared_ptr<Serializer const> const& metaData) = 0;
97};
98
99} // namespace xrpl
RawView(RawView const &)=default
RawView()=default
virtual ~RawView()=default
virtual void rawInsert(SLE::ref sle)=0
Unconditionally insert a state item.
virtual void rawReplace(SLE::ref sle)=0
Unconditionally replace a state item.
virtual void rawErase(SLE::ref sle)=0
Delete an existing state item.
RawView & operator=(RawView const &)=delete
virtual void rawDestroyXRP(XRPAmount const &fee)=0
Destroy XRP.
uint256 key_type
Definition ReadView.h:45
std::shared_ptr< STLedgerEntry > const & ref
Interface for changing ledger entries with transactions.
Definition RawView.h:84
virtual void rawTxInsert(ReadView::key_type const &key, std::shared_ptr< Serializer const > const &txn, std::shared_ptr< Serializer const > const &metaData)=0
Add a transaction to the tx map.
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
Definition algorithm.h:5