211 return container.get<
StrRef>();
219 ref = container.get<
StrRef>();
240 else if (str.empty())
447 container.get<
Char>());
456 &container.get<
Char>(),
467 &container.get<
Char>(),
478 value = container.get<
Char>();
491 container.get<
Char>());
502 container.get<
Char>());
513 container.get<
Char>());
524 container.get<
Char>());
535 container.get<
Char>());
546 container.get<
Char>());
557 container.get<
Char>());
568 container.get<
Char>());
580 container.get<
Char>()))
606 if (
'0' <= original &&
673 static_cast<Integer
>(-1) >
674 static_cast<Integer
>(0)
689 container.get<Integer>());
698 const size_t converted =
700 container.get<Integer>(),
704 assert(converted < size);
705 assert(converted != 0);
719 container.get<Integer>();
721 if (CanFitToChar()(actual))
741 container.get<Integer>());
753 container.get<Integer>());
765 container.get<Integer>());
777 container.get<Integer>());
789 container.get<Integer>());
801 container.get<Integer>());
813 container.get<Integer>());
825 container.get<Integer>());
838 numericCast<Decimal::Mantissa>(
839 container.get<Integer>()),
854 container.get<Integer>()));
1042 const size_t converted =
1048 assert(converted != 0);
1049 assert(converted < size);
1060 value = container.get<
Decimal>();
1100 const size_t converted =
1106 assert(converted < size);
1107 assert(converted != 0);
1168 return "MaturityMonthYear";
1270 sizeof(Enumeration) ==
1463 return BitSet(bits);
1490 result = BitSet(bits);
#define ONIXS_ILINK3_MESSAGING_TAGBASED_NAMESPACE_END
#define ONIXS_ILINK3_MESSAGING_TAGBASED_NAMESPACE_BEGIN
#define ONIXS_ILINK3_EXPORTED_STRUCT
#define ONIXS_ILINK3_NODISCARD
#define ONIXS_ILINK3_FINAL
#define ONIXS_ILINK3_NULLPTR
#define ONIXS_ILINK3_DEFAULT
#define ONIXS_ILINK3_NOTHROW
#define ONIXS_ILINK3_OVERRIDE
Implements the value conversion for integer fields.
bool convert(UInt64 &value, const ValueContainer &container) const noexcept override
Tries to convert the value into an integer.
~IntegerConverter()=default
bool convert(UInt16 &value, const ValueContainer &container) const noexcept override
Tries to convert the value into an integer.
void toStr(std::string &str, const ValueContainer &container) const override
Outputs the text presentation of the value stored in the given container into the given string.
StrRef toStr(Char *buf, size_t size, const ValueContainer &container) const override
bool convert(Int16 &value, const ValueContainer &container) const noexcept override
Tries to convert the value into an integer.
bool convert(Timestamp &value, const ValueContainer &container) const noexcept override
Tries to convert the value into a timestamp.
bool convert(Char &value, const ValueContainer &container) const noexcept override
Tries to convert the value into a character.
bool convert(UInt8 &value, const ValueContainer &container) const noexcept override
Tries to convert the value into an integer.
bool convert(Int32 &value, const ValueContainer &container) const noexcept override
Tries to convert the value into an integer.
bool convert(Int8 &value, const ValueContainer &container) const noexcept override
Tries to convert the value into an integer.
bool convert(Int64 &value, const ValueContainer &container) const noexcept override
Tries to convert the value into an integer.
bool convert(UInt32 &value, const ValueContainer &container) const noexcept override
Tries to convert the value into an integer.
bool convert(Decimal &value, const ValueContainer &container) const noexcept override
Tries to convert the value into a Decimal.
Traits class used to identify a field value.
@ Kind
The kind of the given field value by its type.
The time point without the time-zone information.
Timestamp makeTimestamp(Timestamp::Ticks ticks) noexcept
Make Timestamp helper.
FloatingPointDecimal< Int64, Int32 > Decimal
Universal decimal type.
char Char
Character type alias.
std::string toStr(const FixedPointDecimal< Mantissa, Exponent > &)
Serializes a fixed-point decimal into a string.
std::basic_string_view< Char > StrRef
bool fromStr(Decimal &, const Char *, size_t) noexcept
Deserializes a decimal number from the given text presentation.
Implements the value conversion for fields whose values represent a single character.
bool convert(UInt64 &value, const ValueContainer &container) const noexcept override
Tries to convert the value into an integer.
bool convert(StrRef &ref, const ValueContainer &container) const noexcept override
Tries to convert the value into a string reference.
bool convert(UInt16 &value, const ValueContainer &container) const noexcept override
Tries to convert the value into an integer.
void toStr(std::string &str, const ValueContainer &container) const override
Outputs the text presentation of the value stored in the given container into the given string.
static const ValueConverter & self() noexcept
bool convert(Int16 &value, const ValueContainer &container) const noexcept override
Tries to convert the value into an integer.
StrRef toStr(Char *, size_t, const ValueContainer &container) const noexcept override
bool convert(Char &value, const ValueContainer &container) const noexcept override
Tries to convert the value into a character.
const Char * typeName() const noexcept override
The name of the type whose values are manipulated through the given converter.
bool convert(UInt8 &value, const ValueContainer &container) const noexcept override
Tries to convert the value into an integer.
bool convert(Int32 &value, const ValueContainer &container) const noexcept override
Tries to convert the value into an integer.
bool convert(Int8 &value, const ValueContainer &container) const noexcept override
Tries to convert the value into an integer.
bool convert(Int64 &value, const ValueContainer &container) const noexcept override
Tries to convert the value into an integer.
bool convert(UInt32 &value, const ValueContainer &container) const noexcept override
Tries to convert the value into an integer.
bool convert(Decimal &value, const ValueContainer &container) const noexcept override
Tries to convert the value into a Decimal.
Implements the value conversion the Decimal fields.
void toStr(std::string &str, const ValueContainer &container) const override
Outputs the text presentation of the value stored in the given container into the given string.
StrRef toStr(Char *buf, size_t size, const ValueContainer &container) const override
static const ValueConverter & self() noexcept
const Char * typeName() const noexcept override
The name of the type whose values are manipulated through the given converter.
bool convert(Decimal &value, const ValueContainer &container) const noexcept override
Tries to convert the value into a Decimal.
Implements the value conversion for integer fields.
static const ValueConverter & self() noexcept
const Char * typeName() const noexcept override
The name of the type whose values are manipulated through the given converter.
Implements the value conversion for integer fields.
static const ValueConverter & self() noexcept
const Char * typeName() const noexcept override
The name of the type whose values are manipulated through the given converter.
Implements the value conversion for integer fields.
static const ValueConverter & self() noexcept
const Char * typeName() const noexcept override
The name of the type whose values are manipulated through the given converter.
Implements the value conversion for integer fields.
static const ValueConverter & self() noexcept
const Char * typeName() const noexcept override
The name of the type whose values are manipulated through the given converter.
Implements the value conversion for month-year fields.
void toStr(std::string &str, const ValueContainer &container) const override
Outputs the text presentation of the value stored in the given container into the given string.
static const ValueConverter & self() noexcept
const Char * typeName() const noexcept override
The name of the type whose values are manipulated through the given converter.
bool convert(MaturityMonthYear &value, const ValueContainer &container) const noexcept override
Tries to convert the value into a month-year.
static const ValueConverter & self() noexcept
const Char * typeName() const noexcept override
The name of the type whose values are manipulated through the given converter.
Implements the value conversion for text fields.
bool convert(UInt64 &value, const ValueContainer &container) const noexcept override
Tries to convert the value into an integer.
bool convert(StrRef &ref, const ValueContainer &container) const noexcept override
Tries to convert the value into a string reference.
bool convert(UInt16 &value, const ValueContainer &container) const noexcept override
Tries to convert the value into an integer.
void toStr(std::string &str, const ValueContainer &container) const override
Outputs the text presentation of the value stored in the given container into the given string.
bool convert(Timestamp &value, const ValueContainer &container) const override
Tries to convert the value into a timestamp.
static const ValueConverter & self() noexcept
bool convert(Int16 &value, const ValueContainer &container) const noexcept override
Tries to convert the value into an integer.
StrRef toStr(Char *, size_t, const ValueContainer &container) const noexcept override
bool convert(Char &value, const ValueContainer &container) const noexcept override
Tries to convert the value into a character.
const Char * typeName() const noexcept override
The name of the type whose values are manipulated through the given converter.
bool convert(UInt8 &value, const ValueContainer &container) const noexcept override
Tries to convert the value into an integer.
bool convert(Int32 &value, const ValueContainer &container) const noexcept override
Tries to convert the value into an integer.
bool convert(Int8 &value, const ValueContainer &container) const noexcept override
Tries to convert the value into an integer.
bool convert(Int64 &value, const ValueContainer &container) const noexcept override
Tries to convert the value into an integer.
bool convert(UInt32 &value, const ValueContainer &container) const noexcept override
Tries to convert the value into an integer.
bool convert(Decimal &value, const ValueContainer &container) const noexcept override
Tries to convert the value into a Decimal.
Implements the value conversion for Timestamp fields.
bool convert(UInt64 &value, const ValueContainer &container) const noexcept override
Tries to convert the value into an integer.
void toStr(std::string &str, const ValueContainer &container) const override
Outputs the text presentation of the value stored in the given container into the given string.
StrRef toStr(Char *buf, size_t size, const ValueContainer &container) const override
static const ValueConverter & self() noexcept
bool convert(Timestamp &value, const ValueContainer &container) const noexcept override
Tries to convert the value into a timestamp.
const Char * typeName() const noexcept override
The name of the type whose values are manipulated through the given converter.
bool convert(Int64 &value, const ValueContainer &container) const noexcept override
Tries to convert the value into an integer.
Implements the value conversion for integer fields.
static const ValueConverter & self() noexcept
const Char * typeName() const noexcept override
The name of the type whose values are manipulated through the given converter.
Implements the value conversion for integer fields.
static const ValueConverter & self() noexcept
const Char * typeName() const noexcept override
The name of the type whose values are manipulated through the given converter.
Implements the value conversion for integer fields.
static const ValueConverter & self() noexcept
const Char * typeName() const noexcept override
The name of the type whose values are manipulated through the given converter.
Implements the value conversion for integer fields.
static const ValueConverter & self() noexcept
const Char * typeName() const noexcept override
The name of the type whose values are manipulated through the given converter.
static BitSet convert(const ValueConverter &converter, const ValueContainer &container)
Converters the given value by using the specified value converter and returns the result of conversio...
static bool convert(BitSet &result, const ValueConverter &converter, const ValueContainer &container)
Tries to convert the given value using the given value converter and puts the result of the conversio...
BitSet Result
Type of the conversion output.
Enumeration::Enum Result
Type of the conversion output.
static Result convert(const ValueConverter &converter, const ValueContainer &container)
Converters the given value by using the specified value converter and returns the result of conversio...
static bool convert(Result &result, const ValueConverter &converter, const ValueContainer &container)
Tries to convert the given value using the given value converter and puts the result of the conversio...
Field value traits used in conversion operations.
static Result convert(const ValueConverter &converter, const ValueContainer &container)
Converters the given value by using the specified value converter.
Value Result
Type of the conversion output.
static bool convert(Result &result, const ValueConverter &converter, const ValueContainer &container)
Tries to convert the given value using the given value converter and puts the result of the conversio...
Implements value conversion operations through value conversion traits.
ValueConversionTraits< Value, ValueKind< Value >::Kind > Traits
Conversion traits.
Traits::Result Result
Conversion output type.
Abstraction gathering operations over a value of a particular type stored as a field in a message.
virtual bool convert(UInt16 &, const ValueContainer &) const noexcept
Tries to convert the value into an integer.
virtual bool convert(MaturityMonthYear &, const ValueContainer &) const noexcept
Tries to convert the value into a month-year.
virtual bool convert(UInt8 &, const ValueContainer &) const noexcept
Tries to convert the value into an integer.
virtual bool convert(UInt32 &, const ValueContainer &) const noexcept
Tries to convert the value into an integer.
virtual void toStr(std::string &, const ValueContainer &) const
Outputs the text presentation of the value stored in the given container into the given string.
virtual bool convert(Timestamp &, const ValueContainer &) const
Tries to convert the value into a timestamp.
virtual bool convert(UInt64 &, const ValueContainer &) const noexcept
Tries to convert the value into an integer.
virtual StrRef toStr(Char *, size_t, const ValueContainer &) const
virtual bool convert(Char &, const ValueContainer &) const noexcept
Tries to convert the value into a character.
virtual bool convert(Int8 &, const ValueContainer &) const noexcept
Tries to convert the value into an integer.
virtual const Char * typeName() const noexcept=0
The name of the type whose values are manipulated through the given converter.
virtual bool convert(StrRef &, const ValueContainer &) const noexcept
Tries to convert the value into a string reference.
virtual bool convert(Decimal &, const ValueContainer &) const noexcept
Tries to convert the value into a Decimal.
~ValueConverter()=default
virtual bool convert(Int32 &, const ValueContainer &) const noexcept
Tries to convert the value into an integer.
virtual bool convert(Int64 &, const ValueContainer &) const noexcept
Tries to convert the value into an integer.
virtual bool convert(Int16 &, const ValueContainer &) const noexcept
Tries to convert the value into an integer.
Identifies the kind of the field value.