rippled
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
ripple::XRPEndpointStep< TDerived > Class Template Reference
Inheritance diagram for ripple::XRPEndpointStep< TDerived >:
Inheritance graph
[legend]
Collaboration diagram for ripple::XRPEndpointStep< TDerived >:
Collaboration graph
[legend]

Public Member Functions

 XRPEndpointStep (StrandContext const &ctx, AccountID const &acc)
 
AccountID const & acc () const
 
std::optional< std::pair< AccountID, AccountID > > directStepAccts () const override
 
std::optional< EitherAmountcachedIn () const override
 
std::optional< EitherAmountcachedOut () const override
 
DebtDirection debtDirection (ReadView const &sb, StrandDirection dir) const override
 
std::pair< std::optional< Quality >, DebtDirectionqualityUpperBound (ReadView const &v, DebtDirection prevStepDir) const override
 
std::pair< XRPAmount, XRPAmountrevImp (PaymentSandbox &sb, ApplyView &afView, boost::container::flat_set< uint256 > &ofrsToRm, XRPAmount const &out)
 
std::pair< XRPAmount, XRPAmountfwdImp (PaymentSandbox &sb, ApplyView &afView, boost::container::flat_set< uint256 > &ofrsToRm, XRPAmount const &in)
 
std::pair< bool, EitherAmountvalidFwd (PaymentSandbox &sb, ApplyView &afView, EitherAmount const &in) override
 
TER check (StrandContext const &ctx) const
 

Protected Member Functions

XRPAmount xrpLiquidImpl (ReadView &sb, std::int32_t reserveReduction) const
 
std::string logStringImpl (char const *name) const
 

Private Member Functions

std::optional< EitherAmountcached () const
 
bool equal (Step const &rhs) const override
 

Private Attributes

AccountID acc_
 
const bool isLast_
 
const beast::Journal j_
 
std::optional< XRPAmountcache_
 

Friends

template<class P >
bool operator== (XRPEndpointStep< P > const &lhs, XRPEndpointStep< P > const &rhs)
 
bool operator!= (XRPEndpointStep const &lhs, XRPEndpointStep const &rhs)
 

Detailed Description

template<class TDerived>
class ripple::XRPEndpointStep< TDerived >

Definition at line 39 of file XRPEndpointStep.cpp.

Constructor & Destructor Documentation

◆ XRPEndpointStep()

template<class TDerived >
ripple::XRPEndpointStep< TDerived >::XRPEndpointStep ( StrandContext const &  ctx,
AccountID const &  acc 
)

Definition at line 61 of file XRPEndpointStep.cpp.

Member Function Documentation

◆ cached()

template<class TDerived >
std::optional<EitherAmount> ripple::XRPEndpointStep< TDerived >::cached ( ) const
private

Definition at line 53 of file XRPEndpointStep.cpp.

◆ acc()

template<class TDerived >
AccountID const& ripple::XRPEndpointStep< TDerived >::acc ( ) const

Definition at line 67 of file XRPEndpointStep.cpp.

◆ directStepAccts()

template<class TDerived >
std::optional<std::pair<AccountID, AccountID> > ripple::XRPEndpointStep< TDerived >::directStepAccts ( ) const
override

Definition at line 73 of file XRPEndpointStep.cpp.

◆ cachedIn()

template<class TDerived >
std::optional<EitherAmount> ripple::XRPEndpointStep< TDerived >::cachedIn ( ) const
override

Definition at line 81 of file XRPEndpointStep.cpp.

◆ cachedOut()

template<class TDerived >
std::optional<EitherAmount> ripple::XRPEndpointStep< TDerived >::cachedOut ( ) const
override

Definition at line 87 of file XRPEndpointStep.cpp.

◆ debtDirection()

template<class TDerived >
DebtDirection ripple::XRPEndpointStep< TDerived >::debtDirection ( ReadView const &  sb,
StrandDirection  dir 
) const
override

Definition at line 93 of file XRPEndpointStep.cpp.

◆ qualityUpperBound()

template<class TDerived >
std::pair< std::optional< Quality >, DebtDirection > ripple::XRPEndpointStep< TDerived >::qualityUpperBound ( ReadView const &  v,
DebtDirection  prevStepDir 
) const
override

Definition at line 246 of file XRPEndpointStep.cpp.

◆ revImp()

template<class TDerived >
std::pair< XRPAmount, XRPAmount > ripple::XRPEndpointStep< TDerived >::revImp ( PaymentSandbox sb,
ApplyView afView,
boost::container::flat_set< uint256 > &  ofrsToRm,
XRPAmount const &  out 
)

Definition at line 257 of file XRPEndpointStep.cpp.

◆ fwdImp()

template<class TDerived >
std::pair< XRPAmount, XRPAmount > ripple::XRPEndpointStep< TDerived >::fwdImp ( PaymentSandbox sb,
ApplyView afView,
boost::container::flat_set< uint256 > &  ofrsToRm,
XRPAmount const &  in 
)

Definition at line 279 of file XRPEndpointStep.cpp.

◆ validFwd()

template<class TDerived >
std::pair< bool, EitherAmount > ripple::XRPEndpointStep< TDerived >::validFwd ( PaymentSandbox sb,
ApplyView afView,
EitherAmount const &  in 
)
override

Definition at line 302 of file XRPEndpointStep.cpp.

◆ check()

template<class TDerived >
TER ripple::XRPEndpointStep< TDerived >::check ( StrandContext const &  ctx) const

Definition at line 337 of file XRPEndpointStep.cpp.

◆ xrpLiquidImpl()

template<class TDerived >
XRPAmount ripple::XRPEndpointStep< TDerived >::xrpLiquidImpl ( ReadView sb,
std::int32_t  reserveReduction 
) const
protected

Definition at line 126 of file XRPEndpointStep.cpp.

◆ logStringImpl()

template<class TDerived >
std::string ripple::XRPEndpointStep< TDerived >::logStringImpl ( char const *  name) const
protected

Definition at line 132 of file XRPEndpointStep.cpp.

◆ equal()

template<class TDerived >
bool ripple::XRPEndpointStep< TDerived >::equal ( Step const &  rhs) const
overrideprivate

Definition at line 152 of file XRPEndpointStep.cpp.

Friends And Related Function Documentation

◆ operator==

template<class TDerived >
template<class P >
bool operator== ( XRPEndpointStep< P > const &  lhs,
XRPEndpointStep< P > const &  rhs 
)
friend

◆ operator!=

template<class TDerived >
bool operator!= ( XRPEndpointStep< TDerived > const &  lhs,
XRPEndpointStep< TDerived > const &  rhs 
)
friend

Definition at line 146 of file XRPEndpointStep.cpp.

Member Data Documentation

◆ acc_

template<class TDerived >
AccountID ripple::XRPEndpointStep< TDerived >::acc_
private

Definition at line 43 of file XRPEndpointStep.cpp.

◆ isLast_

template<class TDerived >
const bool ripple::XRPEndpointStep< TDerived >::isLast_
private

Definition at line 44 of file XRPEndpointStep.cpp.

◆ j_

template<class TDerived >
const beast::Journal ripple::XRPEndpointStep< TDerived >::j_
private

Definition at line 45 of file XRPEndpointStep.cpp.

◆ cache_

template<class TDerived >
std::optional<XRPAmount> ripple::XRPEndpointStep< TDerived >::cache_
private

Definition at line 50 of file XRPEndpointStep.cpp.