rippled
|
Classes | |
class | TaggedFee |
Typedefs | |
template<class T > | |
using | enable_if_unit_t = typename std::enable_if_t< std::is_class_v< T > &&std::is_object_v< typename T::unit_type > &&std::is_object_v< typename T::value_type > > |
template<class T > | |
using | enable_muldiv_source_t = typename std::enable_if_t< can_muldiv_source_v< T > > |
template<class T > | |
using | enable_muldiv_dest_t = typename std::enable_if_t< can_muldiv_dest_v< T > > |
template<class Source1 , class Source2 > | |
using | enable_muldiv_sources_t = typename std::enable_if_t< can_muldiv_sources_v< Source1, Source2 > > |
template<class Source1 , class Source2 , class Dest > | |
using | enable_muldiv_t = typename std::enable_if_t< can_muldiv_v< Source1, Source2, Dest > > |
template<class Source1 , class Source2 , class Dest > | |
using | enable_muldiv_commute_t = typename std::enable_if_t< can_muldiv_commute_v< Source1, Source2, Dest > > |
Functions | |
template<class Char , class Traits , class UnitTag , class T > | |
std::basic_ostream< Char, Traits > & | operator<< (std::basic_ostream< Char, Traits > &os, const TaggedFee< UnitTag, T > &q) |
template<class UnitTag , class T > | |
std::string | to_string (TaggedFee< UnitTag, T > const &amount) |
template<class T > | |
TaggedFee< unitlessTag, T > | scalar (T value) |
template<class Source1 , class Source2 , class Dest , class = enable_muldiv_t<Source1, Source2, Dest>> | |
std::pair< bool, Dest > | mulDivU (Source1 value, Dest mul, Source2 div) |
Variables | |
template<class T , class = enable_if_unit_t<T>> | |
constexpr bool | is_usable_unit_v |
is_usable_unit_v is checked to ensure that only values with known valid type tags can be used (sometimes transparently) in non-fee contexts. More... | |
template<class Source , class = enable_if_unit_t<Source>> | |
constexpr bool | can_muldiv_source_v |
template<class Dest , class = enable_if_unit_t<Dest>> | |
constexpr bool | can_muldiv_dest_v |
template<class Source1 , class Source2 , class = enable_if_unit_t<Source1>, class = enable_if_unit_t<Source2>> | |
constexpr bool | can_muldiv_sources_v |
template<class Source1 , class Source2 , class Dest , class = enable_if_unit_t<Source1>, class = enable_if_unit_t<Source2>, class = enable_if_unit_t<Dest>> | |
constexpr bool | can_muldiv_v |
template<class Source1 , class Source2 , class Dest , class = enable_if_unit_t<Source1>, class = enable_if_unit_t<Source2>, class = enable_if_unit_t<Dest>> | |
constexpr bool | can_muldiv_commute_v |
using ripple::feeunit::enable_if_unit_t = typedef typename std::enable_if_t< std::is_class_v<T> && std::is_object_v<typename T::unit_type> && std::is_object_v<typename T::value_type> > |
Definition at line 53 of file FeeUnits.h.
using ripple::feeunit::enable_muldiv_source_t = typedef typename std::enable_if_t<can_muldiv_source_v<T> > |
Definition at line 383 of file FeeUnits.h.
using ripple::feeunit::enable_muldiv_dest_t = typedef typename std::enable_if_t<can_muldiv_dest_v<T> > |
Definition at line 386 of file FeeUnits.h.
using ripple::feeunit::enable_muldiv_sources_t = typedef typename std::enable_if_t<can_muldiv_sources_v<Source1, Source2> > |
Definition at line 390 of file FeeUnits.h.
using ripple::feeunit::enable_muldiv_t = typedef typename std::enable_if_t<can_muldiv_v<Source1, Source2, Dest> > |
Definition at line 394 of file FeeUnits.h.
using ripple::feeunit::enable_muldiv_commute_t = typedef typename std::enable_if_t<can_muldiv_commute_v<Source1, Source2, Dest> > |
Definition at line 398 of file FeeUnits.h.
std::basic_ostream<Char, Traits>& ripple::feeunit::operator<< | ( | std::basic_ostream< Char, Traits > & | os, |
const TaggedFee< UnitTag, T > & | q | ||
) |
Definition at line 329 of file FeeUnits.h.
std::string ripple::feeunit::to_string | ( | TaggedFee< UnitTag, T > const & | amount | ) |
Definition at line 336 of file FeeUnits.h.
TaggedFee<unitlessTag, T> ripple::feeunit::scalar | ( | T | value | ) |
Definition at line 402 of file FeeUnits.h.
std::pair<bool, Dest> ripple::feeunit::mulDivU | ( | Source1 | value, |
Dest | mul, | ||
Source2 | div | ||
) |
Definition at line 413 of file FeeUnits.h.
|
constexpr |
is_usable_unit_v
is checked to ensure that only values with known valid type tags can be used (sometimes transparently) in non-fee contexts.
At the time of implementation, this includes all known tags, but more may be added in the future, and they should not be added automatically unless determined to be appropriate.
Definition at line 63 of file FeeUnits.h.
|
constexpr |
Definition at line 342 of file FeeUnits.h.
|
constexpr |
Definition at line 346 of file FeeUnits.h.
|
constexpr |
Definition at line 356 of file FeeUnits.h.
|
constexpr |
Definition at line 367 of file FeeUnits.h.
|
constexpr |
Definition at line 378 of file FeeUnits.h.