20 #ifndef RIPPLE_PROTOCOL_STBITSTRING_H_INCLUDED
21 #define RIPPLE_PROTOCOL_STBITSTRING_H_INCLUDED
23 #include <ripple/beast/utility/Zero.h>
24 #include <ripple/protocol/STBase.h>
28 template <std::
size_t Bits>
29 class STBitString final :
public STBase
56 return emplace(n, buf, *
this);
62 return emplace(n, buf, std::move(*
this));
78 return v && (
value_ == v->value_);
84 assert(fName->isBinary());
85 assert(fName->fieldType ==
getSType());
89 template <
typename Tag>
110 return value_ == beast::zero;
STBitString(const value_type &v)
STBitString(SField const &n)
STBitString(SerialIter &sit, SField const &name)
std::string to_string(ListDisposition disposition)
void setValue(base_uint< Bits, Tag > const &v)
void add(Serializer &s) const override
base_uint< Bits > value_type
bool isDefault() const override
STBitString(SField const &n, const value_type &v)
bool isEquivalent(const STBase &t) const override
STBase * move(std::size_t n, void *buf) override
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
int addBitString(base_uint< Bits, Tag > const &v)
value_type const & value() const
std::string getText() const override
A type which can be exported to a well known binary format.
SerializedTypeID getSType() const override
STBase * copy(std::size_t n, void *buf) const override