20#include <xrpl/basics/Buffer.h>
21#include <xrpl/basics/base_uint.h>
22#include <xrpl/basics/contract.h>
23#include <xrpl/beast/utility/Zero.h>
24#include <xrpl/beast/utility/instrumentation.h>
25#include <xrpl/protocol/AccountID.h>
26#include <xrpl/protocol/SField.h>
27#include <xrpl/protocol/STAccount.h>
28#include <xrpl/protocol/STBase.h>
29#include <xrpl/protocol/Serializer.h>
58 Throw<std::runtime_error>(
"Invalid STAccount size");
70 :
STBase(n), value_(v), default_(false)
83 return emplace(n, buf, std::move(*
this));
96 getFName().isBinary(),
"ripple::STAccount::add : field is binary");
99 "ripple::STAccount::add : valid field type");
111 auto const*
const tPtr =
dynamic_cast<STAccount const*
>(&t);
112 return tPtr && (
default_ == tPtr->default_) && (
value_ == tPtr->value_);
Like std::vector<char> but better.
void add(Serializer &s) const override
AccountID const & value() const noexcept
STBase * copy(std::size_t n, void *buf) const override
SerializedTypeID getSType() const override
STBase * move(std::size_t n, void *buf) override
bool isDefault() const override
std::string getText() const override
bool isEquivalent(STBase const &t) const override
A type which can be exported to a well known binary format.
SField const & getFName() const
static STBase * emplace(std::size_t n, void *buf, T &&val)
int addVL(Blob const &vector)
static std::size_t constexpr bytes
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
std::string toBase58(AccountID const &v)
Convert AccountID to base58 checked string.