30 ONIXS_ILINK3_DATA_PACKING_BEGIN(1)
66 return StrRef(reinterpret_cast<const Char*>(
this) + Size, length());
73 length(static_cast<Length>(value.size()));
75 std::memcpy(reinterpret_cast<Char*>(
this) + Size, value.data(), value.size());
83 return Size + length();
118 blockLength_ = value;
137 BlockLength blockLength_;
138 NumInGroup numInGroup_;
175 blockLength_ = value;
198 BlockLength blockLength_;
199 NumInGroup numInGroup_;
234 blockLength_ = value;
283 BlockLength blockLength_;
284 TemplateId templateId_;
292 ONIXS_ILINK3_DATA_PACKING_END
318 bool operator ==(
const Value& other)
const 328 bool operator !=(
const Value& other)
const 331 return !(*
this == other);
336 operator Value() const
395 bool operator ==(
const Value& other)
const 405 bool operator !=(
const Value& other)
const 408 return !(*
this == other);
413 operator Value() const
528 typedef Year FirstArgType;
530 typedef Month SecondArgType;
532 typedef Day ThirdArgType;
534 typedef Week FourthArgType;
543 std::memcpy(addr, &year_,
sizeof(year_));
544 addr = advanceByBytes(addr,
sizeof(year_));
546 std::memcpy(addr, &month_,
sizeof(month_));
547 addr = advanceByBytes(addr,
sizeof(month_));
549 std::memcpy(addr, &day_,
sizeof(day_));
550 addr = advanceByBytes(addr,
sizeof(day_));
552 std::memcpy(addr, &week_,
sizeof(week_));
600 bool day(Day& value)
const 656 return !(*
this == other);
676 bool operator ==(
const Value& other)
const 686 bool operator !=(
const Value& other)
const 689 return !(*
this == other);
694 operator Value() const
719 MaturityMonthYear::operator==(
728 (this->year_ == other.year_) &&
729 (this->month_ == other.month_) &&
730 (this->day_ == other.day_) &&
731 (this->week_ == other.week_);
758 bool operator ==(
const Value& other)
const 768 bool operator !=(
const Value& other)
const 771 return !(*
this == other);
776 operator Value() const
#define ONIXS_ILINK3_CONSTEXPR
void setWeek(Week value) noexcept
WW.
Char VarData
VarData type.
FloatingPointDecimal< Int64, Int8 > Decimal64NULL
Optional floating point decimal.
MaturityMonthYear Value
Aliases the type whose null value traits are exposed by the given class.
bool isNull(const PRICE9 &value) noexcept
constexpr Value operator()() const noexcept
constexpr MaturityMonthYear(Year year, Month month, Day day, Week week) noexcept
Initializes fields with provided values.
bool day(Day &value) const noexcept
DD.
std::basic_string_view< Char > StrRef
IntegralConstant< Int64, 9223372036854775807LL > NullMantissa
Null value for an optional Mantissa field.
BlockLength blockLength() const noexcept
char Char
Character type alias.
static constexpr Value value() noexcept
void varData(StrRef value) noexcept
Sets the varData field.
Length length() const noexcept
A real number with a floating exponent.
void setMonthToNull() noexcept
bool month(Month &value) const noexcept
MM.
BlockLength blockLength() const noexcept
void setNumInGroup(NumInGroup value) noexcept
Sets the numInGroup field.
PRICE9 Value
Aliases the type whose null value traits are exposed by the given class.
IntegralConstant< Int64, 9223372036854775807LL > NullMantissa
Null value for an optional Mantissa field.
MessageHeader MessageHeaderBuilder
Decimal32NULL Value
Aliases the type whose null value traits are exposed by the given class.
UInt16 BlockLength
Type alias for the BlockLength.
void serialize(void *addr) const noexcept
Serializes to a data buffer.
Null values definition for optional Decimal32NULL field.
void setBlockLength(BlockLength value) noexcept
Sets the blockLength field.
Repeating group dimensions.
StrRef varData() const noexcept
IntegralConstant< UInt8, 255 > NullWeek
Null value for an optional Week field.
void setMonth(Month value) noexcept
MM.
void setYear(Year value) noexcept
YYYY.
Repeating group dimensions.
UInt16 NumInGroup
Type alias for the NumInGroup.
constexpr Value operator()() const noexcept
void setDayToNull() noexcept
Year year() const noexcept
YYYY.
void setNumInGroup(NumInGroup value) noexcept
Sets the numInGroup field.
#define ONIXS_ILINK3_LTWT_CLASS
IntegralConstant< UInt8, 255 > NullDay
Null value for an optional Day field.
FixedPointDecimal< Int64, IntegralConstant< Int8,-9 >> PRICE9
Price with constant exponent -9.
void setDay(Day value) noexcept
DD.
void setWeekToNull() noexcept
bool week(Week &value) const noexcept
WW.
Null values definition for optional Decimal64NULL field.
NumInGroup numInGroup() const noexcept
IntegralConstant< Int32, 2147483647 > NullMantissa
Null value for an optional Mantissa field.
#define ONIXS_ILINK3_MESSAGING_NAMESPACE_END
static constexpr Value value() noexcept
void length(Length value) noexcept
Sets the length.
Null values definition for optional PRICE9 field.
IntegralConstant< UInt8, 255 > NullMonth
Null value for an optional Month field.
constexpr MaturityMonthYear() noexcept
Default constructor.
constexpr Value operator()() const noexcept
bool operator!=(const MaturityMonthYear &other) const noexcept
Compares encoded data.
static constexpr Value value() noexcept
Null values definition for optional MaturityMonthYear field.
Length binarySize() const noexcept
#define ONIXS_ILINK3_MESSAGING_NAMESPACE_BEGIN
void setBlockLength(BlockLength value) noexcept
Sets the blockLength field.
UInt8 NumInGroup
Type alias for the NumInGroup.
NumInGroup numInGroup() const noexcept
ONIXS_ILINK3_DATA_PACKING_END typedef FloatingPointDecimal< Int32, Int8 > Decimal32NULL
Optional floating point decimal with int32 mantissa and int8 exponent.
void setYearToNull() noexcept
UInt16 BlockLength
Type alias for the BlockLength.
static constexpr Value value() noexcept
Decimal64NULL Value
Aliases the type whose null value traits are exposed by the given class.
IntegralConstant< UInt16, 65535 > NullYear
Null value for an optional Year field.
UInt16 Length
Length type.
#define ONIXS_ILINK3_NODISCARD
#define ONIXS_ILINK3_NOTHROW
#define ONIXS_ILINK3_LTWT_STRUCT
constexpr Value operator()() const noexcept