20#ifndef RIPPLE_PROTOCOL_STINTEGER_H_INCLUDED
21#define RIPPLE_PROTOCOL_STINTEGER_H_INCLUDED
23#include <xrpl/basics/CountedObject.h>
24#include <xrpl/protocol/STBase.h>
28template <
typename Integer>
63 value() const noexcept;
68 operator Integer() const;
72 copy(
std::
size_t n,
void* buf) const override;
74 move(
std::
size_t n,
void* buf) override;
86template <typename Integer>
91template <
typename Integer>
97template <
typename Integer>
101 return emplace(n, buf, *
this);
104template <
typename Integer>
108 return emplace(n, buf, std::move(*
this));
111template <
typename Integer>
116 getFName().isBinary(),
"ripple::STInteger::add : field is binary");
118 getFName().fieldType == getSType(),
119 "ripple::STInteger::add : field type match");
123template <
typename Integer>
130template <
typename Integer>
135 return v && (value_ == v->
value_);
138template <
typename Integer>
146template <
typename Integer>
153template <
typename Integer>
160template <
typename Integer>
Tracks the number of instances of an object.
A type which can be exported to a well known binary format.
void add(Serializer &s) const override
STInteger & operator=(value_type const &v)
std::string getText() const override
STBase * move(std::size_t n, void *buf) override
value_type value() const noexcept
Json::Value getJson(JsonOptions) const override
STBase * copy(std::size_t n, void *buf) const override
SerializedTypeID getSType() const override
friend class ripple::detail::STVar
bool isEquivalent(STBase const &t) const override
STInteger(SerialIter &sit, SField const &name)
bool isDefault() const override
Use hash_* containers for keys that do not need a cryptographically secure hashing algorithm.
Note, should be treated as flags that can be | and &.