xrpld
Loading...
Searching...
No Matches
LoanEntry.h
1#pragma once
2
3#include <xrpl/basics/base_uint.h>
4#include <xrpl/beast/utility/Journal.h>
5#include <xrpl/ledger/ApplyView.h>
6#include <xrpl/ledger/ReadView.h>
7#include <xrpl/ledger/entries/SLEBase.h>
8#include <xrpl/protocol/Indexes.h>
9#include <xrpl/protocol/LedgerFormats.h>
10#include <xrpl/protocol/SeqProxy.h>
11
12namespace xrpl {
13
14template <typename ViewT>
15class LoanEntry : public SLEBase<ViewT, ltLOAN>
16{
17public:
19
20 // Inherit base constructors: adopt an existing SLE, or resolve one from a
21 // Keylet against the view.
22 using Base::Base;
23
24 explicit LoanEntry(
25 UInt256 const& loanBrokerID,
26 SeqProxy const& loanSeq,
29 : Base(keylet::loan(loanBrokerID, loanSeq), view, j)
30 {
31 }
32
33 explicit LoanEntry(
34 UInt256 const& loanID,
37 : Base(keylet::loan(loanID), view, j)
38 {
39 }
40};
41
44
45} // namespace xrpl
A generic endpoint for log messages.
Definition Journal.h:44
static Sink & getNullSink()
Returns a Sink which does nothing.
LoanEntry(UInt256 const &loanBrokerID, SeqProxy const &loanSeq, Base::ViewRefType view, beast::Journal j=beast::Journal{beast::Journal::getNullSink()})
Definition LoanEntry.h:24
SLEBase< ViewT, ltLOAN > Base
Definition LoanEntry.h:18
LoanEntry(UInt256 const &loanID, Base::ViewRefType view, beast::Journal j=beast::Journal{beast::Journal::getNullSink()})
Definition LoanEntry.h:33
std::conditional_t< kIsWritable, ApplyView &, ReadView const & > ViewRefType
Definition SLEBase.h:106
SLEBase(SLEBase const &)=default
A type that represents either a sequence value or a ticket value.
Definition SeqProxy.h:37
Keylet computation functions.
Definition Indexes.h:40
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
Definition algorithm.h:5
LoanEntry< ApplyView > LoanEntryW
Definition LoanEntry.h:43
BaseUInt< 256 > UInt256
Definition base_uint.h:580
LoanEntry< ReadView > LoanEntryR
Definition LoanEntry.h:42