|
xrpld
|
Intermediate class for any STBase-derived class to store an Asset. More...
#include <STTakesAsset.h>


Public Member Functions | |
| virtual void | associateAsset (Asset const &a) |
| STBase () | |
| STBase (STBase const &)=default | |
| STBase (SField const &n) | |
| STBase & | operator= (STBase const &t) |
| bool | operator== (STBase const &t) const |
| template<class D> | |
| D & | downcast () |
| template<class D> | |
| D const & | downcast () const |
| template<class D> | |
| D const & | downcast () const |
| virtual SerializedTypeID | getSType () const |
| virtual std::string | getFullText () const |
| virtual std::string | getText () const |
| virtual json::Value | getJson (JsonOptions=JsonOptions::Values::None) const |
| virtual void | add (Serializer &s) const |
| virtual bool | isEquivalent (STBase const &t) const |
| virtual bool | isDefault () const |
| void | setFName (SField const &n) |
| A STBase is a field. | |
| SField const & | getFName () const |
| void | addFieldID (Serializer &s) const |
Static Protected Member Functions | |
| template<class T> | |
| static STBase * | emplace (std::size_t n, void *buf, T &&val) |
Protected Attributes | |
| std::optional< Asset > | asset_ |
Private Member Functions | |
| virtual STBase * | copy (std::size_t n, void *buf) const |
| virtual STBase * | move (std::size_t n, void *buf) |
Private Attributes | |
| SField const * | fName_ |
Intermediate class for any STBase-derived class to store an Asset.
In the class definition, this class should be specified as a base class instead of STBase.
Specifically, the Asset is only stored and used at runtime. It should not be serialized to the ledger.
The derived class decides what to do with the Asset, and when. It will not necessarily be set at any given time. As of this writing, only STNumber uses it to round the stored Number to the Asset's precision both when associated, and when serializing the Number.
Definition at line 24 of file STTakesAsset.h.
|
virtual |
Reimplemented in xrpl::STNumber.
Definition at line 38 of file STTakesAsset.h.
Definition at line 134 of file STBase.cpp.
|
default |
|
explicit |
Definition at line 139 of file STBase.cpp.
Definition at line 137 of file STBase.cpp.
|
inherited |
Definition at line 36 of file STBase.cpp.
|
inherited |
|
nodiscardinherited |
|
nodiscardvirtualinherited |
Reimplemented in xrpl::STAccount, xrpl::STAmount, xrpl::STArray, xrpl::STBitString< Bits >, xrpl::STBitString< 128 >, xrpl::STBitString< 160 >, xrpl::STBitString< 192 >, xrpl::STBitString< 256 >, xrpl::STBlob, xrpl::STCurrency, xrpl::STInteger< Integer >, xrpl::STInteger< std::int32_t >, xrpl::STInteger< std::uint16_t >, xrpl::STInteger< std::uint32_t >, xrpl::STInteger< std::uint64_t >, xrpl::STInteger< unsigned char >, xrpl::STIssue, xrpl::STLedgerEntry, xrpl::STNumber, xrpl::STObject, xrpl::STPathSet, xrpl::STTx, xrpl::STVector256, and xrpl::STXChainBridge.
Definition at line 54 of file STBase.cpp.
|
nodiscardvirtualinherited |
Reimplemented in xrpl::STAmount, xrpl::STArray, xrpl::STLedgerEntry, xrpl::STObject, and xrpl::STTx.
Definition at line 60 of file STBase.cpp.
|
nodiscardvirtualinherited |
Reimplemented in xrpl::STAccount, xrpl::STAmount, xrpl::STArray, xrpl::STBitString< Bits >, xrpl::STBitString< 128 >, xrpl::STBitString< 160 >, xrpl::STBitString< 192 >, xrpl::STBitString< 256 >, xrpl::STBlob, xrpl::STCurrency, xrpl::STInteger< Integer >, xrpl::STInteger< std::int32_t >, xrpl::STInteger< std::uint16_t >, xrpl::STInteger< std::uint32_t >, xrpl::STInteger< std::uint64_t >, xrpl::STInteger< unsigned char >, xrpl::STIssue, xrpl::STLedgerEntry, xrpl::STNumber, xrpl::STObject, and xrpl::STXChainBridge.
Definition at line 79 of file STBase.cpp.
|
nodiscardvirtualinherited |
Reimplemented in xrpl::STAmount, xrpl::STArray, xrpl::STCurrency, xrpl::STInteger< Integer >, xrpl::STInteger< std::int32_t >, xrpl::STInteger< std::uint16_t >, xrpl::STInteger< std::uint32_t >, xrpl::STInteger< std::uint64_t >, xrpl::STInteger< unsigned char >, xrpl::STIssue, xrpl::STLedgerEntry, xrpl::STObject, xrpl::STPathSet, xrpl::STTx, xrpl::STVector256, and xrpl::STXChainBridge.
Definition at line 85 of file STBase.cpp.
|
virtualinherited |
Reimplemented in xrpl::STAccount, xrpl::STAmount, xrpl::STArray, xrpl::STBitString< Bits >, xrpl::STBitString< 128 >, xrpl::STBitString< 160 >, xrpl::STBitString< 192 >, xrpl::STBitString< 256 >, xrpl::STBlob, xrpl::STCurrency, xrpl::STInteger< Integer >, xrpl::STInteger< std::int32_t >, xrpl::STInteger< std::uint16_t >, xrpl::STInteger< std::uint32_t >, xrpl::STInteger< std::uint64_t >, xrpl::STInteger< unsigned char >, xrpl::STIssue, xrpl::STNumber, xrpl::STObject, xrpl::STPathSet, xrpl::STVector256, and xrpl::STXChainBridge.
Definition at line 91 of file STBase.cpp.
|
nodiscardvirtualinherited |
Reimplemented in xrpl::STAccount, xrpl::STAmount, xrpl::STArray, xrpl::STBitString< Bits >, xrpl::STBitString< 128 >, xrpl::STBitString< 160 >, xrpl::STBitString< 192 >, xrpl::STBitString< 256 >, xrpl::STBlob, xrpl::STCurrency, xrpl::STInteger< Integer >, xrpl::STInteger< std::int32_t >, xrpl::STInteger< std::uint16_t >, xrpl::STInteger< std::uint32_t >, xrpl::STInteger< std::uint64_t >, xrpl::STInteger< unsigned char >, xrpl::STIssue, xrpl::STNumber, xrpl::STObject, xrpl::STPathSet, xrpl::STVector256, and xrpl::STXChainBridge.
Definition at line 100 of file STBase.cpp.
|
nodiscardvirtualinherited |
Reimplemented in xrpl::STAccount, xrpl::STAmount, xrpl::STArray, xrpl::STBitString< Bits >, xrpl::STBitString< 128 >, xrpl::STBitString< 160 >, xrpl::STBitString< 192 >, xrpl::STBitString< 256 >, xrpl::STBlob, xrpl::STCurrency, xrpl::STInteger< Integer >, xrpl::STInteger< std::int32_t >, xrpl::STInteger< std::uint16_t >, xrpl::STInteger< std::uint32_t >, xrpl::STInteger< std::uint64_t >, xrpl::STInteger< unsigned char >, xrpl::STIssue, xrpl::STNumber, xrpl::STObject, xrpl::STPathSet, xrpl::STVector256, and xrpl::STXChainBridge.
Definition at line 107 of file STBase.cpp.
|
inherited |
|
nodiscardinherited |
Definition at line 120 of file STBase.cpp.
|
inherited |
Definition at line 126 of file STBase.cpp.
|
staticprotectedinherited |
|
privatevirtualinherited |
Reimplemented in xrpl::STAccount, xrpl::STAmount, xrpl::STArray, xrpl::STBitString< Bits >, xrpl::STBitString< 128 >, xrpl::STBitString< 160 >, xrpl::STBitString< 192 >, xrpl::STBitString< 256 >, xrpl::STBlob, xrpl::STCurrency, xrpl::STInteger< Integer >, xrpl::STInteger< std::int32_t >, xrpl::STInteger< std::uint16_t >, xrpl::STInteger< std::uint32_t >, xrpl::STInteger< std::uint64_t >, xrpl::STInteger< unsigned char >, xrpl::STIssue, xrpl::STLedgerEntry, xrpl::STNumber, xrpl::STObject, xrpl::STPathSet, xrpl::STTx, xrpl::STValidation, xrpl::STVector256, and xrpl::STXChainBridge.
Definition at line 42 of file STBase.cpp.
|
privatevirtualinherited |
Reimplemented in xrpl::STAccount, xrpl::STAmount, xrpl::STArray, xrpl::STBitString< Bits >, xrpl::STBitString< 128 >, xrpl::STBitString< 160 >, xrpl::STBitString< 192 >, xrpl::STBitString< 256 >, xrpl::STBlob, xrpl::STCurrency, xrpl::STInteger< Integer >, xrpl::STInteger< std::int32_t >, xrpl::STInteger< std::uint16_t >, xrpl::STInteger< std::uint32_t >, xrpl::STInteger< std::uint64_t >, xrpl::STInteger< unsigned char >, xrpl::STIssue, xrpl::STLedgerEntry, xrpl::STNumber, xrpl::STObject, xrpl::STPathSet, xrpl::STTx, xrpl::STValidation, xrpl::STVector256, and xrpl::STXChainBridge.
Definition at line 48 of file STBase.cpp.
|
protected |
Definition at line 27 of file STTakesAsset.h.