blob: 1e4edc2447e828f5da9fccf5f96261e8d3f350b1 [file] [log] [blame]
/**
* Generated by the Emboss compiler. DO NOT EDIT!
*/
#ifndef TESTDATA_BCD_EMB_H_
#define TESTDATA_BCD_EMB_H_
#include <stdint.h>
#include <string.h>
#include <algorithm>
#include <type_traits>
#include <utility>
#include "runtime/cpp/emboss_cpp_util.h"
#include "runtime/cpp/emboss_prelude.h"
#include "runtime/cpp/emboss_enum_view.h"
#include "runtime/cpp/emboss_text_util.h"
/* NOLINTBEGIN */
namespace emboss {
namespace test {
namespace BcdSizes {
namespace EmbossReservedAnonymousField1 {
} // namespace EmbossReservedAnonymousField1
template <class Storage>
class GenericEmbossReservedAnonymousField1View;
} // namespace BcdSizes
template <class Storage>
class GenericBcdSizesView;
namespace BcdBigEndian {
} // namespace BcdBigEndian
template <class Storage>
class GenericBcdBigEndianView;
namespace BcdSizes {
namespace EmbossReservedAnonymousField1 {
} // namespace EmbossReservedAnonymousField1
template <class View>
struct EmbossReservedInternalIsGenericEmbossReservedAnonymousField1View;
template <class Storage>
class GenericEmbossReservedAnonymousField1View final {
public:
GenericEmbossReservedAnonymousField1View() : backing_() {}
explicit GenericEmbossReservedAnonymousField1View(
Storage emboss_reserved_local_bytes)
: backing_(emboss_reserved_local_bytes)
{}
template <typename OtherStorage>
GenericEmbossReservedAnonymousField1View(
const GenericEmbossReservedAnonymousField1View<OtherStorage> &emboss_reserved_local_other)
: backing_{emboss_reserved_local_other.BackingStorage()}
{}
template <typename Arg,
typename = typename ::std::enable_if<
!EmbossReservedInternalIsGenericEmbossReservedAnonymousField1View<
typename ::std::remove_cv<typename ::std::remove_reference<
Arg>::type>::type>::value>::type>
explicit GenericEmbossReservedAnonymousField1View(
Arg &&emboss_reserved_local_arg)
: backing_(::std::forward<Arg>(
emboss_reserved_local_arg))
{}
template <typename Arg0, typename Arg1, typename... Args>
explicit GenericEmbossReservedAnonymousField1View(
Arg0 &&emboss_reserved_local_arg0,
Arg1 &&emboss_reserved_local_arg1, Args &&... emboss_reserved_local_args)
: backing_(::std::forward<Arg0>(emboss_reserved_local_arg0),
::std::forward<Arg1>(emboss_reserved_local_arg1),
::std::forward<Args>(
emboss_reserved_local_args)...)
{}
template <typename OtherStorage>
GenericEmbossReservedAnonymousField1View<Storage> &operator=(
const GenericEmbossReservedAnonymousField1View<OtherStorage> &emboss_reserved_local_other) {
backing_ = emboss_reserved_local_other.BackingStorage();
return *this;
}
bool Ok() const {
if (!IsComplete()) return false;
if (!has_four_bit().Known()) return false;
if (has_four_bit().ValueOrDefault() && !four_bit().Ok()) return false;
if (!has_six_bit().Known()) return false;
if (has_six_bit().ValueOrDefault() && !six_bit().Ok()) return false;
if (!has_ten_bit().Known()) return false;
if (has_ten_bit().ValueOrDefault() && !ten_bit().Ok()) return false;
if (!has_twelve_bit().Known()) return false;
if (has_twelve_bit().ValueOrDefault() && !twelve_bit().Ok()) return false;
if (!has_IntrinsicSizeInBits().Known()) return false;
if (has_IntrinsicSizeInBits().ValueOrDefault() && !IntrinsicSizeInBits().Ok()) return false;
if (!has_MaxSizeInBits().Known()) return false;
if (has_MaxSizeInBits().ValueOrDefault() && !MaxSizeInBits().Ok()) return false;
if (!has_MinSizeInBits().Known()) return false;
if (has_MinSizeInBits().ValueOrDefault() && !MinSizeInBits().Ok()) return false;
return true;
}
Storage BackingStorage() const { return backing_; }
bool IsComplete() const {
return backing_.Ok() && IntrinsicSizeInBits().Ok() &&
backing_.SizeInBits() >=
static_cast</**/ ::std::size_t>(
IntrinsicSizeInBits().UncheckedRead());
}
static constexpr ::std::size_t SizeInBits() {
return static_cast</**/ ::std::size_t>(IntrinsicSizeInBits().Read());
}
static constexpr bool SizeIsKnown() {
return IntrinsicSizeInBits().Ok();
}
template <typename OtherStorage>
bool Equals(
GenericEmbossReservedAnonymousField1View<OtherStorage> emboss_reserved_local_other) const {
if (!has_four_bit().Known()) return false;
if (!emboss_reserved_local_other.has_four_bit().Known()) return false;
if (emboss_reserved_local_other.has_four_bit().ValueOrDefault() &&
!has_four_bit().ValueOrDefault())
return false;
if (has_four_bit().ValueOrDefault() &&
!emboss_reserved_local_other.has_four_bit().ValueOrDefault())
return false;
if (emboss_reserved_local_other.has_four_bit().ValueOrDefault() &&
has_four_bit().ValueOrDefault() &&
!four_bit().Equals(emboss_reserved_local_other.four_bit()))
return false;
if (!has_six_bit().Known()) return false;
if (!emboss_reserved_local_other.has_six_bit().Known()) return false;
if (emboss_reserved_local_other.has_six_bit().ValueOrDefault() &&
!has_six_bit().ValueOrDefault())
return false;
if (has_six_bit().ValueOrDefault() &&
!emboss_reserved_local_other.has_six_bit().ValueOrDefault())
return false;
if (emboss_reserved_local_other.has_six_bit().ValueOrDefault() &&
has_six_bit().ValueOrDefault() &&
!six_bit().Equals(emboss_reserved_local_other.six_bit()))
return false;
if (!has_ten_bit().Known()) return false;
if (!emboss_reserved_local_other.has_ten_bit().Known()) return false;
if (emboss_reserved_local_other.has_ten_bit().ValueOrDefault() &&
!has_ten_bit().ValueOrDefault())
return false;
if (has_ten_bit().ValueOrDefault() &&
!emboss_reserved_local_other.has_ten_bit().ValueOrDefault())
return false;
if (emboss_reserved_local_other.has_ten_bit().ValueOrDefault() &&
has_ten_bit().ValueOrDefault() &&
!ten_bit().Equals(emboss_reserved_local_other.ten_bit()))
return false;
if (!has_twelve_bit().Known()) return false;
if (!emboss_reserved_local_other.has_twelve_bit().Known()) return false;
if (emboss_reserved_local_other.has_twelve_bit().ValueOrDefault() &&
!has_twelve_bit().ValueOrDefault())
return false;
if (has_twelve_bit().ValueOrDefault() &&
!emboss_reserved_local_other.has_twelve_bit().ValueOrDefault())
return false;
if (emboss_reserved_local_other.has_twelve_bit().ValueOrDefault() &&
has_twelve_bit().ValueOrDefault() &&
!twelve_bit().Equals(emboss_reserved_local_other.twelve_bit()))
return false;
return true;
}
template <typename OtherStorage>
bool UncheckedEquals(
GenericEmbossReservedAnonymousField1View<OtherStorage> emboss_reserved_local_other) const {
if (emboss_reserved_local_other.has_four_bit().ValueOr(false) &&
!has_four_bit().ValueOr(false))
return false;
if (has_four_bit().ValueOr(false) &&
!emboss_reserved_local_other.has_four_bit().ValueOr(false))
return false;
if (emboss_reserved_local_other.has_four_bit().ValueOr(false) &&
has_four_bit().ValueOr(false) &&
!four_bit().UncheckedEquals(emboss_reserved_local_other.four_bit()))
return false;
if (emboss_reserved_local_other.has_six_bit().ValueOr(false) &&
!has_six_bit().ValueOr(false))
return false;
if (has_six_bit().ValueOr(false) &&
!emboss_reserved_local_other.has_six_bit().ValueOr(false))
return false;
if (emboss_reserved_local_other.has_six_bit().ValueOr(false) &&
has_six_bit().ValueOr(false) &&
!six_bit().UncheckedEquals(emboss_reserved_local_other.six_bit()))
return false;
if (emboss_reserved_local_other.has_ten_bit().ValueOr(false) &&
!has_ten_bit().ValueOr(false))
return false;
if (has_ten_bit().ValueOr(false) &&
!emboss_reserved_local_other.has_ten_bit().ValueOr(false))
return false;
if (emboss_reserved_local_other.has_ten_bit().ValueOr(false) &&
has_ten_bit().ValueOr(false) &&
!ten_bit().UncheckedEquals(emboss_reserved_local_other.ten_bit()))
return false;
if (emboss_reserved_local_other.has_twelve_bit().ValueOr(false) &&
!has_twelve_bit().ValueOr(false))
return false;
if (has_twelve_bit().ValueOr(false) &&
!emboss_reserved_local_other.has_twelve_bit().ValueOr(false))
return false;
if (emboss_reserved_local_other.has_twelve_bit().ValueOr(false) &&
has_twelve_bit().ValueOr(false) &&
!twelve_bit().UncheckedEquals(emboss_reserved_local_other.twelve_bit()))
return false;
return true;
}
template <typename OtherStorage>
void UncheckedCopyFrom(
GenericEmbossReservedAnonymousField1View<OtherStorage> emboss_reserved_local_other) const {
backing_.UncheckedCopyFrom(
emboss_reserved_local_other.BackingStorage(),
emboss_reserved_local_other.IntrinsicSizeInBits().UncheckedRead());
}
template <typename OtherStorage>
void CopyFrom(
GenericEmbossReservedAnonymousField1View<OtherStorage> emboss_reserved_local_other) const {
backing_.CopyFrom(
emboss_reserved_local_other.BackingStorage(),
emboss_reserved_local_other.IntrinsicSizeInBits().Read());
}
template <typename OtherStorage>
bool TryToCopyFrom(
GenericEmbossReservedAnonymousField1View<OtherStorage> emboss_reserved_local_other) const {
return emboss_reserved_local_other.Ok() && backing_.TryToCopyFrom(
emboss_reserved_local_other.BackingStorage(),
emboss_reserved_local_other.IntrinsicSizeInBits().Read());
}
template <class Stream>
bool UpdateFromTextStream(Stream *emboss_reserved_local_stream) const {
::std::string emboss_reserved_local_brace;
if (!::emboss::support::ReadToken(emboss_reserved_local_stream,
&emboss_reserved_local_brace))
return false;
if (emboss_reserved_local_brace != "{") return false;
for (;;) {
::std::string emboss_reserved_local_name;
if (!::emboss::support::ReadToken(emboss_reserved_local_stream,
&emboss_reserved_local_name))
return false;
if (emboss_reserved_local_name == ",")
if (!::emboss::support::ReadToken(emboss_reserved_local_stream,
&emboss_reserved_local_name))
return false;
if (emboss_reserved_local_name == "}") return true;
::std::string emboss_reserved_local_colon;
if (!::emboss::support::ReadToken(emboss_reserved_local_stream,
&emboss_reserved_local_colon))
return false;
if (emboss_reserved_local_colon != ":") return false;
if (emboss_reserved_local_name == "four_bit") {
if (!four_bit().UpdateFromTextStream(
emboss_reserved_local_stream)) {
return false;
}
continue;
}
if (emboss_reserved_local_name == "six_bit") {
if (!six_bit().UpdateFromTextStream(
emboss_reserved_local_stream)) {
return false;
}
continue;
}
if (emboss_reserved_local_name == "ten_bit") {
if (!ten_bit().UpdateFromTextStream(
emboss_reserved_local_stream)) {
return false;
}
continue;
}
if (emboss_reserved_local_name == "twelve_bit") {
if (!twelve_bit().UpdateFromTextStream(
emboss_reserved_local_stream)) {
return false;
}
continue;
}
return false;
}
}
template <class Stream>
void WriteToTextStream(
Stream *emboss_reserved_local_stream,
::emboss::TextOutputOptions emboss_reserved_local_options) const {
::emboss::TextOutputOptions emboss_reserved_local_field_options =
emboss_reserved_local_options.PlusOneIndent();
if (emboss_reserved_local_options.multiline()) {
emboss_reserved_local_stream->Write("{\n");
} else {
emboss_reserved_local_stream->Write("{");
}
bool emboss_reserved_local_wrote_field = false;
if (has_four_bit().ValueOr(false)) {
if (!emboss_reserved_local_field_options.allow_partial_output() ||
four_bit().IsAggregate() || four_bit().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
} else {
if (emboss_reserved_local_wrote_field) {
emboss_reserved_local_stream->Write(",");
}
emboss_reserved_local_stream->Write(" ");
}
emboss_reserved_local_stream->Write("four_bit: ");
four_bit().WriteToTextStream(emboss_reserved_local_stream,
emboss_reserved_local_field_options);
emboss_reserved_local_wrote_field = true;
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write("\n");
}
} else if (emboss_reserved_local_field_options.allow_partial_output() &&
emboss_reserved_local_field_options.comments() &&
!four_bit().IsAggregate() && !four_bit().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
}
emboss_reserved_local_stream->Write("# four_bit: UNREADABLE\n");
}
}
if (has_six_bit().ValueOr(false)) {
if (!emboss_reserved_local_field_options.allow_partial_output() ||
six_bit().IsAggregate() || six_bit().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
} else {
if (emboss_reserved_local_wrote_field) {
emboss_reserved_local_stream->Write(",");
}
emboss_reserved_local_stream->Write(" ");
}
emboss_reserved_local_stream->Write("six_bit: ");
six_bit().WriteToTextStream(emboss_reserved_local_stream,
emboss_reserved_local_field_options);
emboss_reserved_local_wrote_field = true;
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write("\n");
}
} else if (emboss_reserved_local_field_options.allow_partial_output() &&
emboss_reserved_local_field_options.comments() &&
!six_bit().IsAggregate() && !six_bit().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
}
emboss_reserved_local_stream->Write("# six_bit: UNREADABLE\n");
}
}
if (has_ten_bit().ValueOr(false)) {
if (!emboss_reserved_local_field_options.allow_partial_output() ||
ten_bit().IsAggregate() || ten_bit().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
} else {
if (emboss_reserved_local_wrote_field) {
emboss_reserved_local_stream->Write(",");
}
emboss_reserved_local_stream->Write(" ");
}
emboss_reserved_local_stream->Write("ten_bit: ");
ten_bit().WriteToTextStream(emboss_reserved_local_stream,
emboss_reserved_local_field_options);
emboss_reserved_local_wrote_field = true;
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write("\n");
}
} else if (emboss_reserved_local_field_options.allow_partial_output() &&
emboss_reserved_local_field_options.comments() &&
!ten_bit().IsAggregate() && !ten_bit().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
}
emboss_reserved_local_stream->Write("# ten_bit: UNREADABLE\n");
}
}
if (has_twelve_bit().ValueOr(false)) {
if (!emboss_reserved_local_field_options.allow_partial_output() ||
twelve_bit().IsAggregate() || twelve_bit().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
} else {
if (emboss_reserved_local_wrote_field) {
emboss_reserved_local_stream->Write(",");
}
emboss_reserved_local_stream->Write(" ");
}
emboss_reserved_local_stream->Write("twelve_bit: ");
twelve_bit().WriteToTextStream(emboss_reserved_local_stream,
emboss_reserved_local_field_options);
emboss_reserved_local_wrote_field = true;
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write("\n");
}
} else if (emboss_reserved_local_field_options.allow_partial_output() &&
emboss_reserved_local_field_options.comments() &&
!twelve_bit().IsAggregate() && !twelve_bit().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
}
emboss_reserved_local_stream->Write("# twelve_bit: UNREADABLE\n");
}
}
(void)emboss_reserved_local_wrote_field;
if (emboss_reserved_local_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_options.current_indent());
emboss_reserved_local_stream->Write("}");
} else {
emboss_reserved_local_stream->Write(" }");
}
}
static constexpr bool IsAggregate() { return true; }
public:
typename ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<4, ::emboss::support::AllValuesAreOk>,
typename Storage::template OffsetStorageType</**/0, 0>>
four_bit() const;
::emboss::support::Maybe<bool> has_four_bit() const;
public:
typename ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<6, ::emboss::support::AllValuesAreOk>,
typename Storage::template OffsetStorageType</**/0, 4>>
six_bit() const;
::emboss::support::Maybe<bool> has_six_bit() const;
public:
typename ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<10, ::emboss::support::AllValuesAreOk>,
typename Storage::template OffsetStorageType</**/0, 10>>
ten_bit() const;
::emboss::support::Maybe<bool> has_ten_bit() const;
public:
typename ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<12, ::emboss::support::AllValuesAreOk>,
typename Storage::template OffsetStorageType</**/0, 20>>
twelve_bit() const;
::emboss::support::Maybe<bool> has_twelve_bit() const;
public:
class EmbossReservedDollarVirtualIntrinsicSizeInBitsView final {
public:
using ValueType = ::std::int32_t;
constexpr EmbossReservedDollarVirtualIntrinsicSizeInBitsView() {}
EmbossReservedDollarVirtualIntrinsicSizeInBitsView(const EmbossReservedDollarVirtualIntrinsicSizeInBitsView &) = default;
EmbossReservedDollarVirtualIntrinsicSizeInBitsView(EmbossReservedDollarVirtualIntrinsicSizeInBitsView &&) = default;
EmbossReservedDollarVirtualIntrinsicSizeInBitsView &operator=(const EmbossReservedDollarVirtualIntrinsicSizeInBitsView &) =
default;
EmbossReservedDollarVirtualIntrinsicSizeInBitsView &operator=(EmbossReservedDollarVirtualIntrinsicSizeInBitsView &&) =
default;
~EmbossReservedDollarVirtualIntrinsicSizeInBitsView() = default;
static constexpr ::std::int32_t Read();
static constexpr ::std::int32_t UncheckedRead();
static constexpr bool Ok() { return true; }
template <class Stream>
void WriteToTextStream(Stream *emboss_reserved_local_stream,
const ::emboss::TextOutputOptions
&emboss_reserved_local_options) const {
::emboss::support::WriteIntegerViewToTextStream(
this, emboss_reserved_local_stream, emboss_reserved_local_options);
}
static constexpr bool IsAggregate() { return false; }
};
static constexpr EmbossReservedDollarVirtualIntrinsicSizeInBitsView IntrinsicSizeInBits() {
return EmbossReservedDollarVirtualIntrinsicSizeInBitsView();
}
static constexpr ::emboss::support::Maybe<bool> has_IntrinsicSizeInBits() {
return ::emboss::support::Maybe<bool>(true);
}
public:
class EmbossReservedDollarVirtualMaxSizeInBitsView final {
public:
using ValueType = ::std::int32_t;
constexpr EmbossReservedDollarVirtualMaxSizeInBitsView() {}
EmbossReservedDollarVirtualMaxSizeInBitsView(const EmbossReservedDollarVirtualMaxSizeInBitsView &) = default;
EmbossReservedDollarVirtualMaxSizeInBitsView(EmbossReservedDollarVirtualMaxSizeInBitsView &&) = default;
EmbossReservedDollarVirtualMaxSizeInBitsView &operator=(const EmbossReservedDollarVirtualMaxSizeInBitsView &) =
default;
EmbossReservedDollarVirtualMaxSizeInBitsView &operator=(EmbossReservedDollarVirtualMaxSizeInBitsView &&) =
default;
~EmbossReservedDollarVirtualMaxSizeInBitsView() = default;
static constexpr ::std::int32_t Read();
static constexpr ::std::int32_t UncheckedRead();
static constexpr bool Ok() { return true; }
template <class Stream>
void WriteToTextStream(Stream *emboss_reserved_local_stream,
const ::emboss::TextOutputOptions
&emboss_reserved_local_options) const {
::emboss::support::WriteIntegerViewToTextStream(
this, emboss_reserved_local_stream, emboss_reserved_local_options);
}
static constexpr bool IsAggregate() { return false; }
};
static constexpr EmbossReservedDollarVirtualMaxSizeInBitsView MaxSizeInBits() {
return EmbossReservedDollarVirtualMaxSizeInBitsView();
}
static constexpr ::emboss::support::Maybe<bool> has_MaxSizeInBits() {
return ::emboss::support::Maybe<bool>(true);
}
public:
class EmbossReservedDollarVirtualMinSizeInBitsView final {
public:
using ValueType = ::std::int32_t;
constexpr EmbossReservedDollarVirtualMinSizeInBitsView() {}
EmbossReservedDollarVirtualMinSizeInBitsView(const EmbossReservedDollarVirtualMinSizeInBitsView &) = default;
EmbossReservedDollarVirtualMinSizeInBitsView(EmbossReservedDollarVirtualMinSizeInBitsView &&) = default;
EmbossReservedDollarVirtualMinSizeInBitsView &operator=(const EmbossReservedDollarVirtualMinSizeInBitsView &) =
default;
EmbossReservedDollarVirtualMinSizeInBitsView &operator=(EmbossReservedDollarVirtualMinSizeInBitsView &&) =
default;
~EmbossReservedDollarVirtualMinSizeInBitsView() = default;
static constexpr ::std::int32_t Read();
static constexpr ::std::int32_t UncheckedRead();
static constexpr bool Ok() { return true; }
template <class Stream>
void WriteToTextStream(Stream *emboss_reserved_local_stream,
const ::emboss::TextOutputOptions
&emboss_reserved_local_options) const {
::emboss::support::WriteIntegerViewToTextStream(
this, emboss_reserved_local_stream, emboss_reserved_local_options);
}
static constexpr bool IsAggregate() { return false; }
};
static constexpr EmbossReservedDollarVirtualMinSizeInBitsView MinSizeInBits() {
return EmbossReservedDollarVirtualMinSizeInBitsView();
}
static constexpr ::emboss::support::Maybe<bool> has_MinSizeInBits() {
return ::emboss::support::Maybe<bool>(true);
}
private:
Storage backing_;
template <class OtherStorage>
friend class GenericEmbossReservedAnonymousField1View;
};
using EmbossReservedAnonymousField1View =
GenericEmbossReservedAnonymousField1View</**/ ::emboss::support::ReadOnlyContiguousBuffer>;
using EmbossReservedAnonymousField1Writer =
GenericEmbossReservedAnonymousField1View</**/ ::emboss::support::ReadWriteContiguousBuffer>;
template <class View>
struct EmbossReservedInternalIsGenericEmbossReservedAnonymousField1View {
static constexpr const bool value = false;
};
template <class Storage>
struct EmbossReservedInternalIsGenericEmbossReservedAnonymousField1View<
GenericEmbossReservedAnonymousField1View<Storage>> {
static constexpr const bool value = true;
};
template <typename T>
inline GenericEmbossReservedAnonymousField1View<
/**/ ::emboss::support::ContiguousBuffer<
typename ::std::remove_reference<
decltype(*::std::declval<T>()->data())>::type,
1, 0>>
MakeEmbossReservedAnonymousField1View( T &&emboss_reserved_local_arg) {
return GenericEmbossReservedAnonymousField1View<
/**/ ::emboss::support::ContiguousBuffer<
typename ::std::remove_reference<decltype(
*::std::declval<T>()->data())>::type,
1, 0>>(
::std::forward<T>(emboss_reserved_local_arg));
}
template <typename T>
inline GenericEmbossReservedAnonymousField1View</**/ ::emboss::support::ContiguousBuffer<T, 1, 0>>
MakeEmbossReservedAnonymousField1View( T *emboss_reserved_local_data,
::std::size_t emboss_reserved_local_size) {
return GenericEmbossReservedAnonymousField1View</**/ ::emboss::support::ContiguousBuffer<T, 1, 0>>(
emboss_reserved_local_data,
emboss_reserved_local_size);
}
template <typename T, ::std::size_t kAlignment>
inline GenericEmbossReservedAnonymousField1View<
/**/ ::emboss::support::ContiguousBuffer<T, kAlignment, 0>>
MakeAlignedEmbossReservedAnonymousField1View(
T *emboss_reserved_local_data,
::std::size_t emboss_reserved_local_size) {
return GenericEmbossReservedAnonymousField1View<
/**/ ::emboss::support::ContiguousBuffer<T, kAlignment, 0>>(
emboss_reserved_local_data,
emboss_reserved_local_size);
}
} // namespace BcdSizes
template <class View>
struct EmbossReservedInternalIsGenericBcdSizesView;
template <class Storage>
class GenericBcdSizesView final {
public:
GenericBcdSizesView() : backing_() {}
explicit GenericBcdSizesView(
Storage emboss_reserved_local_bytes)
: backing_(emboss_reserved_local_bytes)
{}
template <typename OtherStorage>
GenericBcdSizesView(
const GenericBcdSizesView<OtherStorage> &emboss_reserved_local_other)
: backing_{emboss_reserved_local_other.BackingStorage()}
{}
template <typename Arg,
typename = typename ::std::enable_if<
!EmbossReservedInternalIsGenericBcdSizesView<
typename ::std::remove_cv<typename ::std::remove_reference<
Arg>::type>::type>::value>::type>
explicit GenericBcdSizesView(
Arg &&emboss_reserved_local_arg)
: backing_(::std::forward<Arg>(
emboss_reserved_local_arg))
{}
template <typename Arg0, typename Arg1, typename... Args>
explicit GenericBcdSizesView(
Arg0 &&emboss_reserved_local_arg0,
Arg1 &&emboss_reserved_local_arg1, Args &&... emboss_reserved_local_args)
: backing_(::std::forward<Arg0>(emboss_reserved_local_arg0),
::std::forward<Arg1>(emboss_reserved_local_arg1),
::std::forward<Args>(
emboss_reserved_local_args)...)
{}
template <typename OtherStorage>
GenericBcdSizesView<Storage> &operator=(
const GenericBcdSizesView<OtherStorage> &emboss_reserved_local_other) {
backing_ = emboss_reserved_local_other.BackingStorage();
return *this;
}
bool Ok() const {
if (!IsComplete()) return false;
if (!has_one_byte().Known()) return false;
if (has_one_byte().ValueOrDefault() && !one_byte().Ok()) return false;
if (!has_two_byte().Known()) return false;
if (has_two_byte().ValueOrDefault() && !two_byte().Ok()) return false;
if (!has_three_byte().Known()) return false;
if (has_three_byte().ValueOrDefault() && !three_byte().Ok()) return false;
if (!has_four_byte().Known()) return false;
if (has_four_byte().ValueOrDefault() && !four_byte().Ok()) return false;
if (!has_five_byte().Known()) return false;
if (has_five_byte().ValueOrDefault() && !five_byte().Ok()) return false;
if (!has_six_byte().Known()) return false;
if (has_six_byte().ValueOrDefault() && !six_byte().Ok()) return false;
if (!has_seven_byte().Known()) return false;
if (has_seven_byte().ValueOrDefault() && !seven_byte().Ok()) return false;
if (!has_eight_byte().Known()) return false;
if (has_eight_byte().ValueOrDefault() && !eight_byte().Ok()) return false;
if (!has_emboss_reserved_anonymous_field_1().Known()) return false;
if (has_emboss_reserved_anonymous_field_1().ValueOrDefault() && !emboss_reserved_anonymous_field_1().Ok()) return false;
if (!has_four_bit().Known()) return false;
if (has_four_bit().ValueOrDefault() && !four_bit().Ok()) return false;
if (!has_six_bit().Known()) return false;
if (has_six_bit().ValueOrDefault() && !six_bit().Ok()) return false;
if (!has_ten_bit().Known()) return false;
if (has_ten_bit().ValueOrDefault() && !ten_bit().Ok()) return false;
if (!has_twelve_bit().Known()) return false;
if (has_twelve_bit().ValueOrDefault() && !twelve_bit().Ok()) return false;
if (!has_IntrinsicSizeInBytes().Known()) return false;
if (has_IntrinsicSizeInBytes().ValueOrDefault() && !IntrinsicSizeInBytes().Ok()) return false;
if (!has_MaxSizeInBytes().Known()) return false;
if (has_MaxSizeInBytes().ValueOrDefault() && !MaxSizeInBytes().Ok()) return false;
if (!has_MinSizeInBytes().Known()) return false;
if (has_MinSizeInBytes().ValueOrDefault() && !MinSizeInBytes().Ok()) return false;
return true;
}
Storage BackingStorage() const { return backing_; }
bool IsComplete() const {
return backing_.Ok() && IntrinsicSizeInBytes().Ok() &&
backing_.SizeInBytes() >=
static_cast</**/ ::std::size_t>(
IntrinsicSizeInBytes().UncheckedRead());
}
static constexpr ::std::size_t SizeInBytes() {
return static_cast</**/ ::std::size_t>(IntrinsicSizeInBytes().Read());
}
static constexpr bool SizeIsKnown() {
return IntrinsicSizeInBytes().Ok();
}
template <typename OtherStorage>
bool Equals(
GenericBcdSizesView<OtherStorage> emboss_reserved_local_other) const {
if (!has_one_byte().Known()) return false;
if (!emboss_reserved_local_other.has_one_byte().Known()) return false;
if (emboss_reserved_local_other.has_one_byte().ValueOrDefault() &&
!has_one_byte().ValueOrDefault())
return false;
if (has_one_byte().ValueOrDefault() &&
!emboss_reserved_local_other.has_one_byte().ValueOrDefault())
return false;
if (emboss_reserved_local_other.has_one_byte().ValueOrDefault() &&
has_one_byte().ValueOrDefault() &&
!one_byte().Equals(emboss_reserved_local_other.one_byte()))
return false;
if (!has_two_byte().Known()) return false;
if (!emboss_reserved_local_other.has_two_byte().Known()) return false;
if (emboss_reserved_local_other.has_two_byte().ValueOrDefault() &&
!has_two_byte().ValueOrDefault())
return false;
if (has_two_byte().ValueOrDefault() &&
!emboss_reserved_local_other.has_two_byte().ValueOrDefault())
return false;
if (emboss_reserved_local_other.has_two_byte().ValueOrDefault() &&
has_two_byte().ValueOrDefault() &&
!two_byte().Equals(emboss_reserved_local_other.two_byte()))
return false;
if (!has_three_byte().Known()) return false;
if (!emboss_reserved_local_other.has_three_byte().Known()) return false;
if (emboss_reserved_local_other.has_three_byte().ValueOrDefault() &&
!has_three_byte().ValueOrDefault())
return false;
if (has_three_byte().ValueOrDefault() &&
!emboss_reserved_local_other.has_three_byte().ValueOrDefault())
return false;
if (emboss_reserved_local_other.has_three_byte().ValueOrDefault() &&
has_three_byte().ValueOrDefault() &&
!three_byte().Equals(emboss_reserved_local_other.three_byte()))
return false;
if (!has_four_byte().Known()) return false;
if (!emboss_reserved_local_other.has_four_byte().Known()) return false;
if (emboss_reserved_local_other.has_four_byte().ValueOrDefault() &&
!has_four_byte().ValueOrDefault())
return false;
if (has_four_byte().ValueOrDefault() &&
!emboss_reserved_local_other.has_four_byte().ValueOrDefault())
return false;
if (emboss_reserved_local_other.has_four_byte().ValueOrDefault() &&
has_four_byte().ValueOrDefault() &&
!four_byte().Equals(emboss_reserved_local_other.four_byte()))
return false;
if (!has_five_byte().Known()) return false;
if (!emboss_reserved_local_other.has_five_byte().Known()) return false;
if (emboss_reserved_local_other.has_five_byte().ValueOrDefault() &&
!has_five_byte().ValueOrDefault())
return false;
if (has_five_byte().ValueOrDefault() &&
!emboss_reserved_local_other.has_five_byte().ValueOrDefault())
return false;
if (emboss_reserved_local_other.has_five_byte().ValueOrDefault() &&
has_five_byte().ValueOrDefault() &&
!five_byte().Equals(emboss_reserved_local_other.five_byte()))
return false;
if (!has_six_byte().Known()) return false;
if (!emboss_reserved_local_other.has_six_byte().Known()) return false;
if (emboss_reserved_local_other.has_six_byte().ValueOrDefault() &&
!has_six_byte().ValueOrDefault())
return false;
if (has_six_byte().ValueOrDefault() &&
!emboss_reserved_local_other.has_six_byte().ValueOrDefault())
return false;
if (emboss_reserved_local_other.has_six_byte().ValueOrDefault() &&
has_six_byte().ValueOrDefault() &&
!six_byte().Equals(emboss_reserved_local_other.six_byte()))
return false;
if (!has_seven_byte().Known()) return false;
if (!emboss_reserved_local_other.has_seven_byte().Known()) return false;
if (emboss_reserved_local_other.has_seven_byte().ValueOrDefault() &&
!has_seven_byte().ValueOrDefault())
return false;
if (has_seven_byte().ValueOrDefault() &&
!emboss_reserved_local_other.has_seven_byte().ValueOrDefault())
return false;
if (emboss_reserved_local_other.has_seven_byte().ValueOrDefault() &&
has_seven_byte().ValueOrDefault() &&
!seven_byte().Equals(emboss_reserved_local_other.seven_byte()))
return false;
if (!has_eight_byte().Known()) return false;
if (!emboss_reserved_local_other.has_eight_byte().Known()) return false;
if (emboss_reserved_local_other.has_eight_byte().ValueOrDefault() &&
!has_eight_byte().ValueOrDefault())
return false;
if (has_eight_byte().ValueOrDefault() &&
!emboss_reserved_local_other.has_eight_byte().ValueOrDefault())
return false;
if (emboss_reserved_local_other.has_eight_byte().ValueOrDefault() &&
has_eight_byte().ValueOrDefault() &&
!eight_byte().Equals(emboss_reserved_local_other.eight_byte()))
return false;
if (!has_emboss_reserved_anonymous_field_1().Known()) return false;
if (!emboss_reserved_local_other.has_emboss_reserved_anonymous_field_1().Known()) return false;
if (emboss_reserved_local_other.has_emboss_reserved_anonymous_field_1().ValueOrDefault() &&
!has_emboss_reserved_anonymous_field_1().ValueOrDefault())
return false;
if (has_emboss_reserved_anonymous_field_1().ValueOrDefault() &&
!emboss_reserved_local_other.has_emboss_reserved_anonymous_field_1().ValueOrDefault())
return false;
if (emboss_reserved_local_other.has_emboss_reserved_anonymous_field_1().ValueOrDefault() &&
has_emboss_reserved_anonymous_field_1().ValueOrDefault() &&
!emboss_reserved_anonymous_field_1().Equals(emboss_reserved_local_other.emboss_reserved_anonymous_field_1()))
return false;
return true;
}
template <typename OtherStorage>
bool UncheckedEquals(
GenericBcdSizesView<OtherStorage> emboss_reserved_local_other) const {
if (emboss_reserved_local_other.has_one_byte().ValueOr(false) &&
!has_one_byte().ValueOr(false))
return false;
if (has_one_byte().ValueOr(false) &&
!emboss_reserved_local_other.has_one_byte().ValueOr(false))
return false;
if (emboss_reserved_local_other.has_one_byte().ValueOr(false) &&
has_one_byte().ValueOr(false) &&
!one_byte().UncheckedEquals(emboss_reserved_local_other.one_byte()))
return false;
if (emboss_reserved_local_other.has_two_byte().ValueOr(false) &&
!has_two_byte().ValueOr(false))
return false;
if (has_two_byte().ValueOr(false) &&
!emboss_reserved_local_other.has_two_byte().ValueOr(false))
return false;
if (emboss_reserved_local_other.has_two_byte().ValueOr(false) &&
has_two_byte().ValueOr(false) &&
!two_byte().UncheckedEquals(emboss_reserved_local_other.two_byte()))
return false;
if (emboss_reserved_local_other.has_three_byte().ValueOr(false) &&
!has_three_byte().ValueOr(false))
return false;
if (has_three_byte().ValueOr(false) &&
!emboss_reserved_local_other.has_three_byte().ValueOr(false))
return false;
if (emboss_reserved_local_other.has_three_byte().ValueOr(false) &&
has_three_byte().ValueOr(false) &&
!three_byte().UncheckedEquals(emboss_reserved_local_other.three_byte()))
return false;
if (emboss_reserved_local_other.has_four_byte().ValueOr(false) &&
!has_four_byte().ValueOr(false))
return false;
if (has_four_byte().ValueOr(false) &&
!emboss_reserved_local_other.has_four_byte().ValueOr(false))
return false;
if (emboss_reserved_local_other.has_four_byte().ValueOr(false) &&
has_four_byte().ValueOr(false) &&
!four_byte().UncheckedEquals(emboss_reserved_local_other.four_byte()))
return false;
if (emboss_reserved_local_other.has_five_byte().ValueOr(false) &&
!has_five_byte().ValueOr(false))
return false;
if (has_five_byte().ValueOr(false) &&
!emboss_reserved_local_other.has_five_byte().ValueOr(false))
return false;
if (emboss_reserved_local_other.has_five_byte().ValueOr(false) &&
has_five_byte().ValueOr(false) &&
!five_byte().UncheckedEquals(emboss_reserved_local_other.five_byte()))
return false;
if (emboss_reserved_local_other.has_six_byte().ValueOr(false) &&
!has_six_byte().ValueOr(false))
return false;
if (has_six_byte().ValueOr(false) &&
!emboss_reserved_local_other.has_six_byte().ValueOr(false))
return false;
if (emboss_reserved_local_other.has_six_byte().ValueOr(false) &&
has_six_byte().ValueOr(false) &&
!six_byte().UncheckedEquals(emboss_reserved_local_other.six_byte()))
return false;
if (emboss_reserved_local_other.has_seven_byte().ValueOr(false) &&
!has_seven_byte().ValueOr(false))
return false;
if (has_seven_byte().ValueOr(false) &&
!emboss_reserved_local_other.has_seven_byte().ValueOr(false))
return false;
if (emboss_reserved_local_other.has_seven_byte().ValueOr(false) &&
has_seven_byte().ValueOr(false) &&
!seven_byte().UncheckedEquals(emboss_reserved_local_other.seven_byte()))
return false;
if (emboss_reserved_local_other.has_eight_byte().ValueOr(false) &&
!has_eight_byte().ValueOr(false))
return false;
if (has_eight_byte().ValueOr(false) &&
!emboss_reserved_local_other.has_eight_byte().ValueOr(false))
return false;
if (emboss_reserved_local_other.has_eight_byte().ValueOr(false) &&
has_eight_byte().ValueOr(false) &&
!eight_byte().UncheckedEquals(emboss_reserved_local_other.eight_byte()))
return false;
if (emboss_reserved_local_other.has_emboss_reserved_anonymous_field_1().ValueOr(false) &&
!has_emboss_reserved_anonymous_field_1().ValueOr(false))
return false;
if (has_emboss_reserved_anonymous_field_1().ValueOr(false) &&
!emboss_reserved_local_other.has_emboss_reserved_anonymous_field_1().ValueOr(false))
return false;
if (emboss_reserved_local_other.has_emboss_reserved_anonymous_field_1().ValueOr(false) &&
has_emboss_reserved_anonymous_field_1().ValueOr(false) &&
!emboss_reserved_anonymous_field_1().UncheckedEquals(emboss_reserved_local_other.emboss_reserved_anonymous_field_1()))
return false;
return true;
}
template <typename OtherStorage>
void UncheckedCopyFrom(
GenericBcdSizesView<OtherStorage> emboss_reserved_local_other) const {
backing_.UncheckedCopyFrom(
emboss_reserved_local_other.BackingStorage(),
emboss_reserved_local_other.IntrinsicSizeInBytes().UncheckedRead());
}
template <typename OtherStorage>
void CopyFrom(
GenericBcdSizesView<OtherStorage> emboss_reserved_local_other) const {
backing_.CopyFrom(
emboss_reserved_local_other.BackingStorage(),
emboss_reserved_local_other.IntrinsicSizeInBytes().Read());
}
template <typename OtherStorage>
bool TryToCopyFrom(
GenericBcdSizesView<OtherStorage> emboss_reserved_local_other) const {
return emboss_reserved_local_other.Ok() && backing_.TryToCopyFrom(
emboss_reserved_local_other.BackingStorage(),
emboss_reserved_local_other.IntrinsicSizeInBytes().Read());
}
template <class Stream>
bool UpdateFromTextStream(Stream *emboss_reserved_local_stream) const {
::std::string emboss_reserved_local_brace;
if (!::emboss::support::ReadToken(emboss_reserved_local_stream,
&emboss_reserved_local_brace))
return false;
if (emboss_reserved_local_brace != "{") return false;
for (;;) {
::std::string emboss_reserved_local_name;
if (!::emboss::support::ReadToken(emboss_reserved_local_stream,
&emboss_reserved_local_name))
return false;
if (emboss_reserved_local_name == ",")
if (!::emboss::support::ReadToken(emboss_reserved_local_stream,
&emboss_reserved_local_name))
return false;
if (emboss_reserved_local_name == "}") return true;
::std::string emboss_reserved_local_colon;
if (!::emboss::support::ReadToken(emboss_reserved_local_stream,
&emboss_reserved_local_colon))
return false;
if (emboss_reserved_local_colon != ":") return false;
if (emboss_reserved_local_name == "one_byte") {
if (!one_byte().UpdateFromTextStream(
emboss_reserved_local_stream)) {
return false;
}
continue;
}
if (emboss_reserved_local_name == "two_byte") {
if (!two_byte().UpdateFromTextStream(
emboss_reserved_local_stream)) {
return false;
}
continue;
}
if (emboss_reserved_local_name == "three_byte") {
if (!three_byte().UpdateFromTextStream(
emboss_reserved_local_stream)) {
return false;
}
continue;
}
if (emboss_reserved_local_name == "four_byte") {
if (!four_byte().UpdateFromTextStream(
emboss_reserved_local_stream)) {
return false;
}
continue;
}
if (emboss_reserved_local_name == "five_byte") {
if (!five_byte().UpdateFromTextStream(
emboss_reserved_local_stream)) {
return false;
}
continue;
}
if (emboss_reserved_local_name == "six_byte") {
if (!six_byte().UpdateFromTextStream(
emboss_reserved_local_stream)) {
return false;
}
continue;
}
if (emboss_reserved_local_name == "seven_byte") {
if (!seven_byte().UpdateFromTextStream(
emboss_reserved_local_stream)) {
return false;
}
continue;
}
if (emboss_reserved_local_name == "eight_byte") {
if (!eight_byte().UpdateFromTextStream(
emboss_reserved_local_stream)) {
return false;
}
continue;
}
if (emboss_reserved_local_name == "four_bit") {
if (!four_bit().UpdateFromTextStream(
emboss_reserved_local_stream)) {
return false;
}
continue;
}
if (emboss_reserved_local_name == "six_bit") {
if (!six_bit().UpdateFromTextStream(
emboss_reserved_local_stream)) {
return false;
}
continue;
}
if (emboss_reserved_local_name == "ten_bit") {
if (!ten_bit().UpdateFromTextStream(
emboss_reserved_local_stream)) {
return false;
}
continue;
}
if (emboss_reserved_local_name == "twelve_bit") {
if (!twelve_bit().UpdateFromTextStream(
emboss_reserved_local_stream)) {
return false;
}
continue;
}
return false;
}
}
template <class Stream>
void WriteToTextStream(
Stream *emboss_reserved_local_stream,
::emboss::TextOutputOptions emboss_reserved_local_options) const {
::emboss::TextOutputOptions emboss_reserved_local_field_options =
emboss_reserved_local_options.PlusOneIndent();
if (emboss_reserved_local_options.multiline()) {
emboss_reserved_local_stream->Write("{\n");
} else {
emboss_reserved_local_stream->Write("{");
}
bool emboss_reserved_local_wrote_field = false;
if (has_one_byte().ValueOr(false)) {
if (!emboss_reserved_local_field_options.allow_partial_output() ||
one_byte().IsAggregate() || one_byte().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
} else {
if (emboss_reserved_local_wrote_field) {
emboss_reserved_local_stream->Write(",");
}
emboss_reserved_local_stream->Write(" ");
}
emboss_reserved_local_stream->Write("one_byte: ");
one_byte().WriteToTextStream(emboss_reserved_local_stream,
emboss_reserved_local_field_options);
emboss_reserved_local_wrote_field = true;
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write("\n");
}
} else if (emboss_reserved_local_field_options.allow_partial_output() &&
emboss_reserved_local_field_options.comments() &&
!one_byte().IsAggregate() && !one_byte().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
}
emboss_reserved_local_stream->Write("# one_byte: UNREADABLE\n");
}
}
if (has_two_byte().ValueOr(false)) {
if (!emboss_reserved_local_field_options.allow_partial_output() ||
two_byte().IsAggregate() || two_byte().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
} else {
if (emboss_reserved_local_wrote_field) {
emboss_reserved_local_stream->Write(",");
}
emboss_reserved_local_stream->Write(" ");
}
emboss_reserved_local_stream->Write("two_byte: ");
two_byte().WriteToTextStream(emboss_reserved_local_stream,
emboss_reserved_local_field_options);
emboss_reserved_local_wrote_field = true;
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write("\n");
}
} else if (emboss_reserved_local_field_options.allow_partial_output() &&
emboss_reserved_local_field_options.comments() &&
!two_byte().IsAggregate() && !two_byte().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
}
emboss_reserved_local_stream->Write("# two_byte: UNREADABLE\n");
}
}
if (has_three_byte().ValueOr(false)) {
if (!emboss_reserved_local_field_options.allow_partial_output() ||
three_byte().IsAggregate() || three_byte().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
} else {
if (emboss_reserved_local_wrote_field) {
emboss_reserved_local_stream->Write(",");
}
emboss_reserved_local_stream->Write(" ");
}
emboss_reserved_local_stream->Write("three_byte: ");
three_byte().WriteToTextStream(emboss_reserved_local_stream,
emboss_reserved_local_field_options);
emboss_reserved_local_wrote_field = true;
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write("\n");
}
} else if (emboss_reserved_local_field_options.allow_partial_output() &&
emboss_reserved_local_field_options.comments() &&
!three_byte().IsAggregate() && !three_byte().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
}
emboss_reserved_local_stream->Write("# three_byte: UNREADABLE\n");
}
}
if (has_four_byte().ValueOr(false)) {
if (!emboss_reserved_local_field_options.allow_partial_output() ||
four_byte().IsAggregate() || four_byte().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
} else {
if (emboss_reserved_local_wrote_field) {
emboss_reserved_local_stream->Write(",");
}
emboss_reserved_local_stream->Write(" ");
}
emboss_reserved_local_stream->Write("four_byte: ");
four_byte().WriteToTextStream(emboss_reserved_local_stream,
emboss_reserved_local_field_options);
emboss_reserved_local_wrote_field = true;
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write("\n");
}
} else if (emboss_reserved_local_field_options.allow_partial_output() &&
emboss_reserved_local_field_options.comments() &&
!four_byte().IsAggregate() && !four_byte().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
}
emboss_reserved_local_stream->Write("# four_byte: UNREADABLE\n");
}
}
if (has_five_byte().ValueOr(false)) {
if (!emboss_reserved_local_field_options.allow_partial_output() ||
five_byte().IsAggregate() || five_byte().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
} else {
if (emboss_reserved_local_wrote_field) {
emboss_reserved_local_stream->Write(",");
}
emboss_reserved_local_stream->Write(" ");
}
emboss_reserved_local_stream->Write("five_byte: ");
five_byte().WriteToTextStream(emboss_reserved_local_stream,
emboss_reserved_local_field_options);
emboss_reserved_local_wrote_field = true;
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write("\n");
}
} else if (emboss_reserved_local_field_options.allow_partial_output() &&
emboss_reserved_local_field_options.comments() &&
!five_byte().IsAggregate() && !five_byte().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
}
emboss_reserved_local_stream->Write("# five_byte: UNREADABLE\n");
}
}
if (has_six_byte().ValueOr(false)) {
if (!emboss_reserved_local_field_options.allow_partial_output() ||
six_byte().IsAggregate() || six_byte().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
} else {
if (emboss_reserved_local_wrote_field) {
emboss_reserved_local_stream->Write(",");
}
emboss_reserved_local_stream->Write(" ");
}
emboss_reserved_local_stream->Write("six_byte: ");
six_byte().WriteToTextStream(emboss_reserved_local_stream,
emboss_reserved_local_field_options);
emboss_reserved_local_wrote_field = true;
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write("\n");
}
} else if (emboss_reserved_local_field_options.allow_partial_output() &&
emboss_reserved_local_field_options.comments() &&
!six_byte().IsAggregate() && !six_byte().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
}
emboss_reserved_local_stream->Write("# six_byte: UNREADABLE\n");
}
}
if (has_seven_byte().ValueOr(false)) {
if (!emboss_reserved_local_field_options.allow_partial_output() ||
seven_byte().IsAggregate() || seven_byte().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
} else {
if (emboss_reserved_local_wrote_field) {
emboss_reserved_local_stream->Write(",");
}
emboss_reserved_local_stream->Write(" ");
}
emboss_reserved_local_stream->Write("seven_byte: ");
seven_byte().WriteToTextStream(emboss_reserved_local_stream,
emboss_reserved_local_field_options);
emboss_reserved_local_wrote_field = true;
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write("\n");
}
} else if (emboss_reserved_local_field_options.allow_partial_output() &&
emboss_reserved_local_field_options.comments() &&
!seven_byte().IsAggregate() && !seven_byte().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
}
emboss_reserved_local_stream->Write("# seven_byte: UNREADABLE\n");
}
}
if (has_eight_byte().ValueOr(false)) {
if (!emboss_reserved_local_field_options.allow_partial_output() ||
eight_byte().IsAggregate() || eight_byte().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
} else {
if (emboss_reserved_local_wrote_field) {
emboss_reserved_local_stream->Write(",");
}
emboss_reserved_local_stream->Write(" ");
}
emboss_reserved_local_stream->Write("eight_byte: ");
eight_byte().WriteToTextStream(emboss_reserved_local_stream,
emboss_reserved_local_field_options);
emboss_reserved_local_wrote_field = true;
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write("\n");
}
} else if (emboss_reserved_local_field_options.allow_partial_output() &&
emboss_reserved_local_field_options.comments() &&
!eight_byte().IsAggregate() && !eight_byte().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
}
emboss_reserved_local_stream->Write("# eight_byte: UNREADABLE\n");
}
}
if (has_four_bit().ValueOr(false)) {
if (!emboss_reserved_local_field_options.allow_partial_output() ||
four_bit().IsAggregate() || four_bit().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
} else {
if (emboss_reserved_local_wrote_field) {
emboss_reserved_local_stream->Write(",");
}
emboss_reserved_local_stream->Write(" ");
}
emboss_reserved_local_stream->Write("four_bit: ");
four_bit().WriteToTextStream(emboss_reserved_local_stream,
emboss_reserved_local_field_options);
emboss_reserved_local_wrote_field = true;
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write("\n");
}
} else if (emboss_reserved_local_field_options.allow_partial_output() &&
emboss_reserved_local_field_options.comments() &&
!four_bit().IsAggregate() && !four_bit().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
}
emboss_reserved_local_stream->Write("# four_bit: UNREADABLE\n");
}
}
if (has_six_bit().ValueOr(false)) {
if (!emboss_reserved_local_field_options.allow_partial_output() ||
six_bit().IsAggregate() || six_bit().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
} else {
if (emboss_reserved_local_wrote_field) {
emboss_reserved_local_stream->Write(",");
}
emboss_reserved_local_stream->Write(" ");
}
emboss_reserved_local_stream->Write("six_bit: ");
six_bit().WriteToTextStream(emboss_reserved_local_stream,
emboss_reserved_local_field_options);
emboss_reserved_local_wrote_field = true;
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write("\n");
}
} else if (emboss_reserved_local_field_options.allow_partial_output() &&
emboss_reserved_local_field_options.comments() &&
!six_bit().IsAggregate() && !six_bit().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
}
emboss_reserved_local_stream->Write("# six_bit: UNREADABLE\n");
}
}
if (has_ten_bit().ValueOr(false)) {
if (!emboss_reserved_local_field_options.allow_partial_output() ||
ten_bit().IsAggregate() || ten_bit().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
} else {
if (emboss_reserved_local_wrote_field) {
emboss_reserved_local_stream->Write(",");
}
emboss_reserved_local_stream->Write(" ");
}
emboss_reserved_local_stream->Write("ten_bit: ");
ten_bit().WriteToTextStream(emboss_reserved_local_stream,
emboss_reserved_local_field_options);
emboss_reserved_local_wrote_field = true;
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write("\n");
}
} else if (emboss_reserved_local_field_options.allow_partial_output() &&
emboss_reserved_local_field_options.comments() &&
!ten_bit().IsAggregate() && !ten_bit().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
}
emboss_reserved_local_stream->Write("# ten_bit: UNREADABLE\n");
}
}
if (has_twelve_bit().ValueOr(false)) {
if (!emboss_reserved_local_field_options.allow_partial_output() ||
twelve_bit().IsAggregate() || twelve_bit().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
} else {
if (emboss_reserved_local_wrote_field) {
emboss_reserved_local_stream->Write(",");
}
emboss_reserved_local_stream->Write(" ");
}
emboss_reserved_local_stream->Write("twelve_bit: ");
twelve_bit().WriteToTextStream(emboss_reserved_local_stream,
emboss_reserved_local_field_options);
emboss_reserved_local_wrote_field = true;
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write("\n");
}
} else if (emboss_reserved_local_field_options.allow_partial_output() &&
emboss_reserved_local_field_options.comments() &&
!twelve_bit().IsAggregate() && !twelve_bit().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
}
emboss_reserved_local_stream->Write("# twelve_bit: UNREADABLE\n");
}
}
(void)emboss_reserved_local_wrote_field;
if (emboss_reserved_local_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_options.current_indent());
emboss_reserved_local_stream->Write("}");
} else {
emboss_reserved_local_stream->Write(" }");
}
}
static constexpr bool IsAggregate() { return true; }
public:
typename ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 0>>, 8>>
one_byte() const;
::emboss::support::Maybe<bool> has_one_byte() const;
public:
typename ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<16, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 1>>, 16>>
two_byte() const;
::emboss::support::Maybe<bool> has_two_byte() const;
public:
typename ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<24, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 3>>, 24>>
three_byte() const;
::emboss::support::Maybe<bool> has_three_byte() const;
public:
typename ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<32, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 6>>, 32>>
four_byte() const;
::emboss::support::Maybe<bool> has_four_byte() const;
public:
typename ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<40, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 10>>, 40>>
five_byte() const;
::emboss::support::Maybe<bool> has_five_byte() const;
public:
typename ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<48, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 15>>, 48>>
six_byte() const;
::emboss::support::Maybe<bool> has_six_byte() const;
public:
typename ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<56, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 21>>, 56>>
seven_byte() const;
::emboss::support::Maybe<bool> has_seven_byte() const;
public:
typename ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<64, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 28>>, 64>>
eight_byte() const;
::emboss::support::Maybe<bool> has_eight_byte() const;
private:
typename ::emboss::test::BcdSizes::GenericEmbossReservedAnonymousField1View<typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 36>>, 32>>
emboss_reserved_anonymous_field_1() const;
::emboss::support::Maybe<bool> has_emboss_reserved_anonymous_field_1() const;
public:
auto four_bit() const -> decltype(this->emboss_reserved_anonymous_field_1().four_bit()) {
return has_four_bit().ValueOrDefault() ? emboss_reserved_anonymous_field_1().four_bit()
: decltype(this->emboss_reserved_anonymous_field_1().four_bit())();
}
::emboss::support::Maybe<bool> has_four_bit() const;
public:
auto six_bit() const -> decltype(this->emboss_reserved_anonymous_field_1().six_bit()) {
return has_six_bit().ValueOrDefault() ? emboss_reserved_anonymous_field_1().six_bit()
: decltype(this->emboss_reserved_anonymous_field_1().six_bit())();
}
::emboss::support::Maybe<bool> has_six_bit() const;
public:
auto ten_bit() const -> decltype(this->emboss_reserved_anonymous_field_1().ten_bit()) {
return has_ten_bit().ValueOrDefault() ? emboss_reserved_anonymous_field_1().ten_bit()
: decltype(this->emboss_reserved_anonymous_field_1().ten_bit())();
}
::emboss::support::Maybe<bool> has_ten_bit() const;
public:
auto twelve_bit() const -> decltype(this->emboss_reserved_anonymous_field_1().twelve_bit()) {
return has_twelve_bit().ValueOrDefault() ? emboss_reserved_anonymous_field_1().twelve_bit()
: decltype(this->emboss_reserved_anonymous_field_1().twelve_bit())();
}
::emboss::support::Maybe<bool> has_twelve_bit() const;
public:
class EmbossReservedDollarVirtualIntrinsicSizeInBytesView final {
public:
using ValueType = ::std::int32_t;
constexpr EmbossReservedDollarVirtualIntrinsicSizeInBytesView() {}
EmbossReservedDollarVirtualIntrinsicSizeInBytesView(const EmbossReservedDollarVirtualIntrinsicSizeInBytesView &) = default;
EmbossReservedDollarVirtualIntrinsicSizeInBytesView(EmbossReservedDollarVirtualIntrinsicSizeInBytesView &&) = default;
EmbossReservedDollarVirtualIntrinsicSizeInBytesView &operator=(const EmbossReservedDollarVirtualIntrinsicSizeInBytesView &) =
default;
EmbossReservedDollarVirtualIntrinsicSizeInBytesView &operator=(EmbossReservedDollarVirtualIntrinsicSizeInBytesView &&) =
default;
~EmbossReservedDollarVirtualIntrinsicSizeInBytesView() = default;
static constexpr ::std::int32_t Read();
static constexpr ::std::int32_t UncheckedRead();
static constexpr bool Ok() { return true; }
template <class Stream>
void WriteToTextStream(Stream *emboss_reserved_local_stream,
const ::emboss::TextOutputOptions
&emboss_reserved_local_options) const {
::emboss::support::WriteIntegerViewToTextStream(
this, emboss_reserved_local_stream, emboss_reserved_local_options);
}
static constexpr bool IsAggregate() { return false; }
};
static constexpr EmbossReservedDollarVirtualIntrinsicSizeInBytesView IntrinsicSizeInBytes() {
return EmbossReservedDollarVirtualIntrinsicSizeInBytesView();
}
static constexpr ::emboss::support::Maybe<bool> has_IntrinsicSizeInBytes() {
return ::emboss::support::Maybe<bool>(true);
}
public:
class EmbossReservedDollarVirtualMaxSizeInBytesView final {
public:
using ValueType = ::std::int32_t;
constexpr EmbossReservedDollarVirtualMaxSizeInBytesView() {}
EmbossReservedDollarVirtualMaxSizeInBytesView(const EmbossReservedDollarVirtualMaxSizeInBytesView &) = default;
EmbossReservedDollarVirtualMaxSizeInBytesView(EmbossReservedDollarVirtualMaxSizeInBytesView &&) = default;
EmbossReservedDollarVirtualMaxSizeInBytesView &operator=(const EmbossReservedDollarVirtualMaxSizeInBytesView &) =
default;
EmbossReservedDollarVirtualMaxSizeInBytesView &operator=(EmbossReservedDollarVirtualMaxSizeInBytesView &&) =
default;
~EmbossReservedDollarVirtualMaxSizeInBytesView() = default;
static constexpr ::std::int32_t Read();
static constexpr ::std::int32_t UncheckedRead();
static constexpr bool Ok() { return true; }
template <class Stream>
void WriteToTextStream(Stream *emboss_reserved_local_stream,
const ::emboss::TextOutputOptions
&emboss_reserved_local_options) const {
::emboss::support::WriteIntegerViewToTextStream(
this, emboss_reserved_local_stream, emboss_reserved_local_options);
}
static constexpr bool IsAggregate() { return false; }
};
static constexpr EmbossReservedDollarVirtualMaxSizeInBytesView MaxSizeInBytes() {
return EmbossReservedDollarVirtualMaxSizeInBytesView();
}
static constexpr ::emboss::support::Maybe<bool> has_MaxSizeInBytes() {
return ::emboss::support::Maybe<bool>(true);
}
public:
class EmbossReservedDollarVirtualMinSizeInBytesView final {
public:
using ValueType = ::std::int32_t;
constexpr EmbossReservedDollarVirtualMinSizeInBytesView() {}
EmbossReservedDollarVirtualMinSizeInBytesView(const EmbossReservedDollarVirtualMinSizeInBytesView &) = default;
EmbossReservedDollarVirtualMinSizeInBytesView(EmbossReservedDollarVirtualMinSizeInBytesView &&) = default;
EmbossReservedDollarVirtualMinSizeInBytesView &operator=(const EmbossReservedDollarVirtualMinSizeInBytesView &) =
default;
EmbossReservedDollarVirtualMinSizeInBytesView &operator=(EmbossReservedDollarVirtualMinSizeInBytesView &&) =
default;
~EmbossReservedDollarVirtualMinSizeInBytesView() = default;
static constexpr ::std::int32_t Read();
static constexpr ::std::int32_t UncheckedRead();
static constexpr bool Ok() { return true; }
template <class Stream>
void WriteToTextStream(Stream *emboss_reserved_local_stream,
const ::emboss::TextOutputOptions
&emboss_reserved_local_options) const {
::emboss::support::WriteIntegerViewToTextStream(
this, emboss_reserved_local_stream, emboss_reserved_local_options);
}
static constexpr bool IsAggregate() { return false; }
};
static constexpr EmbossReservedDollarVirtualMinSizeInBytesView MinSizeInBytes() {
return EmbossReservedDollarVirtualMinSizeInBytesView();
}
static constexpr ::emboss::support::Maybe<bool> has_MinSizeInBytes() {
return ::emboss::support::Maybe<bool>(true);
}
private:
Storage backing_;
template <class OtherStorage>
friend class GenericBcdSizesView;
};
using BcdSizesView =
GenericBcdSizesView</**/ ::emboss::support::ReadOnlyContiguousBuffer>;
using BcdSizesWriter =
GenericBcdSizesView</**/ ::emboss::support::ReadWriteContiguousBuffer>;
template <class View>
struct EmbossReservedInternalIsGenericBcdSizesView {
static constexpr const bool value = false;
};
template <class Storage>
struct EmbossReservedInternalIsGenericBcdSizesView<
GenericBcdSizesView<Storage>> {
static constexpr const bool value = true;
};
template <typename T>
inline GenericBcdSizesView<
/**/ ::emboss::support::ContiguousBuffer<
typename ::std::remove_reference<
decltype(*::std::declval<T>()->data())>::type,
1, 0>>
MakeBcdSizesView( T &&emboss_reserved_local_arg) {
return GenericBcdSizesView<
/**/ ::emboss::support::ContiguousBuffer<
typename ::std::remove_reference<decltype(
*::std::declval<T>()->data())>::type,
1, 0>>(
::std::forward<T>(emboss_reserved_local_arg));
}
template <typename T>
inline GenericBcdSizesView</**/ ::emboss::support::ContiguousBuffer<T, 1, 0>>
MakeBcdSizesView( T *emboss_reserved_local_data,
::std::size_t emboss_reserved_local_size) {
return GenericBcdSizesView</**/ ::emboss::support::ContiguousBuffer<T, 1, 0>>(
emboss_reserved_local_data,
emboss_reserved_local_size);
}
template <typename T, ::std::size_t kAlignment>
inline GenericBcdSizesView<
/**/ ::emboss::support::ContiguousBuffer<T, kAlignment, 0>>
MakeAlignedBcdSizesView(
T *emboss_reserved_local_data,
::std::size_t emboss_reserved_local_size) {
return GenericBcdSizesView<
/**/ ::emboss::support::ContiguousBuffer<T, kAlignment, 0>>(
emboss_reserved_local_data,
emboss_reserved_local_size);
}
namespace BcdBigEndian {
} // namespace BcdBigEndian
template <class View>
struct EmbossReservedInternalIsGenericBcdBigEndianView;
template <class Storage>
class GenericBcdBigEndianView final {
public:
GenericBcdBigEndianView() : backing_() {}
explicit GenericBcdBigEndianView(
Storage emboss_reserved_local_bytes)
: backing_(emboss_reserved_local_bytes)
{}
template <typename OtherStorage>
GenericBcdBigEndianView(
const GenericBcdBigEndianView<OtherStorage> &emboss_reserved_local_other)
: backing_{emboss_reserved_local_other.BackingStorage()}
{}
template <typename Arg,
typename = typename ::std::enable_if<
!EmbossReservedInternalIsGenericBcdBigEndianView<
typename ::std::remove_cv<typename ::std::remove_reference<
Arg>::type>::type>::value>::type>
explicit GenericBcdBigEndianView(
Arg &&emboss_reserved_local_arg)
: backing_(::std::forward<Arg>(
emboss_reserved_local_arg))
{}
template <typename Arg0, typename Arg1, typename... Args>
explicit GenericBcdBigEndianView(
Arg0 &&emboss_reserved_local_arg0,
Arg1 &&emboss_reserved_local_arg1, Args &&... emboss_reserved_local_args)
: backing_(::std::forward<Arg0>(emboss_reserved_local_arg0),
::std::forward<Arg1>(emboss_reserved_local_arg1),
::std::forward<Args>(
emboss_reserved_local_args)...)
{}
template <typename OtherStorage>
GenericBcdBigEndianView<Storage> &operator=(
const GenericBcdBigEndianView<OtherStorage> &emboss_reserved_local_other) {
backing_ = emboss_reserved_local_other.BackingStorage();
return *this;
}
bool Ok() const {
if (!IsComplete()) return false;
if (!has_four_byte().Known()) return false;
if (has_four_byte().ValueOrDefault() && !four_byte().Ok()) return false;
if (!has_IntrinsicSizeInBytes().Known()) return false;
if (has_IntrinsicSizeInBytes().ValueOrDefault() && !IntrinsicSizeInBytes().Ok()) return false;
if (!has_MaxSizeInBytes().Known()) return false;
if (has_MaxSizeInBytes().ValueOrDefault() && !MaxSizeInBytes().Ok()) return false;
if (!has_MinSizeInBytes().Known()) return false;
if (has_MinSizeInBytes().ValueOrDefault() && !MinSizeInBytes().Ok()) return false;
return true;
}
Storage BackingStorage() const { return backing_; }
bool IsComplete() const {
return backing_.Ok() && IntrinsicSizeInBytes().Ok() &&
backing_.SizeInBytes() >=
static_cast</**/ ::std::size_t>(
IntrinsicSizeInBytes().UncheckedRead());
}
static constexpr ::std::size_t SizeInBytes() {
return static_cast</**/ ::std::size_t>(IntrinsicSizeInBytes().Read());
}
static constexpr bool SizeIsKnown() {
return IntrinsicSizeInBytes().Ok();
}
template <typename OtherStorage>
bool Equals(
GenericBcdBigEndianView<OtherStorage> emboss_reserved_local_other) const {
if (!has_four_byte().Known()) return false;
if (!emboss_reserved_local_other.has_four_byte().Known()) return false;
if (emboss_reserved_local_other.has_four_byte().ValueOrDefault() &&
!has_four_byte().ValueOrDefault())
return false;
if (has_four_byte().ValueOrDefault() &&
!emboss_reserved_local_other.has_four_byte().ValueOrDefault())
return false;
if (emboss_reserved_local_other.has_four_byte().ValueOrDefault() &&
has_four_byte().ValueOrDefault() &&
!four_byte().Equals(emboss_reserved_local_other.four_byte()))
return false;
return true;
}
template <typename OtherStorage>
bool UncheckedEquals(
GenericBcdBigEndianView<OtherStorage> emboss_reserved_local_other) const {
if (emboss_reserved_local_other.has_four_byte().ValueOr(false) &&
!has_four_byte().ValueOr(false))
return false;
if (has_four_byte().ValueOr(false) &&
!emboss_reserved_local_other.has_four_byte().ValueOr(false))
return false;
if (emboss_reserved_local_other.has_four_byte().ValueOr(false) &&
has_four_byte().ValueOr(false) &&
!four_byte().UncheckedEquals(emboss_reserved_local_other.four_byte()))
return false;
return true;
}
template <typename OtherStorage>
void UncheckedCopyFrom(
GenericBcdBigEndianView<OtherStorage> emboss_reserved_local_other) const {
backing_.UncheckedCopyFrom(
emboss_reserved_local_other.BackingStorage(),
emboss_reserved_local_other.IntrinsicSizeInBytes().UncheckedRead());
}
template <typename OtherStorage>
void CopyFrom(
GenericBcdBigEndianView<OtherStorage> emboss_reserved_local_other) const {
backing_.CopyFrom(
emboss_reserved_local_other.BackingStorage(),
emboss_reserved_local_other.IntrinsicSizeInBytes().Read());
}
template <typename OtherStorage>
bool TryToCopyFrom(
GenericBcdBigEndianView<OtherStorage> emboss_reserved_local_other) const {
return emboss_reserved_local_other.Ok() && backing_.TryToCopyFrom(
emboss_reserved_local_other.BackingStorage(),
emboss_reserved_local_other.IntrinsicSizeInBytes().Read());
}
template <class Stream>
bool UpdateFromTextStream(Stream *emboss_reserved_local_stream) const {
::std::string emboss_reserved_local_brace;
if (!::emboss::support::ReadToken(emboss_reserved_local_stream,
&emboss_reserved_local_brace))
return false;
if (emboss_reserved_local_brace != "{") return false;
for (;;) {
::std::string emboss_reserved_local_name;
if (!::emboss::support::ReadToken(emboss_reserved_local_stream,
&emboss_reserved_local_name))
return false;
if (emboss_reserved_local_name == ",")
if (!::emboss::support::ReadToken(emboss_reserved_local_stream,
&emboss_reserved_local_name))
return false;
if (emboss_reserved_local_name == "}") return true;
::std::string emboss_reserved_local_colon;
if (!::emboss::support::ReadToken(emboss_reserved_local_stream,
&emboss_reserved_local_colon))
return false;
if (emboss_reserved_local_colon != ":") return false;
if (emboss_reserved_local_name == "four_byte") {
if (!four_byte().UpdateFromTextStream(
emboss_reserved_local_stream)) {
return false;
}
continue;
}
return false;
}
}
template <class Stream>
void WriteToTextStream(
Stream *emboss_reserved_local_stream,
::emboss::TextOutputOptions emboss_reserved_local_options) const {
::emboss::TextOutputOptions emboss_reserved_local_field_options =
emboss_reserved_local_options.PlusOneIndent();
if (emboss_reserved_local_options.multiline()) {
emboss_reserved_local_stream->Write("{\n");
} else {
emboss_reserved_local_stream->Write("{");
}
bool emboss_reserved_local_wrote_field = false;
if (has_four_byte().ValueOr(false)) {
if (!emboss_reserved_local_field_options.allow_partial_output() ||
four_byte().IsAggregate() || four_byte().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
} else {
if (emboss_reserved_local_wrote_field) {
emboss_reserved_local_stream->Write(",");
}
emboss_reserved_local_stream->Write(" ");
}
emboss_reserved_local_stream->Write("four_byte: ");
four_byte().WriteToTextStream(emboss_reserved_local_stream,
emboss_reserved_local_field_options);
emboss_reserved_local_wrote_field = true;
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write("\n");
}
} else if (emboss_reserved_local_field_options.allow_partial_output() &&
emboss_reserved_local_field_options.comments() &&
!four_byte().IsAggregate() && !four_byte().Ok()) {
if (emboss_reserved_local_field_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_field_options.current_indent());
}
emboss_reserved_local_stream->Write("# four_byte: UNREADABLE\n");
}
}
(void)emboss_reserved_local_wrote_field;
if (emboss_reserved_local_options.multiline()) {
emboss_reserved_local_stream->Write(
emboss_reserved_local_options.current_indent());
emboss_reserved_local_stream->Write("}");
} else {
emboss_reserved_local_stream->Write(" }");
}
}
static constexpr bool IsAggregate() { return true; }
public:
typename ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<32, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::BigEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 0>>, 32>>
four_byte() const;
::emboss::support::Maybe<bool> has_four_byte() const;
public:
class EmbossReservedDollarVirtualIntrinsicSizeInBytesView final {
public:
using ValueType = ::std::int32_t;
constexpr EmbossReservedDollarVirtualIntrinsicSizeInBytesView() {}
EmbossReservedDollarVirtualIntrinsicSizeInBytesView(const EmbossReservedDollarVirtualIntrinsicSizeInBytesView &) = default;
EmbossReservedDollarVirtualIntrinsicSizeInBytesView(EmbossReservedDollarVirtualIntrinsicSizeInBytesView &&) = default;
EmbossReservedDollarVirtualIntrinsicSizeInBytesView &operator=(const EmbossReservedDollarVirtualIntrinsicSizeInBytesView &) =
default;
EmbossReservedDollarVirtualIntrinsicSizeInBytesView &operator=(EmbossReservedDollarVirtualIntrinsicSizeInBytesView &&) =
default;
~EmbossReservedDollarVirtualIntrinsicSizeInBytesView() = default;
static constexpr ::std::int32_t Read();
static constexpr ::std::int32_t UncheckedRead();
static constexpr bool Ok() { return true; }
template <class Stream>
void WriteToTextStream(Stream *emboss_reserved_local_stream,
const ::emboss::TextOutputOptions
&emboss_reserved_local_options) const {
::emboss::support::WriteIntegerViewToTextStream(
this, emboss_reserved_local_stream, emboss_reserved_local_options);
}
static constexpr bool IsAggregate() { return false; }
};
static constexpr EmbossReservedDollarVirtualIntrinsicSizeInBytesView IntrinsicSizeInBytes() {
return EmbossReservedDollarVirtualIntrinsicSizeInBytesView();
}
static constexpr ::emboss::support::Maybe<bool> has_IntrinsicSizeInBytes() {
return ::emboss::support::Maybe<bool>(true);
}
public:
class EmbossReservedDollarVirtualMaxSizeInBytesView final {
public:
using ValueType = ::std::int32_t;
constexpr EmbossReservedDollarVirtualMaxSizeInBytesView() {}
EmbossReservedDollarVirtualMaxSizeInBytesView(const EmbossReservedDollarVirtualMaxSizeInBytesView &) = default;
EmbossReservedDollarVirtualMaxSizeInBytesView(EmbossReservedDollarVirtualMaxSizeInBytesView &&) = default;
EmbossReservedDollarVirtualMaxSizeInBytesView &operator=(const EmbossReservedDollarVirtualMaxSizeInBytesView &) =
default;
EmbossReservedDollarVirtualMaxSizeInBytesView &operator=(EmbossReservedDollarVirtualMaxSizeInBytesView &&) =
default;
~EmbossReservedDollarVirtualMaxSizeInBytesView() = default;
static constexpr ::std::int32_t Read();
static constexpr ::std::int32_t UncheckedRead();
static constexpr bool Ok() { return true; }
template <class Stream>
void WriteToTextStream(Stream *emboss_reserved_local_stream,
const ::emboss::TextOutputOptions
&emboss_reserved_local_options) const {
::emboss::support::WriteIntegerViewToTextStream(
this, emboss_reserved_local_stream, emboss_reserved_local_options);
}
static constexpr bool IsAggregate() { return false; }
};
static constexpr EmbossReservedDollarVirtualMaxSizeInBytesView MaxSizeInBytes() {
return EmbossReservedDollarVirtualMaxSizeInBytesView();
}
static constexpr ::emboss::support::Maybe<bool> has_MaxSizeInBytes() {
return ::emboss::support::Maybe<bool>(true);
}
public:
class EmbossReservedDollarVirtualMinSizeInBytesView final {
public:
using ValueType = ::std::int32_t;
constexpr EmbossReservedDollarVirtualMinSizeInBytesView() {}
EmbossReservedDollarVirtualMinSizeInBytesView(const EmbossReservedDollarVirtualMinSizeInBytesView &) = default;
EmbossReservedDollarVirtualMinSizeInBytesView(EmbossReservedDollarVirtualMinSizeInBytesView &&) = default;
EmbossReservedDollarVirtualMinSizeInBytesView &operator=(const EmbossReservedDollarVirtualMinSizeInBytesView &) =
default;
EmbossReservedDollarVirtualMinSizeInBytesView &operator=(EmbossReservedDollarVirtualMinSizeInBytesView &&) =
default;
~EmbossReservedDollarVirtualMinSizeInBytesView() = default;
static constexpr ::std::int32_t Read();
static constexpr ::std::int32_t UncheckedRead();
static constexpr bool Ok() { return true; }
template <class Stream>
void WriteToTextStream(Stream *emboss_reserved_local_stream,
const ::emboss::TextOutputOptions
&emboss_reserved_local_options) const {
::emboss::support::WriteIntegerViewToTextStream(
this, emboss_reserved_local_stream, emboss_reserved_local_options);
}
static constexpr bool IsAggregate() { return false; }
};
static constexpr EmbossReservedDollarVirtualMinSizeInBytesView MinSizeInBytes() {
return EmbossReservedDollarVirtualMinSizeInBytesView();
}
static constexpr ::emboss::support::Maybe<bool> has_MinSizeInBytes() {
return ::emboss::support::Maybe<bool>(true);
}
private:
Storage backing_;
template <class OtherStorage>
friend class GenericBcdBigEndianView;
};
using BcdBigEndianView =
GenericBcdBigEndianView</**/ ::emboss::support::ReadOnlyContiguousBuffer>;
using BcdBigEndianWriter =
GenericBcdBigEndianView</**/ ::emboss::support::ReadWriteContiguousBuffer>;
template <class View>
struct EmbossReservedInternalIsGenericBcdBigEndianView {
static constexpr const bool value = false;
};
template <class Storage>
struct EmbossReservedInternalIsGenericBcdBigEndianView<
GenericBcdBigEndianView<Storage>> {
static constexpr const bool value = true;
};
template <typename T>
inline GenericBcdBigEndianView<
/**/ ::emboss::support::ContiguousBuffer<
typename ::std::remove_reference<
decltype(*::std::declval<T>()->data())>::type,
1, 0>>
MakeBcdBigEndianView( T &&emboss_reserved_local_arg) {
return GenericBcdBigEndianView<
/**/ ::emboss::support::ContiguousBuffer<
typename ::std::remove_reference<decltype(
*::std::declval<T>()->data())>::type,
1, 0>>(
::std::forward<T>(emboss_reserved_local_arg));
}
template <typename T>
inline GenericBcdBigEndianView</**/ ::emboss::support::ContiguousBuffer<T, 1, 0>>
MakeBcdBigEndianView( T *emboss_reserved_local_data,
::std::size_t emboss_reserved_local_size) {
return GenericBcdBigEndianView</**/ ::emboss::support::ContiguousBuffer<T, 1, 0>>(
emboss_reserved_local_data,
emboss_reserved_local_size);
}
template <typename T, ::std::size_t kAlignment>
inline GenericBcdBigEndianView<
/**/ ::emboss::support::ContiguousBuffer<T, kAlignment, 0>>
MakeAlignedBcdBigEndianView(
T *emboss_reserved_local_data,
::std::size_t emboss_reserved_local_size) {
return GenericBcdBigEndianView<
/**/ ::emboss::support::ContiguousBuffer<T, kAlignment, 0>>(
emboss_reserved_local_data,
emboss_reserved_local_size);
}
namespace BcdSizes {
namespace EmbossReservedAnonymousField1 {
} // namespace EmbossReservedAnonymousField1
template <class Storage>
inline typename ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<4, ::emboss::support::AllValuesAreOk>,
typename Storage::template OffsetStorageType</**/0, 0>>
GenericEmbossReservedAnonymousField1View<Storage>::four_bit()
const {
if ( has_four_bit().ValueOr(false)) {
auto emboss_reserved_local_size = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(4LL));
auto emboss_reserved_local_offset = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(0LL));
if (emboss_reserved_local_size.Known() &&
emboss_reserved_local_size.ValueOr(0) >= 0 &&
emboss_reserved_local_offset.Known() &&
emboss_reserved_local_offset.ValueOr(0) >= 0) {
return ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<4, ::emboss::support::AllValuesAreOk>,
typename Storage::template OffsetStorageType</**/0, 0>>
(
backing_
.template GetOffsetStorage<0,
0>(
emboss_reserved_local_offset.ValueOrDefault(),
emboss_reserved_local_size.ValueOrDefault()));
}
}
return ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<4, ::emboss::support::AllValuesAreOk>,
typename Storage::template OffsetStorageType</**/0, 0>>
();
}
template <class Storage>
inline ::emboss::support::Maybe<bool>
GenericEmbossReservedAnonymousField1View<Storage>::has_four_bit() const {
return ::emboss::support::Maybe</**/bool>(true);
}
template <class Storage>
inline typename ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<6, ::emboss::support::AllValuesAreOk>,
typename Storage::template OffsetStorageType</**/0, 4>>
GenericEmbossReservedAnonymousField1View<Storage>::six_bit()
const {
if ( has_six_bit().ValueOr(false)) {
auto emboss_reserved_local_size = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(6LL));
auto emboss_reserved_local_offset = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(4LL));
if (emboss_reserved_local_size.Known() &&
emboss_reserved_local_size.ValueOr(0) >= 0 &&
emboss_reserved_local_offset.Known() &&
emboss_reserved_local_offset.ValueOr(0) >= 0) {
return ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<6, ::emboss::support::AllValuesAreOk>,
typename Storage::template OffsetStorageType</**/0, 4>>
(
backing_
.template GetOffsetStorage<0,
4>(
emboss_reserved_local_offset.ValueOrDefault(),
emboss_reserved_local_size.ValueOrDefault()));
}
}
return ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<6, ::emboss::support::AllValuesAreOk>,
typename Storage::template OffsetStorageType</**/0, 4>>
();
}
template <class Storage>
inline ::emboss::support::Maybe<bool>
GenericEmbossReservedAnonymousField1View<Storage>::has_six_bit() const {
return ::emboss::support::Maybe</**/bool>(true);
}
template <class Storage>
inline typename ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<10, ::emboss::support::AllValuesAreOk>,
typename Storage::template OffsetStorageType</**/0, 10>>
GenericEmbossReservedAnonymousField1View<Storage>::ten_bit()
const {
if ( has_ten_bit().ValueOr(false)) {
auto emboss_reserved_local_size = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(10LL));
auto emboss_reserved_local_offset = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(10LL));
if (emboss_reserved_local_size.Known() &&
emboss_reserved_local_size.ValueOr(0) >= 0 &&
emboss_reserved_local_offset.Known() &&
emboss_reserved_local_offset.ValueOr(0) >= 0) {
return ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<10, ::emboss::support::AllValuesAreOk>,
typename Storage::template OffsetStorageType</**/0, 10>>
(
backing_
.template GetOffsetStorage<0,
10>(
emboss_reserved_local_offset.ValueOrDefault(),
emboss_reserved_local_size.ValueOrDefault()));
}
}
return ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<10, ::emboss::support::AllValuesAreOk>,
typename Storage::template OffsetStorageType</**/0, 10>>
();
}
template <class Storage>
inline ::emboss::support::Maybe<bool>
GenericEmbossReservedAnonymousField1View<Storage>::has_ten_bit() const {
return ::emboss::support::Maybe</**/bool>(true);
}
template <class Storage>
inline typename ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<12, ::emboss::support::AllValuesAreOk>,
typename Storage::template OffsetStorageType</**/0, 20>>
GenericEmbossReservedAnonymousField1View<Storage>::twelve_bit()
const {
if ( has_twelve_bit().ValueOr(false)) {
auto emboss_reserved_local_size = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(12LL));
auto emboss_reserved_local_offset = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(20LL));
if (emboss_reserved_local_size.Known() &&
emboss_reserved_local_size.ValueOr(0) >= 0 &&
emboss_reserved_local_offset.Known() &&
emboss_reserved_local_offset.ValueOr(0) >= 0) {
return ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<12, ::emboss::support::AllValuesAreOk>,
typename Storage::template OffsetStorageType</**/0, 20>>
(
backing_
.template GetOffsetStorage<0,
20>(
emboss_reserved_local_offset.ValueOrDefault(),
emboss_reserved_local_size.ValueOrDefault()));
}
}
return ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<12, ::emboss::support::AllValuesAreOk>,
typename Storage::template OffsetStorageType</**/0, 20>>
();
}
template <class Storage>
inline ::emboss::support::Maybe<bool>
GenericEmbossReservedAnonymousField1View<Storage>::has_twelve_bit() const {
return ::emboss::support::Maybe</**/bool>(true);
}
namespace EmbossReservedAnonymousField1 {
inline constexpr ::std::int32_t IntrinsicSizeInBits() {
return ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(32LL)).ValueOrDefault();
}
} // namespace EmbossReservedAnonymousField1
template <class Storage>
inline constexpr ::std::int32_t
GenericEmbossReservedAnonymousField1View<Storage>::EmbossReservedDollarVirtualIntrinsicSizeInBitsView::Read() {
return EmbossReservedAnonymousField1::IntrinsicSizeInBits();
}
template <class Storage>
inline constexpr ::std::int32_t
GenericEmbossReservedAnonymousField1View<
Storage>::EmbossReservedDollarVirtualIntrinsicSizeInBitsView::UncheckedRead() {
return EmbossReservedAnonymousField1::IntrinsicSizeInBits();
}
namespace EmbossReservedAnonymousField1 {
inline constexpr ::std::int32_t MaxSizeInBits() {
return ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(32LL)).ValueOrDefault();
}
} // namespace EmbossReservedAnonymousField1
template <class Storage>
inline constexpr ::std::int32_t
GenericEmbossReservedAnonymousField1View<Storage>::EmbossReservedDollarVirtualMaxSizeInBitsView::Read() {
return EmbossReservedAnonymousField1::MaxSizeInBits();
}
template <class Storage>
inline constexpr ::std::int32_t
GenericEmbossReservedAnonymousField1View<
Storage>::EmbossReservedDollarVirtualMaxSizeInBitsView::UncheckedRead() {
return EmbossReservedAnonymousField1::MaxSizeInBits();
}
namespace EmbossReservedAnonymousField1 {
inline constexpr ::std::int32_t MinSizeInBits() {
return ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(32LL)).ValueOrDefault();
}
} // namespace EmbossReservedAnonymousField1
template <class Storage>
inline constexpr ::std::int32_t
GenericEmbossReservedAnonymousField1View<Storage>::EmbossReservedDollarVirtualMinSizeInBitsView::Read() {
return EmbossReservedAnonymousField1::MinSizeInBits();
}
template <class Storage>
inline constexpr ::std::int32_t
GenericEmbossReservedAnonymousField1View<
Storage>::EmbossReservedDollarVirtualMinSizeInBitsView::UncheckedRead() {
return EmbossReservedAnonymousField1::MinSizeInBits();
}
} // namespace BcdSizes
template <class Storage>
inline typename ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 0>>, 8>>
GenericBcdSizesView<Storage>::one_byte()
const {
if ( has_one_byte().ValueOr(false)) {
auto emboss_reserved_local_size = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(1LL));
auto emboss_reserved_local_offset = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(0LL));
if (emboss_reserved_local_size.Known() &&
emboss_reserved_local_size.ValueOr(0) >= 0 &&
emboss_reserved_local_offset.Known() &&
emboss_reserved_local_offset.ValueOr(0) >= 0) {
return ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 0>>, 8>>
(
backing_
.template GetOffsetStorage<0,
0>(
emboss_reserved_local_offset.ValueOrDefault(),
emboss_reserved_local_size.ValueOrDefault()));
}
}
return ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 0>>, 8>>
();
}
template <class Storage>
inline ::emboss::support::Maybe<bool>
GenericBcdSizesView<Storage>::has_one_byte() const {
return ::emboss::support::Maybe</**/bool>(true);
}
template <class Storage>
inline typename ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<16, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 1>>, 16>>
GenericBcdSizesView<Storage>::two_byte()
const {
if ( has_two_byte().ValueOr(false)) {
auto emboss_reserved_local_size = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(2LL));
auto emboss_reserved_local_offset = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(1LL));
if (emboss_reserved_local_size.Known() &&
emboss_reserved_local_size.ValueOr(0) >= 0 &&
emboss_reserved_local_offset.Known() &&
emboss_reserved_local_offset.ValueOr(0) >= 0) {
return ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<16, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 1>>, 16>>
(
backing_
.template GetOffsetStorage<0,
1>(
emboss_reserved_local_offset.ValueOrDefault(),
emboss_reserved_local_size.ValueOrDefault()));
}
}
return ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<16, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 1>>, 16>>
();
}
template <class Storage>
inline ::emboss::support::Maybe<bool>
GenericBcdSizesView<Storage>::has_two_byte() const {
return ::emboss::support::Maybe</**/bool>(true);
}
template <class Storage>
inline typename ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<24, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 3>>, 24>>
GenericBcdSizesView<Storage>::three_byte()
const {
if ( has_three_byte().ValueOr(false)) {
auto emboss_reserved_local_size = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(3LL));
auto emboss_reserved_local_offset = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(3LL));
if (emboss_reserved_local_size.Known() &&
emboss_reserved_local_size.ValueOr(0) >= 0 &&
emboss_reserved_local_offset.Known() &&
emboss_reserved_local_offset.ValueOr(0) >= 0) {
return ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<24, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 3>>, 24>>
(
backing_
.template GetOffsetStorage<0,
3>(
emboss_reserved_local_offset.ValueOrDefault(),
emboss_reserved_local_size.ValueOrDefault()));
}
}
return ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<24, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 3>>, 24>>
();
}
template <class Storage>
inline ::emboss::support::Maybe<bool>
GenericBcdSizesView<Storage>::has_three_byte() const {
return ::emboss::support::Maybe</**/bool>(true);
}
template <class Storage>
inline typename ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<32, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 6>>, 32>>
GenericBcdSizesView<Storage>::four_byte()
const {
if ( has_four_byte().ValueOr(false)) {
auto emboss_reserved_local_size = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(4LL));
auto emboss_reserved_local_offset = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(6LL));
if (emboss_reserved_local_size.Known() &&
emboss_reserved_local_size.ValueOr(0) >= 0 &&
emboss_reserved_local_offset.Known() &&
emboss_reserved_local_offset.ValueOr(0) >= 0) {
return ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<32, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 6>>, 32>>
(
backing_
.template GetOffsetStorage<0,
6>(
emboss_reserved_local_offset.ValueOrDefault(),
emboss_reserved_local_size.ValueOrDefault()));
}
}
return ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<32, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 6>>, 32>>
();
}
template <class Storage>
inline ::emboss::support::Maybe<bool>
GenericBcdSizesView<Storage>::has_four_byte() const {
return ::emboss::support::Maybe</**/bool>(true);
}
template <class Storage>
inline typename ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<40, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 10>>, 40>>
GenericBcdSizesView<Storage>::five_byte()
const {
if ( has_five_byte().ValueOr(false)) {
auto emboss_reserved_local_size = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(5LL));
auto emboss_reserved_local_offset = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(10LL));
if (emboss_reserved_local_size.Known() &&
emboss_reserved_local_size.ValueOr(0) >= 0 &&
emboss_reserved_local_offset.Known() &&
emboss_reserved_local_offset.ValueOr(0) >= 0) {
return ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<40, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 10>>, 40>>
(
backing_
.template GetOffsetStorage<0,
10>(
emboss_reserved_local_offset.ValueOrDefault(),
emboss_reserved_local_size.ValueOrDefault()));
}
}
return ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<40, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 10>>, 40>>
();
}
template <class Storage>
inline ::emboss::support::Maybe<bool>
GenericBcdSizesView<Storage>::has_five_byte() const {
return ::emboss::support::Maybe</**/bool>(true);
}
template <class Storage>
inline typename ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<48, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 15>>, 48>>
GenericBcdSizesView<Storage>::six_byte()
const {
if ( has_six_byte().ValueOr(false)) {
auto emboss_reserved_local_size = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(6LL));
auto emboss_reserved_local_offset = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(15LL));
if (emboss_reserved_local_size.Known() &&
emboss_reserved_local_size.ValueOr(0) >= 0 &&
emboss_reserved_local_offset.Known() &&
emboss_reserved_local_offset.ValueOr(0) >= 0) {
return ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<48, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 15>>, 48>>
(
backing_
.template GetOffsetStorage<0,
15>(
emboss_reserved_local_offset.ValueOrDefault(),
emboss_reserved_local_size.ValueOrDefault()));
}
}
return ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<48, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 15>>, 48>>
();
}
template <class Storage>
inline ::emboss::support::Maybe<bool>
GenericBcdSizesView<Storage>::has_six_byte() const {
return ::emboss::support::Maybe</**/bool>(true);
}
template <class Storage>
inline typename ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<56, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 21>>, 56>>
GenericBcdSizesView<Storage>::seven_byte()
const {
if ( has_seven_byte().ValueOr(false)) {
auto emboss_reserved_local_size = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(7LL));
auto emboss_reserved_local_offset = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(21LL));
if (emboss_reserved_local_size.Known() &&
emboss_reserved_local_size.ValueOr(0) >= 0 &&
emboss_reserved_local_offset.Known() &&
emboss_reserved_local_offset.ValueOr(0) >= 0) {
return ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<56, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 21>>, 56>>
(
backing_
.template GetOffsetStorage<0,
21>(
emboss_reserved_local_offset.ValueOrDefault(),
emboss_reserved_local_size.ValueOrDefault()));
}
}
return ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<56, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 21>>, 56>>
();
}
template <class Storage>
inline ::emboss::support::Maybe<bool>
GenericBcdSizesView<Storage>::has_seven_byte() const {
return ::emboss::support::Maybe</**/bool>(true);
}
template <class Storage>
inline typename ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<64, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 28>>, 64>>
GenericBcdSizesView<Storage>::eight_byte()
const {
if ( has_eight_byte().ValueOr(false)) {
auto emboss_reserved_local_size = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(8LL));
auto emboss_reserved_local_offset = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(28LL));
if (emboss_reserved_local_size.Known() &&
emboss_reserved_local_size.ValueOr(0) >= 0 &&
emboss_reserved_local_offset.Known() &&
emboss_reserved_local_offset.ValueOr(0) >= 0) {
return ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<64, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 28>>, 64>>
(
backing_
.template GetOffsetStorage<0,
28>(
emboss_reserved_local_offset.ValueOrDefault(),
emboss_reserved_local_size.ValueOrDefault()));
}
}
return ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<64, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 28>>, 64>>
();
}
template <class Storage>
inline ::emboss::support::Maybe<bool>
GenericBcdSizesView<Storage>::has_eight_byte() const {
return ::emboss::support::Maybe</**/bool>(true);
}
template <class Storage>
inline typename ::emboss::test::BcdSizes::GenericEmbossReservedAnonymousField1View<typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 36>>, 32>>
GenericBcdSizesView<Storage>::emboss_reserved_anonymous_field_1()
const {
if ( has_emboss_reserved_anonymous_field_1().ValueOr(false)) {
auto emboss_reserved_local_size = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(4LL));
auto emboss_reserved_local_offset = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(36LL));
if (emboss_reserved_local_size.Known() &&
emboss_reserved_local_size.ValueOr(0) >= 0 &&
emboss_reserved_local_offset.Known() &&
emboss_reserved_local_offset.ValueOr(0) >= 0) {
return ::emboss::test::BcdSizes::GenericEmbossReservedAnonymousField1View<typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 36>>, 32>>
(
backing_
.template GetOffsetStorage<0,
36>(
emboss_reserved_local_offset.ValueOrDefault(),
emboss_reserved_local_size.ValueOrDefault()));
}
}
return ::emboss::test::BcdSizes::GenericEmbossReservedAnonymousField1View<typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 36>>, 32>>
();
}
template <class Storage>
inline ::emboss::support::Maybe<bool>
GenericBcdSizesView<Storage>::has_emboss_reserved_anonymous_field_1() const {
return ::emboss::support::Maybe</**/bool>(true);
}
template <class Storage>
inline ::emboss::support::Maybe<bool>
GenericBcdSizesView<Storage>::has_four_bit() const {
return ::emboss::support::And</**/bool, bool, bool, bool>(::emboss::support::Maybe</**/bool>(true), ::emboss::support::Maybe</**/bool>(true));
}
template <class Storage>
inline ::emboss::support::Maybe<bool>
GenericBcdSizesView<Storage>::has_six_bit() const {
return ::emboss::support::And</**/bool, bool, bool, bool>(::emboss::support::Maybe</**/bool>(true), ::emboss::support::Maybe</**/bool>(true));
}
template <class Storage>
inline ::emboss::support::Maybe<bool>
GenericBcdSizesView<Storage>::has_ten_bit() const {
return ::emboss::support::And</**/bool, bool, bool, bool>(::emboss::support::Maybe</**/bool>(true), ::emboss::support::Maybe</**/bool>(true));
}
template <class Storage>
inline ::emboss::support::Maybe<bool>
GenericBcdSizesView<Storage>::has_twelve_bit() const {
return ::emboss::support::And</**/bool, bool, bool, bool>(::emboss::support::Maybe</**/bool>(true), ::emboss::support::Maybe</**/bool>(true));
}
namespace BcdSizes {
inline constexpr ::std::int32_t IntrinsicSizeInBytes() {
return ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(40LL)).ValueOrDefault();
}
} // namespace BcdSizes
template <class Storage>
inline constexpr ::std::int32_t
GenericBcdSizesView<Storage>::EmbossReservedDollarVirtualIntrinsicSizeInBytesView::Read() {
return BcdSizes::IntrinsicSizeInBytes();
}
template <class Storage>
inline constexpr ::std::int32_t
GenericBcdSizesView<
Storage>::EmbossReservedDollarVirtualIntrinsicSizeInBytesView::UncheckedRead() {
return BcdSizes::IntrinsicSizeInBytes();
}
namespace BcdSizes {
inline constexpr ::std::int32_t MaxSizeInBytes() {
return ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(40LL)).ValueOrDefault();
}
} // namespace BcdSizes
template <class Storage>
inline constexpr ::std::int32_t
GenericBcdSizesView<Storage>::EmbossReservedDollarVirtualMaxSizeInBytesView::Read() {
return BcdSizes::MaxSizeInBytes();
}
template <class Storage>
inline constexpr ::std::int32_t
GenericBcdSizesView<
Storage>::EmbossReservedDollarVirtualMaxSizeInBytesView::UncheckedRead() {
return BcdSizes::MaxSizeInBytes();
}
namespace BcdSizes {
inline constexpr ::std::int32_t MinSizeInBytes() {
return ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(40LL)).ValueOrDefault();
}
} // namespace BcdSizes
template <class Storage>
inline constexpr ::std::int32_t
GenericBcdSizesView<Storage>::EmbossReservedDollarVirtualMinSizeInBytesView::Read() {
return BcdSizes::MinSizeInBytes();
}
template <class Storage>
inline constexpr ::std::int32_t
GenericBcdSizesView<
Storage>::EmbossReservedDollarVirtualMinSizeInBytesView::UncheckedRead() {
return BcdSizes::MinSizeInBytes();
}
namespace BcdBigEndian {
} // namespace BcdBigEndian
template <class Storage>
inline typename ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<32, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::BigEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 0>>, 32>>
GenericBcdBigEndianView<Storage>::four_byte()
const {
if ( has_four_byte().ValueOr(false)) {
auto emboss_reserved_local_size = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(4LL));
auto emboss_reserved_local_offset = ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(0LL));
if (emboss_reserved_local_size.Known() &&
emboss_reserved_local_size.ValueOr(0) >= 0 &&
emboss_reserved_local_offset.Known() &&
emboss_reserved_local_offset.ValueOr(0) >= 0) {
return ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<32, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::BigEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 0>>, 32>>
(
backing_
.template GetOffsetStorage<0,
0>(
emboss_reserved_local_offset.ValueOrDefault(),
emboss_reserved_local_size.ValueOrDefault()));
}
}
return ::emboss::prelude::BcdView<
/**/ ::emboss::support::FixedSizeViewParameters<32, ::emboss::support::AllValuesAreOk>,
typename ::emboss::support::BitBlock</**/::emboss::support::BigEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 0>>, 32>>
();
}
template <class Storage>
inline ::emboss::support::Maybe<bool>
GenericBcdBigEndianView<Storage>::has_four_byte() const {
return ::emboss::support::Maybe</**/bool>(true);
}
namespace BcdBigEndian {
inline constexpr ::std::int32_t IntrinsicSizeInBytes() {
return ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(4LL)).ValueOrDefault();
}
} // namespace BcdBigEndian
template <class Storage>
inline constexpr ::std::int32_t
GenericBcdBigEndianView<Storage>::EmbossReservedDollarVirtualIntrinsicSizeInBytesView::Read() {
return BcdBigEndian::IntrinsicSizeInBytes();
}
template <class Storage>
inline constexpr ::std::int32_t
GenericBcdBigEndianView<
Storage>::EmbossReservedDollarVirtualIntrinsicSizeInBytesView::UncheckedRead() {
return BcdBigEndian::IntrinsicSizeInBytes();
}
namespace BcdBigEndian {
inline constexpr ::std::int32_t MaxSizeInBytes() {
return ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(4LL)).ValueOrDefault();
}
} // namespace BcdBigEndian
template <class Storage>
inline constexpr ::std::int32_t
GenericBcdBigEndianView<Storage>::EmbossReservedDollarVirtualMaxSizeInBytesView::Read() {
return BcdBigEndian::MaxSizeInBytes();
}
template <class Storage>
inline constexpr ::std::int32_t
GenericBcdBigEndianView<
Storage>::EmbossReservedDollarVirtualMaxSizeInBytesView::UncheckedRead() {
return BcdBigEndian::MaxSizeInBytes();
}
namespace BcdBigEndian {
inline constexpr ::std::int32_t MinSizeInBytes() {
return ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(4LL)).ValueOrDefault();
}
} // namespace BcdBigEndian
template <class Storage>
inline constexpr ::std::int32_t
GenericBcdBigEndianView<Storage>::EmbossReservedDollarVirtualMinSizeInBytesView::Read() {
return BcdBigEndian::MinSizeInBytes();
}
template <class Storage>
inline constexpr ::std::int32_t
GenericBcdBigEndianView<
Storage>::EmbossReservedDollarVirtualMinSizeInBytesView::UncheckedRead() {
return BcdBigEndian::MinSizeInBytes();
}
} // namespace test
} // namespace emboss
/* NOLINTEND */
#endif // TESTDATA_BCD_EMB_H_