|
rippled
|
#include <STObject.h>


Classes | |
| class | FieldErr |
| class | OptionalProxy |
| class | Proxy |
| struct | Transform |
| class | ValueProxy |
Public Types | |
| using | iterator = boost::transform_iterator< Transform, STObject::list_type::const_iterator > |
Public Member Functions | |
| virtual | ~STObject ()=default |
| STObject (STObject const &)=default | |
| template<typename F > | |
| STObject (SOTemplate const &type, SField const &name, F &&f) | |
| STObject & | operator= (STObject const &)=default |
| STObject (STObject &&) | |
| STObject & | operator= (STObject &&other) |
| STObject (SOTemplate const &type, SField const &name) | |
| STObject (SOTemplate const &type, SerialIter &sit, SField const &name) | |
| STObject (SerialIter &sit, SField const &name, int depth=0) | |
| STObject (SerialIter &&sit, SField const &name) | |
| STObject (SField const &name) | |
| iterator | begin () const |
| iterator | end () const |
| bool | empty () const |
| void | reserve (std::size_t n) |
| void | applyTemplate (SOTemplate const &type) |
| void | applyTemplateFromSField (SField const &) |
| bool | isFree () const |
| void | set (SOTemplate const &) |
| bool | set (SerialIter &u, int depth=0) |
| SerializedTypeID | getSType () const override |
| bool | isEquivalent (STBase const &t) const override |
| bool | isDefault () const override |
| void | add (Serializer &s) const override |
| std::string | getFullText () const override |
| std::string | getText () const override |
| Json::Value | getJson (JsonOptions=JsonOptions::none) const override |
| void | addWithoutSigningFields (Serializer &s) const |
| Serializer | getSerializer () const |
| template<class... Args> | |
| std::size_t | emplace_back (Args &&... args) |
| int | getCount () const |
| bool | setFlag (std::uint32_t) |
| bool | clearFlag (std::uint32_t) |
| bool | isFlag (std::uint32_t) const |
| std::uint32_t | getFlags () const |
| uint256 | getHash (HashPrefix prefix) const |
| uint256 | getSigningHash (HashPrefix prefix) const |
| STBase const & | peekAtIndex (int offset) const |
| STBase & | getIndex (int offset) |
| STBase const * | peekAtPIndex (int offset) const |
| STBase * | getPIndex (int offset) |
| int | getFieldIndex (SField const &field) const |
| SField const & | getFieldSType (int index) const |
| STBase const & | peekAtField (SField const &field) const |
| STBase & | getField (SField const &field) |
| STBase const * | peekAtPField (SField const &field) const |
| STBase * | getPField (SField const &field, bool createOkay=false) |
| unsigned char | getFieldU8 (SField const &field) const |
| std::uint16_t | getFieldU16 (SField const &field) const |
| std::uint32_t | getFieldU32 (SField const &field) const |
| std::uint64_t | getFieldU64 (SField const &field) const |
| uint128 | getFieldH128 (SField const &field) const |
| uint160 | getFieldH160 (SField const &field) const |
| uint192 | getFieldH192 (SField const &field) const |
| uint256 | getFieldH256 (SField const &field) const |
| std::int32_t | getFieldI32 (SField const &field) const |
| AccountID | getAccountID (SField const &field) const |
| Blob | getFieldVL (SField const &field) const |
| STAmount const & | getFieldAmount (SField const &field) const |
| STPathSet const & | getFieldPathSet (SField const &field) const |
| STVector256 const & | getFieldV256 (SField const &field) const |
| STObject | getFieldObject (SField const &field) const |
| STArray const & | getFieldArray (SField const &field) const |
| STCurrency const & | getFieldCurrency (SField const &field) const |
| STNumber const & | getFieldNumber (SField const &field) const |
| template<class T > | |
| T::value_type | operator[] (TypedField< T > const &f) const |
| Get the value of a field. | |
| template<class T > | |
| std::optional< std::decay_t< typename T::value_type > > | operator[] (OptionaledField< T > const &of) const |
| Get the value of a field as a std::optional. | |
| template<class T > | |
| ValueProxy< T > | operator[] (TypedField< T > const &f) |
| Get a modifiable field value. | |
| template<class T > | |
| OptionalProxy< T > | operator[] (OptionaledField< T > const &of) |
| Return a modifiable field value as std::optional. | |
| template<class T > | |
| T::value_type | at (TypedField< T > const &f) const |
| Get the value of a field. | |
| template<class T > | |
| std::optional< std::decay_t< typename T::value_type > > | at (OptionaledField< T > const &of) const |
| Get the value of a field as std::optional. | |
| template<class T > | |
| ValueProxy< T > | at (TypedField< T > const &f) |
| Get a modifiable field value. | |
| template<class T > | |
| OptionalProxy< T > | at (OptionaledField< T > const &of) |
| Return a modifiable field value as std::optional. | |
| void | set (std::unique_ptr< STBase > v) |
| Set a field. | |
| void | set (STBase &&v) |
| void | setFieldU8 (SField const &field, unsigned char) |
| void | setFieldU16 (SField const &field, std::uint16_t) |
| void | setFieldU32 (SField const &field, std::uint32_t) |
| void | setFieldU64 (SField const &field, std::uint64_t) |
| void | setFieldH128 (SField const &field, uint128 const &) |
| void | setFieldH256 (SField const &field, uint256 const &) |
| void | setFieldI32 (SField const &field, std::int32_t) |
| void | setFieldVL (SField const &field, Blob const &) |
| void | setFieldVL (SField const &field, Slice const &) |
| void | setAccountID (SField const &field, AccountID const &) |
| void | setFieldAmount (SField const &field, STAmount const &) |
| void | setFieldIssue (SField const &field, STIssue const &) |
| void | setFieldCurrency (SField const &field, STCurrency const &) |
| void | setFieldNumber (SField const &field, STNumber const &) |
| void | setFieldPathSet (SField const &field, STPathSet const &) |
| void | setFieldV256 (SField const &field, STVector256 const &v) |
| void | setFieldArray (SField const &field, STArray const &v) |
| void | setFieldObject (SField const &field, STObject const &v) |
| template<class Tag > | |
| void | setFieldH160 (SField const &field, base_uint< 160, Tag > const &v) |
| STObject & | peekFieldObject (SField const &field) |
| STArray & | peekFieldArray (SField const &field) |
| bool | isFieldPresent (SField const &field) const |
| STBase * | makeFieldPresent (SField const &field) |
| void | makeFieldAbsent (SField const &field) |
| bool | delField (SField const &field) |
| void | delField (int index) |
| SOEStyle | getStyle (SField const &field) const |
| bool | hasMatchingEntry (STBase const &) const |
| bool | operator== (STObject const &o) const |
| bool | operator!= (STObject const &o) const |
| template<class T > | |
| auto | operator[] (TypedField< T > const &f) -> ValueProxy< T > |
| template<class T > | |
| auto | operator[] (OptionaledField< T > const &of) -> OptionalProxy< T > |
| template<class T > | |
| auto | at (TypedField< T > const &f) -> ValueProxy< T > |
| template<class T > | |
| auto | at (OptionaledField< T > const &of) -> OptionalProxy< T > |
| template<typename T , typename V > | |
| V | getFieldByValue (SField const &field) const |
| template<typename T , typename V > | |
| V const & | getFieldByConstRef (SField const &field, V const &empty) const |
| bool | operator== (STBase const &t) const |
| 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 |
| void | setFName (SField const &n) |
| A STBase is a field. | |
| SField const & | getFName () const |
| void | addFieldID (Serializer &s) const |
Static Public Member Functions | |
| static STObject | makeInnerObject (SField const &name) |
Static Protected Member Functions | |
| template<class T > | |
| static STBase * | emplace (std::size_t n, void *buf, T &&val) |
Private Types | |
| enum | WhichFields : bool { omitSigningFields = false , withAllFields = true } |
| using | list_type = std::vector< detail::STVar > |
Private Member Functions | |
| void | add (Serializer &s, WhichFields whichFields) const |
| template<typename T , typename V = typename std::remove_cv< typename std::remove_reference<decltype(std::declval<T>().value())>::type, ::type > | |
| V | getFieldByValue (SField const &field) const |
| template<typename T , typename V > | |
| V const & | getFieldByConstRef (SField const &field, V const &empty) const |
| template<typename T , typename V > | |
| void | setFieldUsingSetValue (SField const &field, V value) |
| template<typename T > | |
| void | setFieldUsingAssignment (SField const &field, T const &value) |
| template<typename T > | |
| T & | peekField (SField const &field) |
| STBase * | copy (std::size_t n, void *buf) const override |
| STBase * | move (std::size_t n, void *buf) override |
Static Private Member Functions | |
| static std::vector< STBase const * > | getSortedFields (STObject const &objToSort, WhichFields whichFields) |
| static auto & | getCounter () noexcept |
Private Attributes | |
| list_type | v_ |
| SOTemplate const * | mType {} |
| SField const * | fName |
Friends | |
| class | detail::STVar |
Definition at line 36 of file STObject.h.
|
private |
Definition at line 57 of file STObject.h.
| using xrpl::STObject::iterator = boost::transform_iterator<Transform, STObject::list_type::const_iterator> |
Definition at line 63 of file STObject.h.
|
private |
| Enumerator | |
|---|---|
| omitSigningFields | |
| withAllFields | |
Definition at line 414 of file STObject.h.
|
virtualdefault |
|
default |
| xrpl::STObject::STObject | ( | SOTemplate const & | type, |
| SField const & | name, | ||
| F && | f | ||
| ) |
Definition at line 69 of file STObject.h.
| xrpl::STObject::STObject | ( | STObject && | other | ) |
Definition at line 44 of file STObject.cpp.
| xrpl::STObject::STObject | ( | SOTemplate const & | type, |
| SField const & | name | ||
| ) |
Definition at line 53 of file STObject.cpp.
| xrpl::STObject::STObject | ( | SOTemplate const & | type, |
| SerialIter & | sit, | ||
| SField const & | name | ||
| ) |
Definition at line 58 of file STObject.cpp.
| xrpl::STObject::STObject | ( | SerialIter & | sit, |
| SField const & | name, | ||
| int | depth = 0 |
||
| ) |
Definition at line 65 of file STObject.cpp.
| xrpl::STObject::STObject | ( | SerialIter && | sit, |
| SField const & | name | ||
| ) |
Definition at line 936 of file STObject.h.
|
explicit |
Definition at line 49 of file STObject.cpp.
Definition at line 125 of file STObject.cpp.
Definition at line 73 of file STObject.cpp.
| STObject::iterator xrpl::STObject::begin | ( | ) | const |
Definition at line 941 of file STObject.h.
| STObject::iterator xrpl::STObject::end | ( | ) | const |
Definition at line 947 of file STObject.h.
| bool xrpl::STObject::empty | ( | ) | const |
Definition at line 953 of file STObject.h.
| void xrpl::STObject::reserve | ( | std::size_t | n | ) |
Definition at line 959 of file STObject.h.
| void xrpl::STObject::applyTemplate | ( | SOTemplate const & | type | ) |
Definition at line 154 of file STObject.cpp.
| void xrpl::STObject::applyTemplateFromSField | ( | SField const & | sField | ) |
Definition at line 204 of file STObject.cpp.
| bool xrpl::STObject::isFree | ( | ) | const |
Definition at line 965 of file STObject.h.
| void xrpl::STObject::set | ( | SOTemplate const & | type | ) |
Definition at line 134 of file STObject.cpp.
| bool xrpl::STObject::set | ( | SerialIter & | u, |
| int | depth = 0 |
||
| ) |
Definition at line 213 of file STObject.cpp.
|
overridevirtual |
Reimplemented from xrpl::STBase.
Reimplemented in xrpl::STTx.
Definition at line 107 of file STObject.cpp.
|
overridevirtual |
Reimplemented from xrpl::STBase.
Definition at line 342 of file STObject.cpp.
|
overridevirtual |
Reimplemented from xrpl::STBase.
Definition at line 113 of file STObject.cpp.
|
overridevirtual |
Reimplemented from xrpl::STBase.
Definition at line 119 of file STObject.cpp.
|
overridevirtual |
Reimplemented from xrpl::STBase.
Reimplemented in xrpl::STTx.
Definition at line 286 of file STObject.cpp.
|
overridevirtual |
Reimplemented from xrpl::STBase.
Definition at line 323 of file STObject.cpp.
|
overridevirtual |
Reimplemented from xrpl::STBase.
Reimplemented in xrpl::STTx.
Definition at line 831 of file STObject.cpp.
| void xrpl::STObject::addWithoutSigningFields | ( | Serializer & | s | ) | const |
Definition at line 971 of file STObject.h.
| Serializer xrpl::STObject::getSerializer | ( | ) | const |
Definition at line 980 of file STObject.h.
| std::size_t xrpl::STObject::emplace_back | ( | Args &&... | args | ) |
Definition at line 989 of file STObject.h.
| int xrpl::STObject::getCount | ( | ) | const |
Definition at line 996 of file STObject.h.
| bool xrpl::STObject::setFlag | ( | std::uint32_t | f | ) |
Definition at line 479 of file STObject.cpp.
| bool xrpl::STObject::clearFlag | ( | std::uint32_t | f | ) |
Definition at line 491 of file STObject.cpp.
| bool xrpl::STObject::isFlag | ( | std::uint32_t | f | ) | const |
Definition at line 503 of file STObject.cpp.
| std::uint32_t xrpl::STObject::getFlags | ( | void | ) | const |
Definition at line 509 of file STObject.cpp.
| uint256 xrpl::STObject::getHash | ( | HashPrefix | prefix | ) | const |
Definition at line 367 of file STObject.cpp.
| uint256 xrpl::STObject::getSigningHash | ( | HashPrefix | prefix | ) | const |
Definition at line 376 of file STObject.cpp.
| STBase const & xrpl::STObject::peekAtIndex | ( | int | offset | ) | const |
Definition at line 1002 of file STObject.h.
| STBase & xrpl::STObject::getIndex | ( | int | offset | ) |
Definition at line 1008 of file STObject.h.
| STBase const * xrpl::STObject::peekAtPIndex | ( | int | offset | ) | const |
Definition at line 1014 of file STObject.h.
| STBase * xrpl::STObject::getPIndex | ( | int | offset | ) |
Definition at line 1020 of file STObject.h.
| int xrpl::STObject::getFieldIndex | ( | SField const & | field | ) | const |
Definition at line 385 of file STObject.cpp.
| SField const & xrpl::STObject::getFieldSType | ( | int | index | ) | const |
Definition at line 423 of file STObject.cpp.
Definition at line 401 of file STObject.cpp.
Definition at line 412 of file STObject.cpp.
Definition at line 429 of file STObject.cpp.
Definition at line 440 of file STObject.cpp.
| unsigned char xrpl::STObject::getFieldU8 | ( | SField const & | field | ) | const |
Definition at line 581 of file STObject.cpp.
| std::uint16_t xrpl::STObject::getFieldU16 | ( | SField const & | field | ) | const |
Definition at line 587 of file STObject.cpp.
| std::uint32_t xrpl::STObject::getFieldU32 | ( | SField const & | field | ) | const |
Definition at line 593 of file STObject.cpp.
| std::uint64_t xrpl::STObject::getFieldU64 | ( | SField const & | field | ) | const |
Definition at line 599 of file STObject.cpp.
Definition at line 605 of file STObject.cpp.
Definition at line 611 of file STObject.cpp.
Definition at line 617 of file STObject.cpp.
Definition at line 623 of file STObject.cpp.
| std::int32_t xrpl::STObject::getFieldI32 | ( | SField const & | field | ) | const |
Definition at line 629 of file STObject.cpp.
Definition at line 635 of file STObject.cpp.
Definition at line 641 of file STObject.cpp.
Definition at line 649 of file STObject.cpp.
Definition at line 656 of file STObject.cpp.
| STVector256 const & xrpl::STObject::getFieldV256 | ( | SField const & | field | ) | const |
Definition at line 663 of file STObject.cpp.
Definition at line 670 of file STObject.cpp.
Definition at line 680 of file STObject.cpp.
| STCurrency const & xrpl::STObject::getFieldCurrency | ( | SField const & | field | ) | const |
Definition at line 687 of file STObject.cpp.
Definition at line 694 of file STObject.cpp.
| T::value_type xrpl::STObject::operator[] | ( | TypedField< T > const & | f | ) | const |
Get the value of a field.
| A | TypedField built from an SField value representing the desired object field. In typical use, the TypedField will be implicitly constructed. |
| STObject::FieldErr | if the field is not present. |
Definition at line 1027 of file STObject.h.
| std::optional< std::decay_t< typename T::value_type > > xrpl::STObject::operator[] | ( | OptionaledField< T > const & | of | ) | const |
Get the value of a field as a std::optional.
| An | OptionaledField built from an SField value representing the desired object field. In typical use, the OptionaledField will be constructed by using the ~ operator on an SField. |
Definition at line 1034 of file STObject.h.
| ValueProxy< T > xrpl::STObject::operator[] | ( | TypedField< T > const & | f | ) |
Get a modifiable field value.
| A | TypedField built from an SField value representing the desired object field. In typical use, the TypedField will be implicitly constructed. |
| STObject::FieldErr | if the field is not present. |
| OptionalProxy< T > xrpl::STObject::operator[] | ( | OptionaledField< T > const & | of | ) |
Return a modifiable field value as std::optional.
| An | OptionaledField built from an SField value representing the desired object field. In typical use, the OptionaledField will be constructed by using the ~ operator on an SField. |
optional holding a modifiable reference to the value of the specified field. Returns std::nullopt if the field is not present. | T::value_type xrpl::STObject::at | ( | TypedField< T > const & | f | ) | const |
Get the value of a field.
| A | TypedField built from an SField value representing the desired object field. In typical use, the TypedField will be implicitly constructed. |
| STObject::FieldErr | if the field is not present. |
Definition at line 1055 of file STObject.h.
| std::optional< std::decay_t< typename T::value_type > > xrpl::STObject::at | ( | OptionaledField< T > const & | of | ) | const |
Get the value of a field as std::optional.
| An | OptionaledField built from an SField value representing the desired object field. In typical use, the OptionaledField will be constructed by using the ~ operator on an SField. |
Definition at line 1085 of file STObject.h.
| ValueProxy< T > xrpl::STObject::at | ( | TypedField< T > const & | f | ) |
Get a modifiable field value.
| A | TypedField built from an SField value representing the desired object field. In typical use, the TypedField will be implicitly constructed. |
| STObject::FieldErr | if the field is not present. |
| OptionalProxy< T > xrpl::STObject::at | ( | OptionaledField< T > const & | of | ) |
Return a modifiable field value as std::optional.
| An | OptionaledField built from an SField value representing the desired object field. In typical use, the OptionaledField will be constructed by using the ~ operator on an SField. |
optional holding a modifiable reference to the value of the specified field. Returns std::nullopt if the field is not present. | void xrpl::STObject::set | ( | std::unique_ptr< STBase > | v | ) |
Set a field.
if the field already exists, it is replaced.
Definition at line 701 of file STObject.cpp.
| void xrpl::STObject::set | ( | STBase && | v | ) |
Definition at line 707 of file STObject.cpp.
| void xrpl::STObject::setFieldU8 | ( | SField const & | field, |
| unsigned char | v | ||
| ) |
Definition at line 723 of file STObject.cpp.
| void xrpl::STObject::setFieldU16 | ( | SField const & | field, |
| std::uint16_t | v | ||
| ) |
Definition at line 729 of file STObject.cpp.
| void xrpl::STObject::setFieldU32 | ( | SField const & | field, |
| std::uint32_t | v | ||
| ) |
Definition at line 735 of file STObject.cpp.
| void xrpl::STObject::setFieldU64 | ( | SField const & | field, |
| std::uint64_t | v | ||
| ) |
Definition at line 741 of file STObject.cpp.
Definition at line 747 of file STObject.cpp.
Definition at line 753 of file STObject.cpp.
| void xrpl::STObject::setFieldI32 | ( | SField const & | field, |
| std::int32_t | v | ||
| ) |
Definition at line 759 of file STObject.cpp.
Definition at line 777 of file STObject.cpp.
Definition at line 783 of file STObject.cpp.
Definition at line 771 of file STObject.cpp.
Definition at line 789 of file STObject.cpp.
Definition at line 801 of file STObject.cpp.
| void xrpl::STObject::setFieldCurrency | ( | SField const & | field, |
| STCurrency const & | v | ||
| ) |
Definition at line 795 of file STObject.cpp.
Definition at line 807 of file STObject.cpp.
Definition at line 813 of file STObject.cpp.
| void xrpl::STObject::setFieldV256 | ( | SField const & | field, |
| STVector256 const & | v | ||
| ) |
Definition at line 765 of file STObject.cpp.
Definition at line 819 of file STObject.cpp.
Definition at line 825 of file STObject.cpp.
| void xrpl::STObject::setFieldH160 | ( | SField const & | field, |
| base_uint< 160, Tag > const & | v | ||
| ) |
Definition at line 1127 of file STObject.h.
Definition at line 467 of file STObject.cpp.
Definition at line 473 of file STObject.cpp.
| bool xrpl::STObject::isFieldPresent | ( | SField const & | field | ) | const |
Definition at line 456 of file STObject.cpp.
Definition at line 520 of file STObject.cpp.
| void xrpl::STObject::makeFieldAbsent | ( | SField const & | field | ) |
Definition at line 542 of file STObject.cpp.
| bool xrpl::STObject::delField | ( | SField const & | field | ) |
Definition at line 557 of file STObject.cpp.
| void xrpl::STObject::delField | ( | int | index | ) |
Definition at line 569 of file STObject.cpp.
Definition at line 575 of file STObject.cpp.
| bool xrpl::STObject::hasMatchingEntry | ( | STBase const & | t | ) | const |
Definition at line 275 of file STObject.cpp.
| bool xrpl::STObject::operator== | ( | STObject const & | o | ) | const |
Definition at line 844 of file STObject.cpp.
| bool xrpl::STObject::operator!= | ( | STObject const & | o | ) | const |
Definition at line 1145 of file STObject.h.
|
private |
Definition at line 884 of file STObject.cpp.
|
staticprivate |
Definition at line 908 of file STObject.cpp.
|
private |
|
private |
|
private |
Definition at line 1202 of file STObject.h.
|
private |
Definition at line 1225 of file STObject.h.
|
private |
Definition at line 1246 of file STObject.h.
|
overrideprivatevirtual |
Reimplemented from xrpl::STBase.
Reimplemented in xrpl::STTx, and xrpl::STValidation.
Definition at line 95 of file STObject.cpp.
|
overrideprivatevirtual |
Reimplemented from xrpl::STBase.
Reimplemented in xrpl::STTx, and xrpl::STValidation.
Definition at line 101 of file STObject.cpp.
| auto xrpl::STObject::operator[] | ( | TypedField< T > const & | f | ) | -> ValueProxy<T> |
Definition at line 1041 of file STObject.h.
| auto xrpl::STObject::operator[] | ( | OptionaledField< T > const & | of | ) | -> OptionalProxy<T> |
Definition at line 1048 of file STObject.h.
| auto xrpl::STObject::at | ( | TypedField< T > const & | f | ) | -> ValueProxy<T> |
Definition at line 1113 of file STObject.h.
| auto xrpl::STObject::at | ( | OptionaledField< T > const & | of | ) | -> OptionalProxy<T> |
Definition at line 1120 of file STObject.h.
| V xrpl::STObject::getFieldByValue | ( | SField const & | field | ) | const |
Definition at line 1152 of file STObject.h.
| V const & xrpl::STObject::getFieldByConstRef | ( | SField const & | field, |
| V const & | empty | ||
| ) | const |
Definition at line 1179 of file STObject.h.
|
inherited |
Definition at line 35 of file STBase.cpp.
|
inherited |
Definition at line 41 of file STBase.cpp.
|
inherited |
|
inherited |
|
inherited |
|
inherited |
|
inherited |
Definition at line 125 of file STBase.cpp.
|
inherited |
Definition at line 131 of file STBase.cpp.
|
staticprotectedinherited |
|
staticprivatenoexceptinherited |
Definition at line 109 of file CountedObject.h.
|
friend |
Definition at line 471 of file STObject.h.
|
private |
Definition at line 59 of file STObject.h.
|
private |
Definition at line 60 of file STObject.h.