|
rippled
|
Context needed to build Strand Steps and for error checking. More...

Public Member Functions | |
| StrandContext (ReadView const &view_, std::vector< std::unique_ptr< Step >> const &strand_, AccountID const &strandSrc_, AccountID const &strandDst_, Issue const &strandDeliver_, std::optional< Quality > const &limitQuality_, bool isLast_, bool ownerPaysTransferFee_, bool offerCrossing_, bool isDefaultPath_, std::array< boost::container::flat_set< Issue >, 2 > &seenDirectIssues_, boost::container::flat_set< Issue > &seenBookOuts_, beast::Journal j_) | |
| StrandContext constructor. More... | |
Public Attributes | |
| ReadView const & | view |
| Current ReadView. More... | |
| const AccountID | strandSrc |
| Strand source account. More... | |
| const AccountID | strandDst |
| Strand destination account. More... | |
| const Issue | strandDeliver |
| Issue strand delivers. More... | |
| const std::optional< Quality > | limitQuality |
| Worst accepted quality. More... | |
| const bool | isFirst |
| true if Step is first in Strand More... | |
| const bool | isLast = false |
| true if Step is last in Strand More... | |
| const bool | ownerPaysTransferFee |
| true if owner, not sender, pays fee More... | |
| const bool | offerCrossing |
| true if offer crossing, not payment More... | |
| const bool | isDefaultPath |
| true if Strand is default path More... | |
| const size_t | strandSize |
| Length of Strand. More... | |
| Step const *const | prevStep = nullptr |
| The previous step in the strand. More... | |
| std::array< boost::container::flat_set< Issue >, 2 > & | seenDirectIssues |
| A strand may not include the same account node more than once in the same currency. More... | |
| boost::container::flat_set< Issue > & | seenBookOuts |
| A strand may not include an offer that output the same issue more than once. More... | |
| const beast::Journal | j |
Context needed to build Strand Steps and for error checking.
| ripple::StrandContext::StrandContext | ( | ReadView const & | view_, |
| std::vector< std::unique_ptr< Step >> const & | strand_, | ||
| AccountID const & | strandSrc_, | ||
| AccountID const & | strandDst_, | ||
| Issue const & | strandDeliver_, | ||
| std::optional< Quality > const & | limitQuality_, | ||
| bool | isLast_, | ||
| bool | ownerPaysTransferFee_, | ||
| bool | offerCrossing_, | ||
| bool | isDefaultPath_, | ||
| std::array< boost::container::flat_set< Issue >, 2 > & | seenDirectIssues_, | ||
| boost::container::flat_set< Issue > & | seenBookOuts_, | ||
| beast::Journal | j_ | ||
| ) |
StrandContext constructor.
Journal for logging
| seenDirectIssues_ | For detecting currency loops |
| seenBookOuts_ | For detecting book loops |
Definition at line 575 of file PaySteps.cpp.
| ReadView const& ripple::StrandContext::view |
| const AccountID ripple::StrandContext::strandSrc |
| const AccountID ripple::StrandContext::strandDst |
| const Issue ripple::StrandContext::strandDeliver |
| const std::optional<Quality> ripple::StrandContext::limitQuality |
| const bool ripple::StrandContext::isFirst |
| const bool ripple::StrandContext::isLast = false |
| const bool ripple::StrandContext::ownerPaysTransferFee |
| const bool ripple::StrandContext::offerCrossing |
| const bool ripple::StrandContext::isDefaultPath |
| const size_t ripple::StrandContext::strandSize |
| Step const* const ripple::StrandContext::prevStep = nullptr |
| std::array<boost::container::flat_set<Issue>, 2>& ripple::StrandContext::seenDirectIssues |
A strand may not include the same account node more than once in the same currency.
In a direct step, an account will show up at most twice: once as a src and once as a dst (hence the two element array). The strandSrc and strandDst will only show up once each.
| boost::container::flat_set<Issue>& ripple::StrandContext::seenBookOuts |
| const beast::Journal ripple::StrandContext::j |
1.8.17