rippled
Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | List of all members
ripple::DirectIPaymentStep Class Reference
Inheritance diagram for ripple::DirectIPaymentStep:
Inheritance graph
[legend]
Collaboration diagram for ripple::DirectIPaymentStep:
Collaboration graph
[legend]

Public Member Functions

bool verifyPrevStepDebtDirection (DebtDirection) const
 
bool verifyDstQualityIn (std::uint32_t dstQIn) const
 
std::uint32_t quality (ReadView const &sb, QualityDirection qDir) const
 
std::pair< IOUAmount, DebtDirectionmaxFlow (ReadView const &sb, IOUAmount const &desired) const
 
TER check (StrandContext const &ctx, std::shared_ptr< const SLE > const &sleSrc) const
 
std::string logString () const override
 
AccountID const & src () const
 
AccountID const & dst () const
 
Currency const & currency () const
 
std::optional< EitherAmountcachedIn () const override
 
std::optional< EitherAmountcachedOut () const override
 
std::optional< AccountIDdirectStepSrcAcct () const override
 
std::optional< std::pair< AccountID, AccountID > > directStepAccts () const override
 
DebtDirection debtDirection (ReadView const &sb, StrandDirection dir) const override
 
std::uint32_t lineQualityIn (ReadView const &v) const override
 
std::pair< std::optional< Quality >, DebtDirectionqualityUpperBound (ReadView const &v, DebtDirection dir) const override
 
std::pair< IOUAmount, IOUAmountrevImp (PaymentSandbox &sb, ApplyView &afView, boost::container::flat_set< uint256 > &ofrsToRm, IOUAmount const &out)
 
std::pair< IOUAmount, IOUAmountfwdImp (PaymentSandbox &sb, ApplyView &afView, boost::container::flat_set< uint256 > &ofrsToRm, IOUAmount const &in)
 
std::pair< bool, EitherAmountvalidFwd (PaymentSandbox &sb, ApplyView &afView, EitherAmount const &in) override
 
TER check (StrandContext const &ctx) const
 
void setCacheLimiting (IOUAmount const &fwdIn, IOUAmount const &fwdSrcToDst, IOUAmount const &fwdOut, DebtDirection srcDebtDir)
 

Protected Member Functions

std::pair< IOUAmount, DebtDirectionmaxPaymentFlow (ReadView const &sb) const
 
std::pair< std::uint32_t, std::uint32_tqualitiesSrcRedeems (ReadView const &sb) const
 
std::pair< std::uint32_t, std::uint32_tqualitiesSrcIssues (ReadView const &sb, DebtDirection prevStepDebtDirection) const
 
std::pair< std::uint32_t, std::uint32_tqualities (ReadView const &sb, DebtDirection srcDebtDir, StrandDirection strandDir) const
 
std::string logStringImpl (char const *name) const
 

Protected Attributes

AccountID src_
 
AccountID dst_
 
Currency currency_
 
Step const *const prevStep_
 
const bool isLast_
 
const beast::Journal j_
 
std::optional< Cache > cache_
 

Private Member Functions

bool equal (Step const &rhs) const override
 

Detailed Description

Definition at line 233 of file DirectStep.cpp.

Member Function Documentation

◆ verifyPrevStepDebtDirection()

bool ripple::DirectIPaymentStep::verifyPrevStepDebtDirection ( DebtDirection  ) const

Definition at line 239 of file DirectStep.cpp.

◆ verifyDstQualityIn()

bool ripple::DirectIPaymentStep::verifyDstQualityIn ( std::uint32_t  dstQIn) const

Definition at line 246 of file DirectStep.cpp.

◆ quality()

std::uint32_t ripple::DirectIPaymentStep::quality ( ReadView const &  sb,
QualityDirection  qDir 
) const

Definition at line 329 of file DirectStep.cpp.

◆ maxFlow()

std::pair< IOUAmount, DebtDirection > ripple::DirectIPaymentStep::maxFlow ( ReadView const &  sb,
IOUAmount const &  desired 
) const

Definition at line 376 of file DirectStep.cpp.

◆ check() [1/2]

TER ripple::DirectIPaymentStep::check ( StrandContext const &  ctx,
std::shared_ptr< const SLE > const &  sleSrc 
) const

Definition at line 404 of file DirectStep.cpp.

◆ logString()

std::string ripple::DirectIPaymentStep::logString ( ) const
override

Definition at line 269 of file DirectStep.cpp.

◆ maxPaymentFlow()

std::pair< IOUAmount, DebtDirection > ripple::DirectStepI< DirectIPaymentStep >::maxPaymentFlow ( ReadView const &  sb) const
protectedinherited

Definition at line 474 of file DirectStep.cpp.

◆ qualitiesSrcRedeems()

std::pair< std::uint32_t, std::uint32_t > ripple::DirectStepI< DirectIPaymentStep >::qualitiesSrcRedeems ( ReadView const &  sb) const
protectedinherited

Definition at line 764 of file DirectStep.cpp.

◆ qualitiesSrcIssues()

std::pair< std::uint32_t, std::uint32_t > ripple::DirectStepI< DirectIPaymentStep >::qualitiesSrcIssues ( ReadView const &  sb,
DebtDirection  prevStepDebtDirection 
) const
protectedinherited

Definition at line 781 of file DirectStep.cpp.

◆ qualities()

std::pair< std::uint32_t, std::uint32_t > ripple::DirectStepI< DirectIPaymentStep >::qualities ( ReadView const &  sb,
DebtDirection  srcDebtDir,
StrandDirection  strandDir 
) const
protectedinherited

Definition at line 804 of file DirectStep.cpp.

◆ src()

Definition at line 107 of file DirectStep.cpp.

◆ dst()

Definition at line 112 of file DirectStep.cpp.

◆ currency()

Currency const& ripple::DirectStepI< DirectIPaymentStep >::currency
inherited

Definition at line 117 of file DirectStep.cpp.

◆ cachedIn()

Definition at line 123 of file DirectStep.cpp.

◆ cachedOut()

Definition at line 131 of file DirectStep.cpp.

◆ directStepSrcAcct()

std::optional<AccountID> ripple::DirectStepI< DirectIPaymentStep >::directStepSrcAcct
overrideinherited

Definition at line 139 of file DirectStep.cpp.

◆ directStepAccts()

Definition at line 145 of file DirectStep.cpp.

◆ debtDirection()

DebtDirection ripple::DirectStepI< DirectIPaymentStep >::debtDirection ( ReadView const &  sb,
StrandDirection  dir 
) const
overrideinherited

Definition at line 490 of file DirectStep.cpp.

◆ lineQualityIn()

std::uint32_t ripple::DirectStepI< DirectIPaymentStep >::lineQualityIn ( ReadView const &  v) const
overrideinherited

Definition at line 826 of file DirectStep.cpp.

◆ qualityUpperBound()

std::pair< std::optional< Quality >, DebtDirection > ripple::DirectStepI< DirectIPaymentStep >::qualityUpperBound ( ReadView const &  v,
DebtDirection  dir 
) const
overrideinherited

Definition at line 834 of file DirectStep.cpp.

◆ revImp()

std::pair< IOUAmount, IOUAmount > ripple::DirectStepI< DirectIPaymentStep >::revImp ( PaymentSandbox sb,
ApplyView afView,
boost::container::flat_set< uint256 > &  ofrsToRm,
IOUAmount const &  out 
)
inherited

Definition at line 504 of file DirectStep.cpp.

◆ fwdImp()

std::pair< IOUAmount, IOUAmount > ripple::DirectStepI< DirectIPaymentStep >::fwdImp ( PaymentSandbox sb,
ApplyView afView,
boost::container::flat_set< uint256 > &  ofrsToRm,
IOUAmount const &  in 
)
inherited

Definition at line 630 of file DirectStep.cpp.

◆ validFwd()

std::pair< bool, EitherAmount > ripple::DirectStepI< DirectIPaymentStep >::validFwd ( PaymentSandbox sb,
ApplyView afView,
EitherAmount const &  in 
)
overrideinherited

Definition at line 710 of file DirectStep.cpp.

◆ check() [2/2]

TER ripple::DirectStepI< DirectIPaymentStep >::check ( StrandContext const &  ctx) const
inherited

Definition at line 875 of file DirectStep.cpp.

◆ setCacheLimiting()

void ripple::DirectStepI< DirectIPaymentStep >::setCacheLimiting ( IOUAmount const &  fwdIn,
IOUAmount const &  fwdSrcToDst,
IOUAmount const &  fwdOut,
DebtDirection  srcDebtDir 
)
inherited

Definition at line 588 of file DirectStep.cpp.

◆ logStringImpl()

std::string ripple::DirectStepI< DirectIPaymentStep >::logStringImpl ( char const *  name) const
protectedinherited

Definition at line 204 of file DirectStep.cpp.

◆ equal()

bool ripple::DirectStepI< DirectIPaymentStep >::equal ( Step const &  rhs) const
overrideprivateinherited

Definition at line 214 of file DirectStep.cpp.

Member Data Documentation

◆ src_

AccountID ripple::DirectStepI< DirectIPaymentStep >::src_
protectedinherited

Definition at line 40 of file DirectStep.cpp.

◆ dst_

AccountID ripple::DirectStepI< DirectIPaymentStep >::dst_
protectedinherited

Definition at line 41 of file DirectStep.cpp.

◆ currency_

Currency ripple::DirectStepI< DirectIPaymentStep >::currency_
protectedinherited

Definition at line 42 of file DirectStep.cpp.

◆ prevStep_

Step const* const ripple::DirectStepI< DirectIPaymentStep >::prevStep_
protectedinherited

Definition at line 45 of file DirectStep.cpp.

◆ isLast_

const bool ripple::DirectStepI< DirectIPaymentStep >::isLast_
protectedinherited

Definition at line 46 of file DirectStep.cpp.

◆ j_

const beast::Journal ripple::DirectStepI< DirectIPaymentStep >::j_
protectedinherited

Definition at line 47 of file DirectStep.cpp.

◆ cache_

std::optional<Cache> ripple::DirectStepI< DirectIPaymentStep >::cache_
protectedinherited

Definition at line 66 of file DirectStep.cpp.