20 #include <ripple/app/misc/CanonicalTXSet.h>
21 #include <boost/range/adaptor/transformed.hpp>
40 if (mAccount > rhs.
mAccount)
return true;
42 if (mAccount < rhs.
mAccount)
return false;
44 if (mSeq > rhs.
mSeq)
return true;
46 if (mSeq < rhs.
mSeq)
return false;
48 return mTXid > rhs.
mTXid;
53 if (mAccount < rhs.
mAccount)
return true;
55 if (mAccount > rhs.
mAccount)
return false;
57 if (mSeq < rhs.
mSeq)
return true;
59 if (mSeq > rhs.
mSeq)
return false;
61 return mTXid <= rhs.
mTXid;
66 if (mAccount > rhs.
mAccount)
return true;
68 if (mAccount < rhs.
mAccount)
return false;
70 if (mSeq > rhs.
mSeq)
return true;
72 if (mSeq < rhs.
mSeq)
return false;
74 return mTXid >= rhs.
mTXid;
95 txn->getTransactionID ()),
105 Key keyLow(effectiveAccount, seq, beast::zero);
106 Key keyHigh(effectiveAccount, seq+1, beast::zero);
108 auto range = boost::make_iterator_range(
109 map_.lower_bound(keyLow),
110 map_.lower_bound(keyHigh));
111 auto txRange = boost::adaptors::transform(
range,
112 [](
auto const& p) {
return p.second; });
115 txRange.begin(), txRange.end());
bool operator>(Key const &rhs) const
std::map< Key, std::shared_ptr< STTx const > > map_
bool operator<=(Key const &rhs) const
const SF_Account sfAccount(access, STI_ACCOUNT, 1, "Account")
uint256 accountKey(AccountID const &account)
ClosedInterval< T > range(T low, T high)
Create a closed range interval.
void insert(std::shared_ptr< STTx const > const &txn)
bool operator>=(Key const &rhs) const
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
std::vector< std::shared_ptr< STTx const > > prune(AccountID const &account, std::uint32_t const seq)
bool operator<(Key const &rhs) const