| /** | |
| * Generated by the Emboss compiler. DO NOT EDIT! | |
| */ | |
| #ifndef TESTDATA_COMPLEX_STRUCTURE_EMB_H_ | |
| #define TESTDATA_COMPLEX_STRUCTURE_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_test { | |
| namespace RegisterLayout { | |
| } // namespace RegisterLayout | |
| template <class Storage> | |
| class GenericRegisterLayoutView; | |
| namespace ArrayElement { | |
| } // namespace ArrayElement | |
| template <class Storage> | |
| class GenericArrayElementView; | |
| namespace Complex { | |
| namespace EmbossReservedAnonymousField1 { | |
| } // namespace EmbossReservedAnonymousField1 | |
| template <class Storage> | |
| class GenericEmbossReservedAnonymousField1View; | |
| } // namespace Complex | |
| template <class Storage> | |
| class GenericComplexView; | |
| namespace RegisterLayout { | |
| } // namespace RegisterLayout | |
| template <class View> | |
| struct EmbossReservedInternalIsGenericRegisterLayoutView; | |
| template <class Storage> | |
| class GenericRegisterLayoutView final { | |
| public: | |
| GenericRegisterLayoutView() : backing_() {} | |
| explicit GenericRegisterLayoutView( | |
| Storage emboss_reserved_local_bytes) | |
| : backing_(emboss_reserved_local_bytes) | |
| {} | |
| template <typename OtherStorage> | |
| GenericRegisterLayoutView( | |
| const GenericRegisterLayoutView<OtherStorage> &emboss_reserved_local_other) | |
| : backing_{emboss_reserved_local_other.BackingStorage()} | |
| {} | |
| template <typename Arg, | |
| typename = typename ::std::enable_if< | |
| !EmbossReservedInternalIsGenericRegisterLayoutView< | |
| typename ::std::remove_cv<typename ::std::remove_reference< | |
| Arg>::type>::type>::value>::type> | |
| explicit GenericRegisterLayoutView( | |
| Arg &&emboss_reserved_local_arg) | |
| : backing_(::std::forward<Arg>( | |
| emboss_reserved_local_arg)) | |
| {} | |
| template <typename Arg0, typename Arg1, typename... Args> | |
| explicit GenericRegisterLayoutView( | |
| 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> | |
| GenericRegisterLayoutView<Storage> &operator=( | |
| const GenericRegisterLayoutView<OtherStorage> &emboss_reserved_local_other) { | |
| backing_ = emboss_reserved_local_other.BackingStorage(); | |
| return *this; | |
| } | |
| bool Ok() const { | |
| if (!IsComplete()) return false; | |
| if (!has_x().Known()) return false; | |
| if (has_x().ValueOrDefault() && !x().Ok()) return false; | |
| if (!has_l().Known()) return false; | |
| if (has_l().ValueOrDefault() && !l().Ok()) return false; | |
| if (!has_h().Known()) return false; | |
| if (has_h().ValueOrDefault() && !h().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( | |
| GenericRegisterLayoutView<OtherStorage> emboss_reserved_local_other) const { | |
| if (!has_x().Known()) return false; | |
| if (!emboss_reserved_local_other.has_x().Known()) return false; | |
| if (emboss_reserved_local_other.has_x().ValueOrDefault() && | |
| !has_x().ValueOrDefault()) | |
| return false; | |
| if (has_x().ValueOrDefault() && | |
| !emboss_reserved_local_other.has_x().ValueOrDefault()) | |
| return false; | |
| if (emboss_reserved_local_other.has_x().ValueOrDefault() && | |
| has_x().ValueOrDefault() && | |
| !x().Equals(emboss_reserved_local_other.x())) | |
| return false; | |
| if (!has_l().Known()) return false; | |
| if (!emboss_reserved_local_other.has_l().Known()) return false; | |
| if (emboss_reserved_local_other.has_l().ValueOrDefault() && | |
| !has_l().ValueOrDefault()) | |
| return false; | |
| if (has_l().ValueOrDefault() && | |
| !emboss_reserved_local_other.has_l().ValueOrDefault()) | |
| return false; | |
| if (emboss_reserved_local_other.has_l().ValueOrDefault() && | |
| has_l().ValueOrDefault() && | |
| !l().Equals(emboss_reserved_local_other.l())) | |
| return false; | |
| if (!has_h().Known()) return false; | |
| if (!emboss_reserved_local_other.has_h().Known()) return false; | |
| if (emboss_reserved_local_other.has_h().ValueOrDefault() && | |
| !has_h().ValueOrDefault()) | |
| return false; | |
| if (has_h().ValueOrDefault() && | |
| !emboss_reserved_local_other.has_h().ValueOrDefault()) | |
| return false; | |
| if (emboss_reserved_local_other.has_h().ValueOrDefault() && | |
| has_h().ValueOrDefault() && | |
| !h().Equals(emboss_reserved_local_other.h())) | |
| return false; | |
| return true; | |
| } | |
| template <typename OtherStorage> | |
| bool UncheckedEquals( | |
| GenericRegisterLayoutView<OtherStorage> emboss_reserved_local_other) const { | |
| if (emboss_reserved_local_other.has_x().ValueOr(false) && | |
| !has_x().ValueOr(false)) | |
| return false; | |
| if (has_x().ValueOr(false) && | |
| !emboss_reserved_local_other.has_x().ValueOr(false)) | |
| return false; | |
| if (emboss_reserved_local_other.has_x().ValueOr(false) && | |
| has_x().ValueOr(false) && | |
| !x().UncheckedEquals(emboss_reserved_local_other.x())) | |
| return false; | |
| if (emboss_reserved_local_other.has_l().ValueOr(false) && | |
| !has_l().ValueOr(false)) | |
| return false; | |
| if (has_l().ValueOr(false) && | |
| !emboss_reserved_local_other.has_l().ValueOr(false)) | |
| return false; | |
| if (emboss_reserved_local_other.has_l().ValueOr(false) && | |
| has_l().ValueOr(false) && | |
| !l().UncheckedEquals(emboss_reserved_local_other.l())) | |
| return false; | |
| if (emboss_reserved_local_other.has_h().ValueOr(false) && | |
| !has_h().ValueOr(false)) | |
| return false; | |
| if (has_h().ValueOr(false) && | |
| !emboss_reserved_local_other.has_h().ValueOr(false)) | |
| return false; | |
| if (emboss_reserved_local_other.has_h().ValueOr(false) && | |
| has_h().ValueOr(false) && | |
| !h().UncheckedEquals(emboss_reserved_local_other.h())) | |
| return false; | |
| return true; | |
| } | |
| template <typename OtherStorage> | |
| void UncheckedCopyFrom( | |
| GenericRegisterLayoutView<OtherStorage> emboss_reserved_local_other) const { | |
| backing_.UncheckedCopyFrom( | |
| emboss_reserved_local_other.BackingStorage(), | |
| emboss_reserved_local_other.IntrinsicSizeInBits().UncheckedRead()); | |
| } | |
| template <typename OtherStorage> | |
| void CopyFrom( | |
| GenericRegisterLayoutView<OtherStorage> emboss_reserved_local_other) const { | |
| backing_.CopyFrom( | |
| emboss_reserved_local_other.BackingStorage(), | |
| emboss_reserved_local_other.IntrinsicSizeInBits().Read()); | |
| } | |
| template <typename OtherStorage> | |
| bool TryToCopyFrom( | |
| GenericRegisterLayoutView<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 == "x") { | |
| if (!x().UpdateFromTextStream( | |
| emboss_reserved_local_stream)) { | |
| return false; | |
| } | |
| continue; | |
| } | |
| if (emboss_reserved_local_name == "l") { | |
| if (!l().UpdateFromTextStream( | |
| emboss_reserved_local_stream)) { | |
| return false; | |
| } | |
| continue; | |
| } | |
| if (emboss_reserved_local_name == "h") { | |
| if (!h().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_x().ValueOr(false)) { | |
| if (!emboss_reserved_local_field_options.allow_partial_output() || | |
| x().IsAggregate() || x().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("x: "); | |
| x().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() && | |
| !x().IsAggregate() && !x().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("# x: UNREADABLE\n"); | |
| } | |
| } | |
| if (has_l().ValueOr(false)) { | |
| if (!emboss_reserved_local_field_options.allow_partial_output() || | |
| l().IsAggregate() || l().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("l: "); | |
| l().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() && | |
| !l().IsAggregate() && !l().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("# l: UNREADABLE\n"); | |
| } | |
| } | |
| if (has_h().ValueOr(false)) { | |
| if (!emboss_reserved_local_field_options.allow_partial_output() || | |
| h().IsAggregate() || h().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("h: "); | |
| h().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() && | |
| !h().IsAggregate() && !h().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("# h: 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::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>, | |
| typename Storage::template OffsetStorageType</**/0, 0>> | |
| x() const; | |
| ::emboss::support::Maybe<bool> has_x() const; | |
| public: | |
| typename ::emboss::prelude::UIntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<4, ::emboss::support::AllValuesAreOk>, | |
| typename Storage::template OffsetStorageType</**/0, 0>> | |
| l() const; | |
| ::emboss::support::Maybe<bool> has_l() const; | |
| public: | |
| typename ::emboss::prelude::UIntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<4, ::emboss::support::AllValuesAreOk>, | |
| typename Storage::template OffsetStorageType</**/0, 4>> | |
| h() const; | |
| ::emboss::support::Maybe<bool> has_h() 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 GenericRegisterLayoutView; | |
| }; | |
| using RegisterLayoutView = | |
| GenericRegisterLayoutView</**/ ::emboss::support::ReadOnlyContiguousBuffer>; | |
| using RegisterLayoutWriter = | |
| GenericRegisterLayoutView</**/ ::emboss::support::ReadWriteContiguousBuffer>; | |
| template <class View> | |
| struct EmbossReservedInternalIsGenericRegisterLayoutView { | |
| static constexpr const bool value = false; | |
| }; | |
| template <class Storage> | |
| struct EmbossReservedInternalIsGenericRegisterLayoutView< | |
| GenericRegisterLayoutView<Storage>> { | |
| static constexpr const bool value = true; | |
| }; | |
| template <typename T> | |
| inline GenericRegisterLayoutView< | |
| /**/ ::emboss::support::ContiguousBuffer< | |
| typename ::std::remove_reference< | |
| decltype(*::std::declval<T>()->data())>::type, | |
| 1, 0>> | |
| MakeRegisterLayoutView( T &&emboss_reserved_local_arg) { | |
| return GenericRegisterLayoutView< | |
| /**/ ::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 GenericRegisterLayoutView</**/ ::emboss::support::ContiguousBuffer<T, 1, 0>> | |
| MakeRegisterLayoutView( T *emboss_reserved_local_data, | |
| ::std::size_t emboss_reserved_local_size) { | |
| return GenericRegisterLayoutView</**/ ::emboss::support::ContiguousBuffer<T, 1, 0>>( | |
| emboss_reserved_local_data, | |
| emboss_reserved_local_size); | |
| } | |
| template <typename T, ::std::size_t kAlignment> | |
| inline GenericRegisterLayoutView< | |
| /**/ ::emboss::support::ContiguousBuffer<T, kAlignment, 0>> | |
| MakeAlignedRegisterLayoutView( | |
| T *emboss_reserved_local_data, | |
| ::std::size_t emboss_reserved_local_size) { | |
| return GenericRegisterLayoutView< | |
| /**/ ::emboss::support::ContiguousBuffer<T, kAlignment, 0>>( | |
| emboss_reserved_local_data, | |
| emboss_reserved_local_size); | |
| } | |
| namespace ArrayElement { | |
| } // namespace ArrayElement | |
| template <class View> | |
| struct EmbossReservedInternalIsGenericArrayElementView; | |
| template <class Storage> | |
| class GenericArrayElementView final { | |
| public: | |
| GenericArrayElementView() : backing_() {} | |
| explicit GenericArrayElementView( | |
| Storage emboss_reserved_local_bytes) | |
| : backing_(emboss_reserved_local_bytes) | |
| {} | |
| template <typename OtherStorage> | |
| GenericArrayElementView( | |
| const GenericArrayElementView<OtherStorage> &emboss_reserved_local_other) | |
| : backing_{emboss_reserved_local_other.BackingStorage()} | |
| {} | |
| template <typename Arg, | |
| typename = typename ::std::enable_if< | |
| !EmbossReservedInternalIsGenericArrayElementView< | |
| typename ::std::remove_cv<typename ::std::remove_reference< | |
| Arg>::type>::type>::value>::type> | |
| explicit GenericArrayElementView( | |
| Arg &&emboss_reserved_local_arg) | |
| : backing_(::std::forward<Arg>( | |
| emboss_reserved_local_arg)) | |
| {} | |
| template <typename Arg0, typename Arg1, typename... Args> | |
| explicit GenericArrayElementView( | |
| 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> | |
| GenericArrayElementView<Storage> &operator=( | |
| const GenericArrayElementView<OtherStorage> &emboss_reserved_local_other) { | |
| backing_ = emboss_reserved_local_other.BackingStorage(); | |
| return *this; | |
| } | |
| bool Ok() const { | |
| if (!IsComplete()) return false; | |
| if (!has_a().Known()) return false; | |
| if (has_a().ValueOrDefault() && !a().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( | |
| GenericArrayElementView<OtherStorage> emboss_reserved_local_other) const { | |
| if (!has_a().Known()) return false; | |
| if (!emboss_reserved_local_other.has_a().Known()) return false; | |
| if (emboss_reserved_local_other.has_a().ValueOrDefault() && | |
| !has_a().ValueOrDefault()) | |
| return false; | |
| if (has_a().ValueOrDefault() && | |
| !emboss_reserved_local_other.has_a().ValueOrDefault()) | |
| return false; | |
| if (emboss_reserved_local_other.has_a().ValueOrDefault() && | |
| has_a().ValueOrDefault() && | |
| !a().Equals(emboss_reserved_local_other.a())) | |
| return false; | |
| return true; | |
| } | |
| template <typename OtherStorage> | |
| bool UncheckedEquals( | |
| GenericArrayElementView<OtherStorage> emboss_reserved_local_other) const { | |
| if (emboss_reserved_local_other.has_a().ValueOr(false) && | |
| !has_a().ValueOr(false)) | |
| return false; | |
| if (has_a().ValueOr(false) && | |
| !emboss_reserved_local_other.has_a().ValueOr(false)) | |
| return false; | |
| if (emboss_reserved_local_other.has_a().ValueOr(false) && | |
| has_a().ValueOr(false) && | |
| !a().UncheckedEquals(emboss_reserved_local_other.a())) | |
| return false; | |
| return true; | |
| } | |
| template <typename OtherStorage> | |
| void UncheckedCopyFrom( | |
| GenericArrayElementView<OtherStorage> emboss_reserved_local_other) const { | |
| backing_.UncheckedCopyFrom( | |
| emboss_reserved_local_other.BackingStorage(), | |
| emboss_reserved_local_other.IntrinsicSizeInBytes().UncheckedRead()); | |
| } | |
| template <typename OtherStorage> | |
| void CopyFrom( | |
| GenericArrayElementView<OtherStorage> emboss_reserved_local_other) const { | |
| backing_.CopyFrom( | |
| emboss_reserved_local_other.BackingStorage(), | |
| emboss_reserved_local_other.IntrinsicSizeInBytes().Read()); | |
| } | |
| template <typename OtherStorage> | |
| bool TryToCopyFrom( | |
| GenericArrayElementView<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 == "a") { | |
| if (!a().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_a().ValueOr(false)) { | |
| if (!emboss_reserved_local_field_options.allow_partial_output() || | |
| a().IsAggregate() || a().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("a: "); | |
| a().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() && | |
| !a().IsAggregate() && !a().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("# a: 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_test::GenericRegisterLayoutView<typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 0>>, 8>> | |
| a() const; | |
| ::emboss::support::Maybe<bool> has_a() 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 GenericArrayElementView; | |
| }; | |
| using ArrayElementView = | |
| GenericArrayElementView</**/ ::emboss::support::ReadOnlyContiguousBuffer>; | |
| using ArrayElementWriter = | |
| GenericArrayElementView</**/ ::emboss::support::ReadWriteContiguousBuffer>; | |
| template <class View> | |
| struct EmbossReservedInternalIsGenericArrayElementView { | |
| static constexpr const bool value = false; | |
| }; | |
| template <class Storage> | |
| struct EmbossReservedInternalIsGenericArrayElementView< | |
| GenericArrayElementView<Storage>> { | |
| static constexpr const bool value = true; | |
| }; | |
| template <typename T> | |
| inline GenericArrayElementView< | |
| /**/ ::emboss::support::ContiguousBuffer< | |
| typename ::std::remove_reference< | |
| decltype(*::std::declval<T>()->data())>::type, | |
| 1, 0>> | |
| MakeArrayElementView( T &&emboss_reserved_local_arg) { | |
| return GenericArrayElementView< | |
| /**/ ::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 GenericArrayElementView</**/ ::emboss::support::ContiguousBuffer<T, 1, 0>> | |
| MakeArrayElementView( T *emboss_reserved_local_data, | |
| ::std::size_t emboss_reserved_local_size) { | |
| return GenericArrayElementView</**/ ::emboss::support::ContiguousBuffer<T, 1, 0>>( | |
| emboss_reserved_local_data, | |
| emboss_reserved_local_size); | |
| } | |
| template <typename T, ::std::size_t kAlignment> | |
| inline GenericArrayElementView< | |
| /**/ ::emboss::support::ContiguousBuffer<T, kAlignment, 0>> | |
| MakeAlignedArrayElementView( | |
| T *emboss_reserved_local_data, | |
| ::std::size_t emboss_reserved_local_size) { | |
| return GenericArrayElementView< | |
| /**/ ::emboss::support::ContiguousBuffer<T, kAlignment, 0>>( | |
| emboss_reserved_local_data, | |
| emboss_reserved_local_size); | |
| } | |
| namespace Complex { | |
| 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_a0().Known()) return false; | |
| if (has_a0().ValueOrDefault() && !a0().Ok()) return false; | |
| if (!has_s0().Known()) return false; | |
| if (has_s0().ValueOrDefault() && !s0().Ok()) return false; | |
| if (!has_l0().Known()) return false; | |
| if (has_l0().ValueOrDefault() && !l0().Ok()) return false; | |
| if (!has_h0().Known()) return false; | |
| if (has_h0().ValueOrDefault() && !h0().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_a0().Known()) return false; | |
| if (!emboss_reserved_local_other.has_a0().Known()) return false; | |
| if (emboss_reserved_local_other.has_a0().ValueOrDefault() && | |
| !has_a0().ValueOrDefault()) | |
| return false; | |
| if (has_a0().ValueOrDefault() && | |
| !emboss_reserved_local_other.has_a0().ValueOrDefault()) | |
| return false; | |
| if (emboss_reserved_local_other.has_a0().ValueOrDefault() && | |
| has_a0().ValueOrDefault() && | |
| !a0().Equals(emboss_reserved_local_other.a0())) | |
| return false; | |
| if (!has_s0().Known()) return false; | |
| if (!emboss_reserved_local_other.has_s0().Known()) return false; | |
| if (emboss_reserved_local_other.has_s0().ValueOrDefault() && | |
| !has_s0().ValueOrDefault()) | |
| return false; | |
| if (has_s0().ValueOrDefault() && | |
| !emboss_reserved_local_other.has_s0().ValueOrDefault()) | |
| return false; | |
| if (emboss_reserved_local_other.has_s0().ValueOrDefault() && | |
| has_s0().ValueOrDefault() && | |
| !s0().Equals(emboss_reserved_local_other.s0())) | |
| return false; | |
| if (!has_l0().Known()) return false; | |
| if (!emboss_reserved_local_other.has_l0().Known()) return false; | |
| if (emboss_reserved_local_other.has_l0().ValueOrDefault() && | |
| !has_l0().ValueOrDefault()) | |
| return false; | |
| if (has_l0().ValueOrDefault() && | |
| !emboss_reserved_local_other.has_l0().ValueOrDefault()) | |
| return false; | |
| if (emboss_reserved_local_other.has_l0().ValueOrDefault() && | |
| has_l0().ValueOrDefault() && | |
| !l0().Equals(emboss_reserved_local_other.l0())) | |
| return false; | |
| if (!has_h0().Known()) return false; | |
| if (!emboss_reserved_local_other.has_h0().Known()) return false; | |
| if (emboss_reserved_local_other.has_h0().ValueOrDefault() && | |
| !has_h0().ValueOrDefault()) | |
| return false; | |
| if (has_h0().ValueOrDefault() && | |
| !emboss_reserved_local_other.has_h0().ValueOrDefault()) | |
| return false; | |
| if (emboss_reserved_local_other.has_h0().ValueOrDefault() && | |
| has_h0().ValueOrDefault() && | |
| !h0().Equals(emboss_reserved_local_other.h0())) | |
| return false; | |
| return true; | |
| } | |
| template <typename OtherStorage> | |
| bool UncheckedEquals( | |
| GenericEmbossReservedAnonymousField1View<OtherStorage> emboss_reserved_local_other) const { | |
| if (emboss_reserved_local_other.has_a0().ValueOr(false) && | |
| !has_a0().ValueOr(false)) | |
| return false; | |
| if (has_a0().ValueOr(false) && | |
| !emboss_reserved_local_other.has_a0().ValueOr(false)) | |
| return false; | |
| if (emboss_reserved_local_other.has_a0().ValueOr(false) && | |
| has_a0().ValueOr(false) && | |
| !a0().UncheckedEquals(emboss_reserved_local_other.a0())) | |
| return false; | |
| if (emboss_reserved_local_other.has_s0().ValueOr(false) && | |
| !has_s0().ValueOr(false)) | |
| return false; | |
| if (has_s0().ValueOr(false) && | |
| !emboss_reserved_local_other.has_s0().ValueOr(false)) | |
| return false; | |
| if (emboss_reserved_local_other.has_s0().ValueOr(false) && | |
| has_s0().ValueOr(false) && | |
| !s0().UncheckedEquals(emboss_reserved_local_other.s0())) | |
| return false; | |
| if (emboss_reserved_local_other.has_l0().ValueOr(false) && | |
| !has_l0().ValueOr(false)) | |
| return false; | |
| if (has_l0().ValueOr(false) && | |
| !emboss_reserved_local_other.has_l0().ValueOr(false)) | |
| return false; | |
| if (emboss_reserved_local_other.has_l0().ValueOr(false) && | |
| has_l0().ValueOr(false) && | |
| !l0().UncheckedEquals(emboss_reserved_local_other.l0())) | |
| return false; | |
| if (emboss_reserved_local_other.has_h0().ValueOr(false) && | |
| !has_h0().ValueOr(false)) | |
| return false; | |
| if (has_h0().ValueOr(false) && | |
| !emboss_reserved_local_other.has_h0().ValueOr(false)) | |
| return false; | |
| if (emboss_reserved_local_other.has_h0().ValueOr(false) && | |
| has_h0().ValueOr(false) && | |
| !h0().UncheckedEquals(emboss_reserved_local_other.h0())) | |
| 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 == "a0") { | |
| if (!a0().UpdateFromTextStream( | |
| emboss_reserved_local_stream)) { | |
| return false; | |
| } | |
| continue; | |
| } | |
| if (emboss_reserved_local_name == "s0") { | |
| if (!s0().UpdateFromTextStream( | |
| emboss_reserved_local_stream)) { | |
| return false; | |
| } | |
| continue; | |
| } | |
| if (emboss_reserved_local_name == "l0") { | |
| if (!l0().UpdateFromTextStream( | |
| emboss_reserved_local_stream)) { | |
| return false; | |
| } | |
| continue; | |
| } | |
| if (emboss_reserved_local_name == "h0") { | |
| if (!h0().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_a0().ValueOr(false)) { | |
| if (!emboss_reserved_local_field_options.allow_partial_output() || | |
| a0().IsAggregate() || a0().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("a0: "); | |
| a0().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() && | |
| !a0().IsAggregate() && !a0().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("# a0: UNREADABLE\n"); | |
| } | |
| } | |
| if (has_s0().ValueOr(false)) { | |
| if (!emboss_reserved_local_field_options.allow_partial_output() || | |
| s0().IsAggregate() || s0().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("s0: "); | |
| s0().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() && | |
| !s0().IsAggregate() && !s0().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("# s0: UNREADABLE\n"); | |
| } | |
| } | |
| if (has_l0().ValueOr(false)) { | |
| if (!emboss_reserved_local_field_options.allow_partial_output() || | |
| l0().IsAggregate() || l0().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("l0: "); | |
| l0().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() && | |
| !l0().IsAggregate() && !l0().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("# l0: UNREADABLE\n"); | |
| } | |
| } | |
| if (has_h0().ValueOr(false)) { | |
| if (!emboss_reserved_local_field_options.allow_partial_output() || | |
| h0().IsAggregate() || h0().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("h0: "); | |
| h0().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() && | |
| !h0().IsAggregate() && !h0().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("# h0: 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::UIntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>, | |
| typename Storage::template OffsetStorageType</**/0, 0>> | |
| a0() const; | |
| ::emboss::support::Maybe<bool> has_a0() const; | |
| public: | |
| typename ::emboss::prelude::FlagView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<1, ::emboss::support::AllValuesAreOk>, | |
| typename Storage::template OffsetStorageType</**/0, 7>> | |
| s0() const; | |
| ::emboss::support::Maybe<bool> has_s0() const; | |
| public: | |
| typename ::emboss::prelude::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<4, ::emboss::support::AllValuesAreOk>, | |
| typename Storage::template OffsetStorageType</**/0, 0>> | |
| l0() const; | |
| ::emboss::support::Maybe<bool> has_l0() const; | |
| public: | |
| typename ::emboss::prelude::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<4, ::emboss::support::AllValuesAreOk>, | |
| typename Storage::template OffsetStorageType</**/0, 4>> | |
| h0() const; | |
| ::emboss::support::Maybe<bool> has_h0() 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 Complex | |
| template <class View> | |
| struct EmbossReservedInternalIsGenericComplexView; | |
| template <class Storage> | |
| class GenericComplexView final { | |
| public: | |
| GenericComplexView() : backing_() {} | |
| explicit GenericComplexView( | |
| Storage emboss_reserved_local_bytes) | |
| : backing_(emboss_reserved_local_bytes) | |
| {} | |
| template <typename OtherStorage> | |
| GenericComplexView( | |
| const GenericComplexView<OtherStorage> &emboss_reserved_local_other) | |
| : backing_{emboss_reserved_local_other.BackingStorage()} | |
| {} | |
| template <typename Arg, | |
| typename = typename ::std::enable_if< | |
| !EmbossReservedInternalIsGenericComplexView< | |
| typename ::std::remove_cv<typename ::std::remove_reference< | |
| Arg>::type>::type>::value>::type> | |
| explicit GenericComplexView( | |
| Arg &&emboss_reserved_local_arg) | |
| : backing_(::std::forward<Arg>( | |
| emboss_reserved_local_arg)) | |
| {} | |
| template <typename Arg0, typename Arg1, typename... Args> | |
| explicit GenericComplexView( | |
| 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> | |
| GenericComplexView<Storage> &operator=( | |
| const GenericComplexView<OtherStorage> &emboss_reserved_local_other) { | |
| backing_ = emboss_reserved_local_other.BackingStorage(); | |
| return *this; | |
| } | |
| bool Ok() const { | |
| if (!IsComplete()) return false; | |
| if (!has_s().Known()) return false; | |
| if (has_s().ValueOrDefault() && !s().Ok()) return false; | |
| if (!has_u().Known()) return false; | |
| if (has_u().ValueOrDefault() && !u().Ok()) return false; | |
| if (!has_i().Known()) return false; | |
| if (has_i().ValueOrDefault() && !i().Ok()) return false; | |
| if (!has_b().Known()) return false; | |
| if (has_b().ValueOrDefault() && !b().Ok()) return false; | |
| if (!has_a().Known()) return false; | |
| if (has_a().ValueOrDefault() && !a().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_a0().Known()) return false; | |
| if (has_a0().ValueOrDefault() && !a0().Ok()) return false; | |
| if (!has_s0().Known()) return false; | |
| if (has_s0().ValueOrDefault() && !s0().Ok()) return false; | |
| if (!has_l0().Known()) return false; | |
| if (has_l0().ValueOrDefault() && !l0().Ok()) return false; | |
| if (!has_h0().Known()) return false; | |
| if (has_h0().ValueOrDefault() && !h0().Ok()) return false; | |
| if (!has_e1().Known()) return false; | |
| if (has_e1().ValueOrDefault() && !e1().Ok()) return false; | |
| if (!has_e2().Known()) return false; | |
| if (has_e2().ValueOrDefault() && !e2().Ok()) return false; | |
| if (!has_b2().Known()) return false; | |
| if (has_b2().ValueOrDefault() && !b2().Ok()) return false; | |
| if (!has_e3().Known()) return false; | |
| if (has_e3().ValueOrDefault() && !e3().Ok()) return false; | |
| if (!has_e4().Known()) return false; | |
| if (has_e4().ValueOrDefault() && !e4().Ok()) return false; | |
| if (!has_e5().Known()) return false; | |
| if (has_e5().ValueOrDefault() && !e5().Ok()) return false; | |
| if (!has_e0().Known()) return false; | |
| if (has_e0().ValueOrDefault() && !e0().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()); | |
| } | |
| ::std::size_t SizeInBytes() const { | |
| return static_cast</**/ ::std::size_t>(IntrinsicSizeInBytes().Read()); | |
| } | |
| bool SizeIsKnown() const { return IntrinsicSizeInBytes().Ok(); } | |
| template <typename OtherStorage> | |
| bool Equals( | |
| GenericComplexView<OtherStorage> emboss_reserved_local_other) const { | |
| if (!has_s().Known()) return false; | |
| if (!emboss_reserved_local_other.has_s().Known()) return false; | |
| if (emboss_reserved_local_other.has_s().ValueOrDefault() && | |
| !has_s().ValueOrDefault()) | |
| return false; | |
| if (has_s().ValueOrDefault() && | |
| !emboss_reserved_local_other.has_s().ValueOrDefault()) | |
| return false; | |
| if (emboss_reserved_local_other.has_s().ValueOrDefault() && | |
| has_s().ValueOrDefault() && | |
| !s().Equals(emboss_reserved_local_other.s())) | |
| return false; | |
| if (!has_u().Known()) return false; | |
| if (!emboss_reserved_local_other.has_u().Known()) return false; | |
| if (emboss_reserved_local_other.has_u().ValueOrDefault() && | |
| !has_u().ValueOrDefault()) | |
| return false; | |
| if (has_u().ValueOrDefault() && | |
| !emboss_reserved_local_other.has_u().ValueOrDefault()) | |
| return false; | |
| if (emboss_reserved_local_other.has_u().ValueOrDefault() && | |
| has_u().ValueOrDefault() && | |
| !u().Equals(emboss_reserved_local_other.u())) | |
| return false; | |
| if (!has_i().Known()) return false; | |
| if (!emboss_reserved_local_other.has_i().Known()) return false; | |
| if (emboss_reserved_local_other.has_i().ValueOrDefault() && | |
| !has_i().ValueOrDefault()) | |
| return false; | |
| if (has_i().ValueOrDefault() && | |
| !emboss_reserved_local_other.has_i().ValueOrDefault()) | |
| return false; | |
| if (emboss_reserved_local_other.has_i().ValueOrDefault() && | |
| has_i().ValueOrDefault() && | |
| !i().Equals(emboss_reserved_local_other.i())) | |
| return false; | |
| if (!has_b().Known()) return false; | |
| if (!emboss_reserved_local_other.has_b().Known()) return false; | |
| if (emboss_reserved_local_other.has_b().ValueOrDefault() && | |
| !has_b().ValueOrDefault()) | |
| return false; | |
| if (has_b().ValueOrDefault() && | |
| !emboss_reserved_local_other.has_b().ValueOrDefault()) | |
| return false; | |
| if (emboss_reserved_local_other.has_b().ValueOrDefault() && | |
| has_b().ValueOrDefault() && | |
| !b().Equals(emboss_reserved_local_other.b())) | |
| return false; | |
| if (!has_a().Known()) return false; | |
| if (!emboss_reserved_local_other.has_a().Known()) return false; | |
| if (emboss_reserved_local_other.has_a().ValueOrDefault() && | |
| !has_a().ValueOrDefault()) | |
| return false; | |
| if (has_a().ValueOrDefault() && | |
| !emboss_reserved_local_other.has_a().ValueOrDefault()) | |
| return false; | |
| if (emboss_reserved_local_other.has_a().ValueOrDefault() && | |
| has_a().ValueOrDefault() && | |
| !a().Equals(emboss_reserved_local_other.a())) | |
| 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; | |
| if (!has_e1().Known()) return false; | |
| if (!emboss_reserved_local_other.has_e1().Known()) return false; | |
| if (emboss_reserved_local_other.has_e1().ValueOrDefault() && | |
| !has_e1().ValueOrDefault()) | |
| return false; | |
| if (has_e1().ValueOrDefault() && | |
| !emboss_reserved_local_other.has_e1().ValueOrDefault()) | |
| return false; | |
| if (emboss_reserved_local_other.has_e1().ValueOrDefault() && | |
| has_e1().ValueOrDefault() && | |
| !e1().Equals(emboss_reserved_local_other.e1())) | |
| return false; | |
| if (!has_e2().Known()) return false; | |
| if (!emboss_reserved_local_other.has_e2().Known()) return false; | |
| if (emboss_reserved_local_other.has_e2().ValueOrDefault() && | |
| !has_e2().ValueOrDefault()) | |
| return false; | |
| if (has_e2().ValueOrDefault() && | |
| !emboss_reserved_local_other.has_e2().ValueOrDefault()) | |
| return false; | |
| if (emboss_reserved_local_other.has_e2().ValueOrDefault() && | |
| has_e2().ValueOrDefault() && | |
| !e2().Equals(emboss_reserved_local_other.e2())) | |
| return false; | |
| if (!has_b2().Known()) return false; | |
| if (!emboss_reserved_local_other.has_b2().Known()) return false; | |
| if (emboss_reserved_local_other.has_b2().ValueOrDefault() && | |
| !has_b2().ValueOrDefault()) | |
| return false; | |
| if (has_b2().ValueOrDefault() && | |
| !emboss_reserved_local_other.has_b2().ValueOrDefault()) | |
| return false; | |
| if (emboss_reserved_local_other.has_b2().ValueOrDefault() && | |
| has_b2().ValueOrDefault() && | |
| !b2().Equals(emboss_reserved_local_other.b2())) | |
| return false; | |
| if (!has_e3().Known()) return false; | |
| if (!emboss_reserved_local_other.has_e3().Known()) return false; | |
| if (emboss_reserved_local_other.has_e3().ValueOrDefault() && | |
| !has_e3().ValueOrDefault()) | |
| return false; | |
| if (has_e3().ValueOrDefault() && | |
| !emboss_reserved_local_other.has_e3().ValueOrDefault()) | |
| return false; | |
| if (emboss_reserved_local_other.has_e3().ValueOrDefault() && | |
| has_e3().ValueOrDefault() && | |
| !e3().Equals(emboss_reserved_local_other.e3())) | |
| return false; | |
| if (!has_e4().Known()) return false; | |
| if (!emboss_reserved_local_other.has_e4().Known()) return false; | |
| if (emboss_reserved_local_other.has_e4().ValueOrDefault() && | |
| !has_e4().ValueOrDefault()) | |
| return false; | |
| if (has_e4().ValueOrDefault() && | |
| !emboss_reserved_local_other.has_e4().ValueOrDefault()) | |
| return false; | |
| if (emboss_reserved_local_other.has_e4().ValueOrDefault() && | |
| has_e4().ValueOrDefault() && | |
| !e4().Equals(emboss_reserved_local_other.e4())) | |
| return false; | |
| if (!has_e5().Known()) return false; | |
| if (!emboss_reserved_local_other.has_e5().Known()) return false; | |
| if (emboss_reserved_local_other.has_e5().ValueOrDefault() && | |
| !has_e5().ValueOrDefault()) | |
| return false; | |
| if (has_e5().ValueOrDefault() && | |
| !emboss_reserved_local_other.has_e5().ValueOrDefault()) | |
| return false; | |
| if (emboss_reserved_local_other.has_e5().ValueOrDefault() && | |
| has_e5().ValueOrDefault() && | |
| !e5().Equals(emboss_reserved_local_other.e5())) | |
| return false; | |
| if (!has_e0().Known()) return false; | |
| if (!emboss_reserved_local_other.has_e0().Known()) return false; | |
| if (emboss_reserved_local_other.has_e0().ValueOrDefault() && | |
| !has_e0().ValueOrDefault()) | |
| return false; | |
| if (has_e0().ValueOrDefault() && | |
| !emboss_reserved_local_other.has_e0().ValueOrDefault()) | |
| return false; | |
| if (emboss_reserved_local_other.has_e0().ValueOrDefault() && | |
| has_e0().ValueOrDefault() && | |
| !e0().Equals(emboss_reserved_local_other.e0())) | |
| return false; | |
| return true; | |
| } | |
| template <typename OtherStorage> | |
| bool UncheckedEquals( | |
| GenericComplexView<OtherStorage> emboss_reserved_local_other) const { | |
| if (emboss_reserved_local_other.has_s().ValueOr(false) && | |
| !has_s().ValueOr(false)) | |
| return false; | |
| if (has_s().ValueOr(false) && | |
| !emboss_reserved_local_other.has_s().ValueOr(false)) | |
| return false; | |
| if (emboss_reserved_local_other.has_s().ValueOr(false) && | |
| has_s().ValueOr(false) && | |
| !s().UncheckedEquals(emboss_reserved_local_other.s())) | |
| return false; | |
| if (emboss_reserved_local_other.has_u().ValueOr(false) && | |
| !has_u().ValueOr(false)) | |
| return false; | |
| if (has_u().ValueOr(false) && | |
| !emboss_reserved_local_other.has_u().ValueOr(false)) | |
| return false; | |
| if (emboss_reserved_local_other.has_u().ValueOr(false) && | |
| has_u().ValueOr(false) && | |
| !u().UncheckedEquals(emboss_reserved_local_other.u())) | |
| return false; | |
| if (emboss_reserved_local_other.has_i().ValueOr(false) && | |
| !has_i().ValueOr(false)) | |
| return false; | |
| if (has_i().ValueOr(false) && | |
| !emboss_reserved_local_other.has_i().ValueOr(false)) | |
| return false; | |
| if (emboss_reserved_local_other.has_i().ValueOr(false) && | |
| has_i().ValueOr(false) && | |
| !i().UncheckedEquals(emboss_reserved_local_other.i())) | |
| return false; | |
| if (emboss_reserved_local_other.has_b().ValueOr(false) && | |
| !has_b().ValueOr(false)) | |
| return false; | |
| if (has_b().ValueOr(false) && | |
| !emboss_reserved_local_other.has_b().ValueOr(false)) | |
| return false; | |
| if (emboss_reserved_local_other.has_b().ValueOr(false) && | |
| has_b().ValueOr(false) && | |
| !b().UncheckedEquals(emboss_reserved_local_other.b())) | |
| return false; | |
| if (emboss_reserved_local_other.has_a().ValueOr(false) && | |
| !has_a().ValueOr(false)) | |
| return false; | |
| if (has_a().ValueOr(false) && | |
| !emboss_reserved_local_other.has_a().ValueOr(false)) | |
| return false; | |
| if (emboss_reserved_local_other.has_a().ValueOr(false) && | |
| has_a().ValueOr(false) && | |
| !a().UncheckedEquals(emboss_reserved_local_other.a())) | |
| 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; | |
| if (emboss_reserved_local_other.has_e1().ValueOr(false) && | |
| !has_e1().ValueOr(false)) | |
| return false; | |
| if (has_e1().ValueOr(false) && | |
| !emboss_reserved_local_other.has_e1().ValueOr(false)) | |
| return false; | |
| if (emboss_reserved_local_other.has_e1().ValueOr(false) && | |
| has_e1().ValueOr(false) && | |
| !e1().UncheckedEquals(emboss_reserved_local_other.e1())) | |
| return false; | |
| if (emboss_reserved_local_other.has_e2().ValueOr(false) && | |
| !has_e2().ValueOr(false)) | |
| return false; | |
| if (has_e2().ValueOr(false) && | |
| !emboss_reserved_local_other.has_e2().ValueOr(false)) | |
| return false; | |
| if (emboss_reserved_local_other.has_e2().ValueOr(false) && | |
| has_e2().ValueOr(false) && | |
| !e2().UncheckedEquals(emboss_reserved_local_other.e2())) | |
| return false; | |
| if (emboss_reserved_local_other.has_b2().ValueOr(false) && | |
| !has_b2().ValueOr(false)) | |
| return false; | |
| if (has_b2().ValueOr(false) && | |
| !emboss_reserved_local_other.has_b2().ValueOr(false)) | |
| return false; | |
| if (emboss_reserved_local_other.has_b2().ValueOr(false) && | |
| has_b2().ValueOr(false) && | |
| !b2().UncheckedEquals(emboss_reserved_local_other.b2())) | |
| return false; | |
| if (emboss_reserved_local_other.has_e3().ValueOr(false) && | |
| !has_e3().ValueOr(false)) | |
| return false; | |
| if (has_e3().ValueOr(false) && | |
| !emboss_reserved_local_other.has_e3().ValueOr(false)) | |
| return false; | |
| if (emboss_reserved_local_other.has_e3().ValueOr(false) && | |
| has_e3().ValueOr(false) && | |
| !e3().UncheckedEquals(emboss_reserved_local_other.e3())) | |
| return false; | |
| if (emboss_reserved_local_other.has_e4().ValueOr(false) && | |
| !has_e4().ValueOr(false)) | |
| return false; | |
| if (has_e4().ValueOr(false) && | |
| !emboss_reserved_local_other.has_e4().ValueOr(false)) | |
| return false; | |
| if (emboss_reserved_local_other.has_e4().ValueOr(false) && | |
| has_e4().ValueOr(false) && | |
| !e4().UncheckedEquals(emboss_reserved_local_other.e4())) | |
| return false; | |
| if (emboss_reserved_local_other.has_e5().ValueOr(false) && | |
| !has_e5().ValueOr(false)) | |
| return false; | |
| if (has_e5().ValueOr(false) && | |
| !emboss_reserved_local_other.has_e5().ValueOr(false)) | |
| return false; | |
| if (emboss_reserved_local_other.has_e5().ValueOr(false) && | |
| has_e5().ValueOr(false) && | |
| !e5().UncheckedEquals(emboss_reserved_local_other.e5())) | |
| return false; | |
| if (emboss_reserved_local_other.has_e0().ValueOr(false) && | |
| !has_e0().ValueOr(false)) | |
| return false; | |
| if (has_e0().ValueOr(false) && | |
| !emboss_reserved_local_other.has_e0().ValueOr(false)) | |
| return false; | |
| if (emboss_reserved_local_other.has_e0().ValueOr(false) && | |
| has_e0().ValueOr(false) && | |
| !e0().UncheckedEquals(emboss_reserved_local_other.e0())) | |
| return false; | |
| return true; | |
| } | |
| template <typename OtherStorage> | |
| void UncheckedCopyFrom( | |
| GenericComplexView<OtherStorage> emboss_reserved_local_other) const { | |
| backing_.UncheckedCopyFrom( | |
| emboss_reserved_local_other.BackingStorage(), | |
| emboss_reserved_local_other.IntrinsicSizeInBytes().UncheckedRead()); | |
| } | |
| template <typename OtherStorage> | |
| void CopyFrom( | |
| GenericComplexView<OtherStorage> emboss_reserved_local_other) const { | |
| backing_.CopyFrom( | |
| emboss_reserved_local_other.BackingStorage(), | |
| emboss_reserved_local_other.IntrinsicSizeInBytes().Read()); | |
| } | |
| template <typename OtherStorage> | |
| bool TryToCopyFrom( | |
| GenericComplexView<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 == "s") { | |
| if (!s().UpdateFromTextStream( | |
| emboss_reserved_local_stream)) { | |
| return false; | |
| } | |
| continue; | |
| } | |
| if (emboss_reserved_local_name == "u") { | |
| if (!u().UpdateFromTextStream( | |
| emboss_reserved_local_stream)) { | |
| return false; | |
| } | |
| continue; | |
| } | |
| if (emboss_reserved_local_name == "i") { | |
| if (!i().UpdateFromTextStream( | |
| emboss_reserved_local_stream)) { | |
| return false; | |
| } | |
| continue; | |
| } | |
| if (emboss_reserved_local_name == "b") { | |
| if (!b().UpdateFromTextStream( | |
| emboss_reserved_local_stream)) { | |
| return false; | |
| } | |
| continue; | |
| } | |
| if (emboss_reserved_local_name == "a") { | |
| if (!a().UpdateFromTextStream( | |
| emboss_reserved_local_stream)) { | |
| return false; | |
| } | |
| continue; | |
| } | |
| if (emboss_reserved_local_name == "a0") { | |
| if (!a0().UpdateFromTextStream( | |
| emboss_reserved_local_stream)) { | |
| return false; | |
| } | |
| continue; | |
| } | |
| if (emboss_reserved_local_name == "s0") { | |
| if (!s0().UpdateFromTextStream( | |
| emboss_reserved_local_stream)) { | |
| return false; | |
| } | |
| continue; | |
| } | |
| if (emboss_reserved_local_name == "l0") { | |
| if (!l0().UpdateFromTextStream( | |
| emboss_reserved_local_stream)) { | |
| return false; | |
| } | |
| continue; | |
| } | |
| if (emboss_reserved_local_name == "h0") { | |
| if (!h0().UpdateFromTextStream( | |
| emboss_reserved_local_stream)) { | |
| return false; | |
| } | |
| continue; | |
| } | |
| if (emboss_reserved_local_name == "e1") { | |
| if (!e1().UpdateFromTextStream( | |
| emboss_reserved_local_stream)) { | |
| return false; | |
| } | |
| continue; | |
| } | |
| if (emboss_reserved_local_name == "e2") { | |
| if (!e2().UpdateFromTextStream( | |
| emboss_reserved_local_stream)) { | |
| return false; | |
| } | |
| continue; | |
| } | |
| if (emboss_reserved_local_name == "b2") { | |
| if (!b2().UpdateFromTextStream( | |
| emboss_reserved_local_stream)) { | |
| return false; | |
| } | |
| continue; | |
| } | |
| if (emboss_reserved_local_name == "e3") { | |
| if (!e3().UpdateFromTextStream( | |
| emboss_reserved_local_stream)) { | |
| return false; | |
| } | |
| continue; | |
| } | |
| if (emboss_reserved_local_name == "e4") { | |
| if (!e4().UpdateFromTextStream( | |
| emboss_reserved_local_stream)) { | |
| return false; | |
| } | |
| continue; | |
| } | |
| if (emboss_reserved_local_name == "e5") { | |
| if (!e5().UpdateFromTextStream( | |
| emboss_reserved_local_stream)) { | |
| return false; | |
| } | |
| continue; | |
| } | |
| if (emboss_reserved_local_name == "e0") { | |
| if (!e0().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_s().ValueOr(false)) { | |
| if (!emboss_reserved_local_field_options.allow_partial_output() || | |
| s().IsAggregate() || s().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("s: "); | |
| s().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() && | |
| !s().IsAggregate() && !s().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("# s: UNREADABLE\n"); | |
| } | |
| } | |
| if (has_u().ValueOr(false)) { | |
| if (!emboss_reserved_local_field_options.allow_partial_output() || | |
| u().IsAggregate() || u().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("u: "); | |
| u().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() && | |
| !u().IsAggregate() && !u().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("# u: UNREADABLE\n"); | |
| } | |
| } | |
| if (has_i().ValueOr(false)) { | |
| if (!emboss_reserved_local_field_options.allow_partial_output() || | |
| i().IsAggregate() || i().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("i: "); | |
| i().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() && | |
| !i().IsAggregate() && !i().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("# i: UNREADABLE\n"); | |
| } | |
| } | |
| if (has_b().ValueOr(false)) { | |
| if (!emboss_reserved_local_field_options.allow_partial_output() || | |
| b().IsAggregate() || b().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("b: "); | |
| b().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() && | |
| !b().IsAggregate() && !b().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("# b: UNREADABLE\n"); | |
| } | |
| } | |
| if (has_a().ValueOr(false)) { | |
| if (!emboss_reserved_local_field_options.allow_partial_output() || | |
| a().IsAggregate() || a().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("a: "); | |
| a().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() && | |
| !a().IsAggregate() && !a().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("# a: UNREADABLE\n"); | |
| } | |
| } | |
| if (has_a0().ValueOr(false)) { | |
| if (!emboss_reserved_local_field_options.allow_partial_output() || | |
| a0().IsAggregate() || a0().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("a0: "); | |
| a0().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() && | |
| !a0().IsAggregate() && !a0().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("# a0: UNREADABLE\n"); | |
| } | |
| } | |
| if (has_s0().ValueOr(false)) { | |
| if (!emboss_reserved_local_field_options.allow_partial_output() || | |
| s0().IsAggregate() || s0().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("s0: "); | |
| s0().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() && | |
| !s0().IsAggregate() && !s0().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("# s0: UNREADABLE\n"); | |
| } | |
| } | |
| if (has_l0().ValueOr(false)) { | |
| if (!emboss_reserved_local_field_options.allow_partial_output() || | |
| l0().IsAggregate() || l0().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("l0: "); | |
| l0().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() && | |
| !l0().IsAggregate() && !l0().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("# l0: UNREADABLE\n"); | |
| } | |
| } | |
| if (has_h0().ValueOr(false)) { | |
| if (!emboss_reserved_local_field_options.allow_partial_output() || | |
| h0().IsAggregate() || h0().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("h0: "); | |
| h0().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() && | |
| !h0().IsAggregate() && !h0().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("# h0: UNREADABLE\n"); | |
| } | |
| } | |
| if (has_e1().ValueOr(false)) { | |
| if (!emboss_reserved_local_field_options.allow_partial_output() || | |
| e1().IsAggregate() || e1().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("e1: "); | |
| e1().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() && | |
| !e1().IsAggregate() && !e1().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("# e1: UNREADABLE\n"); | |
| } | |
| } | |
| if (has_e2().ValueOr(false)) { | |
| if (!emboss_reserved_local_field_options.allow_partial_output() || | |
| e2().IsAggregate() || e2().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("e2: "); | |
| e2().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() && | |
| !e2().IsAggregate() && !e2().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("# e2: UNREADABLE\n"); | |
| } | |
| } | |
| if (has_b2().ValueOr(false)) { | |
| if (!emboss_reserved_local_field_options.allow_partial_output() || | |
| b2().IsAggregate() || b2().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("b2: "); | |
| b2().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() && | |
| !b2().IsAggregate() && !b2().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("# b2: UNREADABLE\n"); | |
| } | |
| } | |
| if (has_e3().ValueOr(false)) { | |
| if (!emboss_reserved_local_field_options.allow_partial_output() || | |
| e3().IsAggregate() || e3().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("e3: "); | |
| e3().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() && | |
| !e3().IsAggregate() && !e3().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("# e3: UNREADABLE\n"); | |
| } | |
| } | |
| if (has_e4().ValueOr(false)) { | |
| if (!emboss_reserved_local_field_options.allow_partial_output() || | |
| e4().IsAggregate() || e4().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("e4: "); | |
| e4().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() && | |
| !e4().IsAggregate() && !e4().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("# e4: UNREADABLE\n"); | |
| } | |
| } | |
| if (has_e5().ValueOr(false)) { | |
| if (!emboss_reserved_local_field_options.allow_partial_output() || | |
| e5().IsAggregate() || e5().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("e5: "); | |
| e5().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() && | |
| !e5().IsAggregate() && !e5().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("# e5: UNREADABLE\n"); | |
| } | |
| } | |
| if (has_e0().ValueOr(false)) { | |
| if (!emboss_reserved_local_field_options.allow_partial_output() || | |
| e0().IsAggregate() || e0().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("e0: "); | |
| e0().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() && | |
| !e0().IsAggregate() && !e0().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("# e0: 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::UIntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 0>>, 8>> | |
| s() const; | |
| ::emboss::support::Maybe<bool> has_s() const; | |
| public: | |
| typename ::emboss::prelude::UIntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<64, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 1>>, 64>> | |
| u() const; | |
| ::emboss::support::Maybe<bool> has_u() const; | |
| public: | |
| typename ::emboss::prelude::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<64, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 1>>, 64>> | |
| i() const; | |
| ::emboss::support::Maybe<bool> has_i() 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, 1>>, 64>> | |
| b() const; | |
| ::emboss::support::Maybe<bool> has_b() const; | |
| public: | |
| typename ::emboss::support::GenericArrayView< | |
| typename ::emboss::support::GenericArrayView< | |
| typename ::emboss_test::GenericArrayElementView<typename Storage::template OffsetStorageType</**/0, 1>::template OffsetStorageType</**/4, 0>::template OffsetStorageType</**/1, 0>> | |
| , typename Storage::template OffsetStorageType</**/0, 1>::template OffsetStorageType</**/4, 0>, 1, | |
| 8 > | |
| , typename Storage::template OffsetStorageType</**/0, 1>, 4, | |
| 8 > | |
| a() const; | |
| ::emboss::support::Maybe<bool> has_a() const; | |
| private: | |
| typename ::emboss_test::Complex::GenericEmbossReservedAnonymousField1View<typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 1>>, 8>> | |
| emboss_reserved_anonymous_field_1() const; | |
| ::emboss::support::Maybe<bool> has_emboss_reserved_anonymous_field_1() const; | |
| public: | |
| auto a0() const -> decltype(this->emboss_reserved_anonymous_field_1().a0()) { | |
| return has_a0().ValueOrDefault() ? emboss_reserved_anonymous_field_1().a0() | |
| : decltype(this->emboss_reserved_anonymous_field_1().a0())(); | |
| } | |
| ::emboss::support::Maybe<bool> has_a0() const; | |
| public: | |
| auto s0() const -> decltype(this->emboss_reserved_anonymous_field_1().s0()) { | |
| return has_s0().ValueOrDefault() ? emboss_reserved_anonymous_field_1().s0() | |
| : decltype(this->emboss_reserved_anonymous_field_1().s0())(); | |
| } | |
| ::emboss::support::Maybe<bool> has_s0() const; | |
| public: | |
| auto l0() const -> decltype(this->emboss_reserved_anonymous_field_1().l0()) { | |
| return has_l0().ValueOrDefault() ? emboss_reserved_anonymous_field_1().l0() | |
| : decltype(this->emboss_reserved_anonymous_field_1().l0())(); | |
| } | |
| ::emboss::support::Maybe<bool> has_l0() const; | |
| public: | |
| auto h0() const -> decltype(this->emboss_reserved_anonymous_field_1().h0()) { | |
| return has_h0().ValueOrDefault() ? emboss_reserved_anonymous_field_1().h0() | |
| : decltype(this->emboss_reserved_anonymous_field_1().h0())(); | |
| } | |
| ::emboss::support::Maybe<bool> has_h0() const; | |
| public: | |
| typename ::emboss_test::GenericArrayElementView<typename Storage::template OffsetStorageType</**/0, 2>> | |
| e1() const; | |
| ::emboss::support::Maybe<bool> has_e1() const; | |
| public: | |
| typename ::emboss_test::GenericArrayElementView<typename Storage::template OffsetStorageType</**/0, 3>> | |
| e2() const; | |
| ::emboss::support::Maybe<bool> has_e2() const; | |
| public: | |
| typename ::emboss::prelude::BcdView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 3>>, 8>> | |
| b2() const; | |
| ::emboss::support::Maybe<bool> has_b2() const; | |
| public: | |
| typename ::emboss::prelude::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 4>>, 8>> | |
| e3() const; | |
| ::emboss::support::Maybe<bool> has_e3() const; | |
| public: | |
| typename ::emboss::prelude::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 5>>, 8>> | |
| e4() const; | |
| ::emboss::support::Maybe<bool> has_e4() const; | |
| public: | |
| typename ::emboss::prelude::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 6>>, 8>> | |
| e5() const; | |
| ::emboss::support::Maybe<bool> has_e5() const; | |
| public: | |
| typename ::emboss::prelude::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 1>>, 8>> | |
| e0() const; | |
| ::emboss::support::Maybe<bool> has_e0() const; | |
| public: | |
| class EmbossReservedDollarVirtualIntrinsicSizeInBytesView final { | |
| public: | |
| using ValueType = ::std::int32_t; | |
| explicit EmbossReservedDollarVirtualIntrinsicSizeInBytesView( | |
| const GenericComplexView &emboss_reserved_local_view) | |
| : view_(emboss_reserved_local_view) {} | |
| EmbossReservedDollarVirtualIntrinsicSizeInBytesView() = delete; | |
| EmbossReservedDollarVirtualIntrinsicSizeInBytesView(const EmbossReservedDollarVirtualIntrinsicSizeInBytesView &) = default; | |
| EmbossReservedDollarVirtualIntrinsicSizeInBytesView(EmbossReservedDollarVirtualIntrinsicSizeInBytesView &&) = default; | |
| EmbossReservedDollarVirtualIntrinsicSizeInBytesView &operator=(const EmbossReservedDollarVirtualIntrinsicSizeInBytesView &) = | |
| default; | |
| EmbossReservedDollarVirtualIntrinsicSizeInBytesView &operator=(EmbossReservedDollarVirtualIntrinsicSizeInBytesView &&) = | |
| default; | |
| ~EmbossReservedDollarVirtualIntrinsicSizeInBytesView() = default; | |
| ::std::int32_t Read() const { | |
| EMBOSS_CHECK(view_.has_IntrinsicSizeInBytes().ValueOr(false)); | |
| auto emboss_reserved_local_value = MaybeRead(); | |
| EMBOSS_CHECK(emboss_reserved_local_value.Known()); | |
| EMBOSS_CHECK(ValueIsOk(emboss_reserved_local_value.ValueOrDefault())); | |
| return emboss_reserved_local_value.ValueOrDefault(); | |
| } | |
| ::std::int32_t UncheckedRead() const { | |
| return MaybeRead().ValueOrDefault(); | |
| } | |
| bool Ok() const { | |
| auto emboss_reserved_local_value = MaybeRead(); | |
| return emboss_reserved_local_value.Known() && | |
| ValueIsOk(emboss_reserved_local_value.ValueOrDefault()); | |
| } | |
| 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; } | |
| private: | |
| ::emboss::support::Maybe</**/ ::std::int32_t> MaybeRead() const { | |
| const auto emboss_reserved_local_subexpr_1 = view_.s(); | |
| const auto emboss_reserved_local_subexpr_2 = (emboss_reserved_local_subexpr_1.Ok() ? ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(emboss_reserved_local_subexpr_1.UncheckedRead())) : ::emboss::support::Maybe</**/::std::int32_t>()); | |
| const auto emboss_reserved_local_subexpr_3 = ::emboss::support::Product</**/::std::int32_t, ::std::int32_t, ::std::int32_t, ::std::int32_t>(emboss_reserved_local_subexpr_2, ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(4LL))); | |
| const auto emboss_reserved_local_subexpr_4 = ::emboss::support::Sum</**/::std::int32_t, ::std::int32_t, ::std::int32_t, ::std::int32_t>(::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(1LL)), emboss_reserved_local_subexpr_3); | |
| const auto emboss_reserved_local_subexpr_5 = ::emboss::support::Choice</**/::std::int32_t, ::std::int32_t, bool, ::std::int32_t, ::std::int32_t>(::emboss::support::Maybe</**/bool>(true), emboss_reserved_local_subexpr_4, ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(0LL))); | |
| const auto emboss_reserved_local_subexpr_6 = view_.a0(); | |
| const auto emboss_reserved_local_subexpr_7 = (emboss_reserved_local_subexpr_6.Ok() ? ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(emboss_reserved_local_subexpr_6.UncheckedRead())) : ::emboss::support::Maybe</**/::std::int32_t>()); | |
| const auto emboss_reserved_local_subexpr_8 = ::emboss::support::GreaterThanOrEqual</**/::std::int32_t, bool, ::std::int32_t, ::std::int32_t>(emboss_reserved_local_subexpr_7, ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(128LL))); | |
| const auto emboss_reserved_local_subexpr_9 = ::emboss::support::Choice</**/::std::int32_t, ::std::int32_t, bool, ::std::int32_t, ::std::int32_t>(emboss_reserved_local_subexpr_8, ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(4LL)), ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(0LL))); | |
| const auto emboss_reserved_local_subexpr_10 = ::emboss::support::LessThan</**/::std::int32_t, bool, ::std::int32_t, ::std::int32_t>(emboss_reserved_local_subexpr_7, ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(128LL))); | |
| const auto emboss_reserved_local_subexpr_11 = ::emboss::support::Choice</**/::std::int32_t, ::std::int32_t, bool, ::std::int32_t, ::std::int32_t>(emboss_reserved_local_subexpr_10, ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(4LL)), ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(0LL))); | |
| const auto emboss_reserved_local_subexpr_12 = view_.b2(); | |
| const auto emboss_reserved_local_subexpr_13 = (emboss_reserved_local_subexpr_12.Ok() ? ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(emboss_reserved_local_subexpr_12.UncheckedRead())) : ::emboss::support::Maybe</**/::std::int32_t>()); | |
| const auto emboss_reserved_local_subexpr_14 = ::emboss::support::GreaterThan</**/::std::int32_t, bool, ::std::int32_t, ::std::int32_t>(emboss_reserved_local_subexpr_13, ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(25LL))); | |
| const auto emboss_reserved_local_subexpr_15 = ::emboss::support::Choice</**/::std::int32_t, ::std::int32_t, bool, ::std::int32_t, ::std::int32_t>(emboss_reserved_local_subexpr_14, ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(5LL)), ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(0LL))); | |
| const auto emboss_reserved_local_subexpr_16 = ::emboss::support::GreaterThanOrEqual</**/::std::int32_t, bool, ::std::int32_t, ::std::int32_t>(emboss_reserved_local_subexpr_2, ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(4LL))); | |
| const auto emboss_reserved_local_subexpr_17 = ::emboss::support::GreaterThanOrEqual</**/::std::int32_t, bool, ::std::int32_t, ::std::int32_t>(emboss_reserved_local_subexpr_7, ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(80LL))); | |
| const auto emboss_reserved_local_subexpr_18 = view_.e3(); | |
| const auto emboss_reserved_local_subexpr_19 = (emboss_reserved_local_subexpr_18.Ok() ? ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(emboss_reserved_local_subexpr_18.UncheckedRead())) : ::emboss::support::Maybe</**/::std::int32_t>()); | |
| const auto emboss_reserved_local_subexpr_20 = ::emboss::support::GreaterThanOrEqual</**/::std::int32_t, bool, ::std::int32_t, ::std::int32_t>(emboss_reserved_local_subexpr_19, ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(128LL))); | |
| const auto emboss_reserved_local_subexpr_21 = ::emboss::support::LessThan</**/::std::int32_t, bool, ::std::int32_t, ::std::int32_t>(emboss_reserved_local_subexpr_13, ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(50LL))); | |
| const auto emboss_reserved_local_subexpr_22 = ::emboss::support::Choice</**/bool, bool, bool, bool, bool>(emboss_reserved_local_subexpr_17, emboss_reserved_local_subexpr_20, emboss_reserved_local_subexpr_21); | |
| const auto emboss_reserved_local_subexpr_23 = ::emboss::support::And</**/bool, bool, bool, bool>(emboss_reserved_local_subexpr_16, emboss_reserved_local_subexpr_22); | |
| const auto emboss_reserved_local_subexpr_24 = ::emboss::support::Choice</**/::std::int32_t, ::std::int32_t, bool, ::std::int32_t, ::std::int32_t>(emboss_reserved_local_subexpr_23, ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(6LL)), ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(0LL))); | |
| const auto emboss_reserved_local_subexpr_25 = ::emboss::support::GreaterThanOrEqual</**/::std::int32_t, bool, ::std::int32_t, ::std::int32_t>(emboss_reserved_local_subexpr_2, ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(5LL))); | |
| const auto emboss_reserved_local_subexpr_26 = view_.e4(); | |
| const auto emboss_reserved_local_subexpr_27 = (emboss_reserved_local_subexpr_26.Ok() ? ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(emboss_reserved_local_subexpr_26.UncheckedRead())) : ::emboss::support::Maybe</**/::std::int32_t>()); | |
| const auto emboss_reserved_local_subexpr_28 = ::emboss::support::GreaterThan</**/::std::int32_t, bool, ::std::int32_t, ::std::int32_t>(emboss_reserved_local_subexpr_27, ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(0LL))); | |
| const auto emboss_reserved_local_subexpr_29 = ::emboss::support::And</**/bool, bool, bool, bool>(emboss_reserved_local_subexpr_25, emboss_reserved_local_subexpr_28); | |
| const auto emboss_reserved_local_subexpr_30 = ::emboss::support::Choice</**/::std::int32_t, ::std::int32_t, bool, ::std::int32_t, ::std::int32_t>(emboss_reserved_local_subexpr_29, ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(7LL)), ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(0LL))); | |
| const auto emboss_reserved_local_subexpr_31 = ::emboss::support::LessThan</**/::std::int32_t, bool, ::std::int32_t, ::std::int32_t>(emboss_reserved_local_subexpr_2, ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(2LL))); | |
| const auto emboss_reserved_local_subexpr_32 = ::emboss::support::LessThan</**/::std::int32_t, bool, ::std::int32_t, ::std::int32_t>(emboss_reserved_local_subexpr_7, ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(4LL))); | |
| const auto emboss_reserved_local_subexpr_33 = ::emboss::support::Or</**/bool, bool, bool, bool>(emboss_reserved_local_subexpr_31, emboss_reserved_local_subexpr_32); | |
| const auto emboss_reserved_local_subexpr_34 = ::emboss::support::Choice</**/::std::int32_t, ::std::int32_t, bool, ::std::int32_t, ::std::int32_t>(emboss_reserved_local_subexpr_33, ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(2LL)), ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(0LL))); | |
| const auto emboss_reserved_local_subexpr_35 = ::emboss::support::Maximum</**/::std::int32_t, ::std::int32_t, ::std::int32_t, ::std::int32_t, ::std::int32_t, ::std::int32_t, ::std::int32_t, ::std::int32_t, ::std::int32_t, ::std::int32_t, ::std::int32_t, ::std::int32_t, ::std::int32_t, ::std::int32_t, ::std::int32_t, ::std::int32_t>(::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(0LL)), ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(1LL)), ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(9LL)), ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(9LL)), ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(9LL)), emboss_reserved_local_subexpr_5, ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(2LL)), ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(3LL)), emboss_reserved_local_subexpr_9, emboss_reserved_local_subexpr_11, emboss_reserved_local_subexpr_15, emboss_reserved_local_subexpr_24, emboss_reserved_local_subexpr_30, emboss_reserved_local_subexpr_34); | |
| return emboss_reserved_local_subexpr_35; | |
| } | |
| static constexpr bool ValueIsOk( | |
| ::std::int32_t emboss_reserved_local_value) { | |
| return (void)emboss_reserved_local_value, // Silence -Wunused-parameter | |
| ::emboss::support::Maybe<bool>(true).ValueOr(false); | |
| } | |
| const GenericComplexView view_; | |
| }; | |
| EmbossReservedDollarVirtualIntrinsicSizeInBytesView IntrinsicSizeInBytes() const; | |
| ::emboss::support::Maybe<bool> has_IntrinsicSizeInBytes() const; | |
| 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 GenericComplexView; | |
| }; | |
| using ComplexView = | |
| GenericComplexView</**/ ::emboss::support::ReadOnlyContiguousBuffer>; | |
| using ComplexWriter = | |
| GenericComplexView</**/ ::emboss::support::ReadWriteContiguousBuffer>; | |
| template <class View> | |
| struct EmbossReservedInternalIsGenericComplexView { | |
| static constexpr const bool value = false; | |
| }; | |
| template <class Storage> | |
| struct EmbossReservedInternalIsGenericComplexView< | |
| GenericComplexView<Storage>> { | |
| static constexpr const bool value = true; | |
| }; | |
| template <typename T> | |
| inline GenericComplexView< | |
| /**/ ::emboss::support::ContiguousBuffer< | |
| typename ::std::remove_reference< | |
| decltype(*::std::declval<T>()->data())>::type, | |
| 1, 0>> | |
| MakeComplexView( T &&emboss_reserved_local_arg) { | |
| return GenericComplexView< | |
| /**/ ::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 GenericComplexView</**/ ::emboss::support::ContiguousBuffer<T, 1, 0>> | |
| MakeComplexView( T *emboss_reserved_local_data, | |
| ::std::size_t emboss_reserved_local_size) { | |
| return GenericComplexView</**/ ::emboss::support::ContiguousBuffer<T, 1, 0>>( | |
| emboss_reserved_local_data, | |
| emboss_reserved_local_size); | |
| } | |
| template <typename T, ::std::size_t kAlignment> | |
| inline GenericComplexView< | |
| /**/ ::emboss::support::ContiguousBuffer<T, kAlignment, 0>> | |
| MakeAlignedComplexView( | |
| T *emboss_reserved_local_data, | |
| ::std::size_t emboss_reserved_local_size) { | |
| return GenericComplexView< | |
| /**/ ::emboss::support::ContiguousBuffer<T, kAlignment, 0>>( | |
| emboss_reserved_local_data, | |
| emboss_reserved_local_size); | |
| } | |
| namespace RegisterLayout { | |
| } // namespace RegisterLayout | |
| template <class Storage> | |
| inline typename ::emboss::prelude::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>, | |
| typename Storage::template OffsetStorageType</**/0, 0>> | |
| GenericRegisterLayoutView<Storage>::x() | |
| const { | |
| if ( has_x().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>(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::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::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::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>, | |
| typename Storage::template OffsetStorageType</**/0, 0>> | |
| (); | |
| } | |
| template <class Storage> | |
| inline ::emboss::support::Maybe<bool> | |
| GenericRegisterLayoutView<Storage>::has_x() const { | |
| return ::emboss::support::Maybe</**/bool>(true); | |
| } | |
| template <class Storage> | |
| inline typename ::emboss::prelude::UIntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<4, ::emboss::support::AllValuesAreOk>, | |
| typename Storage::template OffsetStorageType</**/0, 0>> | |
| GenericRegisterLayoutView<Storage>::l() | |
| const { | |
| if ( has_l().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::UIntView< | |
| /**/ ::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::UIntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<4, ::emboss::support::AllValuesAreOk>, | |
| typename Storage::template OffsetStorageType</**/0, 0>> | |
| (); | |
| } | |
| template <class Storage> | |
| inline ::emboss::support::Maybe<bool> | |
| GenericRegisterLayoutView<Storage>::has_l() const { | |
| return ::emboss::support::Maybe</**/bool>(true); | |
| } | |
| template <class Storage> | |
| inline typename ::emboss::prelude::UIntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<4, ::emboss::support::AllValuesAreOk>, | |
| typename Storage::template OffsetStorageType</**/0, 4>> | |
| GenericRegisterLayoutView<Storage>::h() | |
| const { | |
| if ( has_h().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>(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::UIntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<4, ::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::UIntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<4, ::emboss::support::AllValuesAreOk>, | |
| typename Storage::template OffsetStorageType</**/0, 4>> | |
| (); | |
| } | |
| template <class Storage> | |
| inline ::emboss::support::Maybe<bool> | |
| GenericRegisterLayoutView<Storage>::has_h() const { | |
| return ::emboss::support::Maybe</**/bool>(true); | |
| } | |
| namespace RegisterLayout { | |
| inline constexpr ::std::int32_t IntrinsicSizeInBits() { | |
| return ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(8LL)).ValueOrDefault(); | |
| } | |
| } // namespace RegisterLayout | |
| template <class Storage> | |
| inline constexpr ::std::int32_t | |
| GenericRegisterLayoutView<Storage>::EmbossReservedDollarVirtualIntrinsicSizeInBitsView::Read() { | |
| return RegisterLayout::IntrinsicSizeInBits(); | |
| } | |
| template <class Storage> | |
| inline constexpr ::std::int32_t | |
| GenericRegisterLayoutView< | |
| Storage>::EmbossReservedDollarVirtualIntrinsicSizeInBitsView::UncheckedRead() { | |
| return RegisterLayout::IntrinsicSizeInBits(); | |
| } | |
| namespace RegisterLayout { | |
| inline constexpr ::std::int32_t MaxSizeInBits() { | |
| return ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(8LL)).ValueOrDefault(); | |
| } | |
| } // namespace RegisterLayout | |
| template <class Storage> | |
| inline constexpr ::std::int32_t | |
| GenericRegisterLayoutView<Storage>::EmbossReservedDollarVirtualMaxSizeInBitsView::Read() { | |
| return RegisterLayout::MaxSizeInBits(); | |
| } | |
| template <class Storage> | |
| inline constexpr ::std::int32_t | |
| GenericRegisterLayoutView< | |
| Storage>::EmbossReservedDollarVirtualMaxSizeInBitsView::UncheckedRead() { | |
| return RegisterLayout::MaxSizeInBits(); | |
| } | |
| namespace RegisterLayout { | |
| inline constexpr ::std::int32_t MinSizeInBits() { | |
| return ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(8LL)).ValueOrDefault(); | |
| } | |
| } // namespace RegisterLayout | |
| template <class Storage> | |
| inline constexpr ::std::int32_t | |
| GenericRegisterLayoutView<Storage>::EmbossReservedDollarVirtualMinSizeInBitsView::Read() { | |
| return RegisterLayout::MinSizeInBits(); | |
| } | |
| template <class Storage> | |
| inline constexpr ::std::int32_t | |
| GenericRegisterLayoutView< | |
| Storage>::EmbossReservedDollarVirtualMinSizeInBitsView::UncheckedRead() { | |
| return RegisterLayout::MinSizeInBits(); | |
| } | |
| namespace ArrayElement { | |
| } // namespace ArrayElement | |
| template <class Storage> | |
| inline typename ::emboss_test::GenericRegisterLayoutView<typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 0>>, 8>> | |
| GenericArrayElementView<Storage>::a() | |
| const { | |
| if ( has_a().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_test::GenericRegisterLayoutView<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_test::GenericRegisterLayoutView<typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 0>>, 8>> | |
| (); | |
| } | |
| template <class Storage> | |
| inline ::emboss::support::Maybe<bool> | |
| GenericArrayElementView<Storage>::has_a() const { | |
| return ::emboss::support::Maybe</**/bool>(true); | |
| } | |
| namespace ArrayElement { | |
| inline constexpr ::std::int32_t IntrinsicSizeInBytes() { | |
| return ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(1LL)).ValueOrDefault(); | |
| } | |
| } // namespace ArrayElement | |
| template <class Storage> | |
| inline constexpr ::std::int32_t | |
| GenericArrayElementView<Storage>::EmbossReservedDollarVirtualIntrinsicSizeInBytesView::Read() { | |
| return ArrayElement::IntrinsicSizeInBytes(); | |
| } | |
| template <class Storage> | |
| inline constexpr ::std::int32_t | |
| GenericArrayElementView< | |
| Storage>::EmbossReservedDollarVirtualIntrinsicSizeInBytesView::UncheckedRead() { | |
| return ArrayElement::IntrinsicSizeInBytes(); | |
| } | |
| namespace ArrayElement { | |
| inline constexpr ::std::int32_t MaxSizeInBytes() { | |
| return ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(1LL)).ValueOrDefault(); | |
| } | |
| } // namespace ArrayElement | |
| template <class Storage> | |
| inline constexpr ::std::int32_t | |
| GenericArrayElementView<Storage>::EmbossReservedDollarVirtualMaxSizeInBytesView::Read() { | |
| return ArrayElement::MaxSizeInBytes(); | |
| } | |
| template <class Storage> | |
| inline constexpr ::std::int32_t | |
| GenericArrayElementView< | |
| Storage>::EmbossReservedDollarVirtualMaxSizeInBytesView::UncheckedRead() { | |
| return ArrayElement::MaxSizeInBytes(); | |
| } | |
| namespace ArrayElement { | |
| inline constexpr ::std::int32_t MinSizeInBytes() { | |
| return ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(1LL)).ValueOrDefault(); | |
| } | |
| } // namespace ArrayElement | |
| template <class Storage> | |
| inline constexpr ::std::int32_t | |
| GenericArrayElementView<Storage>::EmbossReservedDollarVirtualMinSizeInBytesView::Read() { | |
| return ArrayElement::MinSizeInBytes(); | |
| } | |
| template <class Storage> | |
| inline constexpr ::std::int32_t | |
| GenericArrayElementView< | |
| Storage>::EmbossReservedDollarVirtualMinSizeInBytesView::UncheckedRead() { | |
| return ArrayElement::MinSizeInBytes(); | |
| } | |
| namespace Complex { | |
| namespace EmbossReservedAnonymousField1 { | |
| } // namespace EmbossReservedAnonymousField1 | |
| template <class Storage> | |
| inline typename ::emboss::prelude::UIntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>, | |
| typename Storage::template OffsetStorageType</**/0, 0>> | |
| GenericEmbossReservedAnonymousField1View<Storage>::a0() | |
| const { | |
| if ( has_a0().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>(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::UIntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::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::UIntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>, | |
| typename Storage::template OffsetStorageType</**/0, 0>> | |
| (); | |
| } | |
| template <class Storage> | |
| inline ::emboss::support::Maybe<bool> | |
| GenericEmbossReservedAnonymousField1View<Storage>::has_a0() const { | |
| return ::emboss::support::Maybe</**/bool>(true); | |
| } | |
| template <class Storage> | |
| inline typename ::emboss::prelude::FlagView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<1, ::emboss::support::AllValuesAreOk>, | |
| typename Storage::template OffsetStorageType</**/0, 7>> | |
| GenericEmbossReservedAnonymousField1View<Storage>::s0() | |
| const { | |
| if ( has_s0().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>(7LL)); | |
| 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::FlagView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<1, ::emboss::support::AllValuesAreOk>, | |
| typename Storage::template OffsetStorageType</**/0, 7>> | |
| ( | |
| backing_ | |
| .template GetOffsetStorage<0, | |
| 7>( | |
| emboss_reserved_local_offset.ValueOrDefault(), | |
| emboss_reserved_local_size.ValueOrDefault())); | |
| } | |
| } | |
| return ::emboss::prelude::FlagView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<1, ::emboss::support::AllValuesAreOk>, | |
| typename Storage::template OffsetStorageType</**/0, 7>> | |
| (); | |
| } | |
| template <class Storage> | |
| inline ::emboss::support::Maybe<bool> | |
| GenericEmbossReservedAnonymousField1View<Storage>::has_s0() const { | |
| return ::emboss::support::Maybe</**/bool>(true); | |
| } | |
| template <class Storage> | |
| inline typename ::emboss::prelude::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<4, ::emboss::support::AllValuesAreOk>, | |
| typename Storage::template OffsetStorageType</**/0, 0>> | |
| GenericEmbossReservedAnonymousField1View<Storage>::l0() | |
| const { | |
| if ( has_l0().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::IntView< | |
| /**/ ::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::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<4, ::emboss::support::AllValuesAreOk>, | |
| typename Storage::template OffsetStorageType</**/0, 0>> | |
| (); | |
| } | |
| template <class Storage> | |
| inline ::emboss::support::Maybe<bool> | |
| GenericEmbossReservedAnonymousField1View<Storage>::has_l0() const { | |
| return ::emboss::support::Maybe</**/bool>(true); | |
| } | |
| template <class Storage> | |
| inline typename ::emboss::prelude::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<4, ::emboss::support::AllValuesAreOk>, | |
| typename Storage::template OffsetStorageType</**/0, 4>> | |
| GenericEmbossReservedAnonymousField1View<Storage>::h0() | |
| const { | |
| if ( has_h0().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>(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::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<4, ::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::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<4, ::emboss::support::AllValuesAreOk>, | |
| typename Storage::template OffsetStorageType</**/0, 4>> | |
| (); | |
| } | |
| template <class Storage> | |
| inline ::emboss::support::Maybe<bool> | |
| GenericEmbossReservedAnonymousField1View<Storage>::has_h0() 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>(8LL)).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>(8LL)).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>(8LL)).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 Complex | |
| template <class Storage> | |
| inline typename ::emboss::prelude::UIntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 0>>, 8>> | |
| GenericComplexView<Storage>::s() | |
| const { | |
| if ( has_s().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::UIntView< | |
| /**/ ::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::UIntView< | |
| /**/ ::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> | |
| GenericComplexView<Storage>::has_s() const { | |
| return ::emboss::support::Maybe</**/bool>(true); | |
| } | |
| template <class Storage> | |
| inline typename ::emboss::prelude::UIntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<64, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 1>>, 64>> | |
| GenericComplexView<Storage>::u() | |
| const { | |
| if ( has_u().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>(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::UIntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<64, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 1>>, 64>> | |
| ( | |
| backing_ | |
| .template GetOffsetStorage<0, | |
| 1>( | |
| emboss_reserved_local_offset.ValueOrDefault(), | |
| emboss_reserved_local_size.ValueOrDefault())); | |
| } | |
| } | |
| return ::emboss::prelude::UIntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<64, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 1>>, 64>> | |
| (); | |
| } | |
| template <class Storage> | |
| inline ::emboss::support::Maybe<bool> | |
| GenericComplexView<Storage>::has_u() const { | |
| return ::emboss::support::Maybe</**/bool>(true); | |
| } | |
| template <class Storage> | |
| inline typename ::emboss::prelude::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<64, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 1>>, 64>> | |
| GenericComplexView<Storage>::i() | |
| const { | |
| if ( has_i().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>(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::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<64, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 1>>, 64>> | |
| ( | |
| backing_ | |
| .template GetOffsetStorage<0, | |
| 1>( | |
| emboss_reserved_local_offset.ValueOrDefault(), | |
| emboss_reserved_local_size.ValueOrDefault())); | |
| } | |
| } | |
| return ::emboss::prelude::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<64, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 1>>, 64>> | |
| (); | |
| } | |
| template <class Storage> | |
| inline ::emboss::support::Maybe<bool> | |
| GenericComplexView<Storage>::has_i() 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, 1>>, 64>> | |
| GenericComplexView<Storage>::b() | |
| const { | |
| if ( has_b().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>(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<64, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 1>>, 64>> | |
| ( | |
| backing_ | |
| .template GetOffsetStorage<0, | |
| 1>( | |
| 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, 1>>, 64>> | |
| (); | |
| } | |
| template <class Storage> | |
| inline ::emboss::support::Maybe<bool> | |
| GenericComplexView<Storage>::has_b() const { | |
| return ::emboss::support::Maybe</**/bool>(true); | |
| } | |
| template <class Storage> | |
| inline typename ::emboss::support::GenericArrayView< | |
| typename ::emboss::support::GenericArrayView< | |
| typename ::emboss_test::GenericArrayElementView<typename Storage::template OffsetStorageType</**/0, 1>::template OffsetStorageType</**/4, 0>::template OffsetStorageType</**/1, 0>> | |
| , typename Storage::template OffsetStorageType</**/0, 1>::template OffsetStorageType</**/4, 0>, 1, | |
| 8 > | |
| , typename Storage::template OffsetStorageType</**/0, 1>, 4, | |
| 8 > | |
| GenericComplexView<Storage>::a() | |
| const { | |
| if ( has_a().ValueOr(false)) { | |
| const auto emboss_reserved_local_subexpr_1 = s(); | |
| const auto emboss_reserved_local_subexpr_2 = (emboss_reserved_local_subexpr_1.Ok() ? ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(emboss_reserved_local_subexpr_1.UncheckedRead())) : ::emboss::support::Maybe</**/::std::int32_t>()); | |
| const auto emboss_reserved_local_subexpr_3 = ::emboss::support::Product</**/::std::int32_t, ::std::int32_t, ::std::int32_t, ::std::int32_t>(emboss_reserved_local_subexpr_2, ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(4LL))); | |
| auto emboss_reserved_local_size = emboss_reserved_local_subexpr_3; | |
| 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::support::GenericArrayView< | |
| typename ::emboss::support::GenericArrayView< | |
| typename ::emboss_test::GenericArrayElementView<typename Storage::template OffsetStorageType</**/0, 1>::template OffsetStorageType</**/4, 0>::template OffsetStorageType</**/1, 0>> | |
| , typename Storage::template OffsetStorageType</**/0, 1>::template OffsetStorageType</**/4, 0>, 1, | |
| 8 > | |
| , typename Storage::template OffsetStorageType</**/0, 1>, 4, | |
| 8 > | |
| ( | |
| backing_ | |
| .template GetOffsetStorage<0, | |
| 1>( | |
| emboss_reserved_local_offset.ValueOrDefault(), | |
| emboss_reserved_local_size.ValueOrDefault())); | |
| } | |
| } | |
| return ::emboss::support::GenericArrayView< | |
| typename ::emboss::support::GenericArrayView< | |
| typename ::emboss_test::GenericArrayElementView<typename Storage::template OffsetStorageType</**/0, 1>::template OffsetStorageType</**/4, 0>::template OffsetStorageType</**/1, 0>> | |
| , typename Storage::template OffsetStorageType</**/0, 1>::template OffsetStorageType</**/4, 0>, 1, | |
| 8 > | |
| , typename Storage::template OffsetStorageType</**/0, 1>, 4, | |
| 8 > | |
| (); | |
| } | |
| template <class Storage> | |
| inline ::emboss::support::Maybe<bool> | |
| GenericComplexView<Storage>::has_a() const { | |
| return ::emboss::support::Maybe</**/bool>(true); | |
| } | |
| template <class Storage> | |
| inline typename ::emboss_test::Complex::GenericEmbossReservedAnonymousField1View<typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 1>>, 8>> | |
| GenericComplexView<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>(1LL)); | |
| 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_test::Complex::GenericEmbossReservedAnonymousField1View<typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 1>>, 8>> | |
| ( | |
| backing_ | |
| .template GetOffsetStorage<0, | |
| 1>( | |
| emboss_reserved_local_offset.ValueOrDefault(), | |
| emboss_reserved_local_size.ValueOrDefault())); | |
| } | |
| } | |
| return ::emboss_test::Complex::GenericEmbossReservedAnonymousField1View<typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 1>>, 8>> | |
| (); | |
| } | |
| template <class Storage> | |
| inline ::emboss::support::Maybe<bool> | |
| GenericComplexView<Storage>::has_emboss_reserved_anonymous_field_1() const { | |
| return ::emboss::support::Maybe</**/bool>(true); | |
| } | |
| template <class Storage> | |
| inline ::emboss::support::Maybe<bool> | |
| GenericComplexView<Storage>::has_a0() 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> | |
| GenericComplexView<Storage>::has_s0() 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> | |
| GenericComplexView<Storage>::has_l0() 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> | |
| GenericComplexView<Storage>::has_h0() const { | |
| return ::emboss::support::And</**/bool, bool, bool, bool>(::emboss::support::Maybe</**/bool>(true), ::emboss::support::Maybe</**/bool>(true)); | |
| } | |
| template <class Storage> | |
| inline typename ::emboss_test::GenericArrayElementView<typename Storage::template OffsetStorageType</**/0, 2>> | |
| GenericComplexView<Storage>::e1() | |
| const { | |
| if ( has_e1().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>(2LL)); | |
| 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::GenericArrayElementView<typename Storage::template OffsetStorageType</**/0, 2>> | |
| ( | |
| backing_ | |
| .template GetOffsetStorage<0, | |
| 2>( | |
| emboss_reserved_local_offset.ValueOrDefault(), | |
| emboss_reserved_local_size.ValueOrDefault())); | |
| } | |
| } | |
| return ::emboss_test::GenericArrayElementView<typename Storage::template OffsetStorageType</**/0, 2>> | |
| (); | |
| } | |
| template <class Storage> | |
| inline ::emboss::support::Maybe<bool> | |
| GenericComplexView<Storage>::has_e1() const { | |
| return ::emboss::support::Maybe</**/bool>(true); | |
| } | |
| template <class Storage> | |
| inline typename ::emboss_test::GenericArrayElementView<typename Storage::template OffsetStorageType</**/0, 3>> | |
| GenericComplexView<Storage>::e2() | |
| const { | |
| if ( has_e2().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>(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_test::GenericArrayElementView<typename Storage::template OffsetStorageType</**/0, 3>> | |
| ( | |
| backing_ | |
| .template GetOffsetStorage<0, | |
| 3>( | |
| emboss_reserved_local_offset.ValueOrDefault(), | |
| emboss_reserved_local_size.ValueOrDefault())); | |
| } | |
| } | |
| return ::emboss_test::GenericArrayElementView<typename Storage::template OffsetStorageType</**/0, 3>> | |
| (); | |
| } | |
| template <class Storage> | |
| inline ::emboss::support::Maybe<bool> | |
| GenericComplexView<Storage>::has_e2() const { | |
| return ::emboss::support::GreaterThanOrEqual</**/::std::int32_t, bool, ::std::int32_t, ::std::int32_t>((a0().Ok() ? ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(a0().UncheckedRead())) : ::emboss::support::Maybe</**/::std::int32_t>()), ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(128LL))); | |
| } | |
| 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, 3>>, 8>> | |
| GenericComplexView<Storage>::b2() | |
| const { | |
| if ( has_b2().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>(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<8, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 3>>, 8>> | |
| ( | |
| backing_ | |
| .template GetOffsetStorage<0, | |
| 3>( | |
| 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, 3>>, 8>> | |
| (); | |
| } | |
| template <class Storage> | |
| inline ::emboss::support::Maybe<bool> | |
| GenericComplexView<Storage>::has_b2() const { | |
| return ::emboss::support::LessThan</**/::std::int32_t, bool, ::std::int32_t, ::std::int32_t>((a0().Ok() ? ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(a0().UncheckedRead())) : ::emboss::support::Maybe</**/::std::int32_t>()), ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(128LL))); | |
| } | |
| template <class Storage> | |
| inline typename ::emboss::prelude::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 4>>, 8>> | |
| GenericComplexView<Storage>::e3() | |
| const { | |
| if ( has_e3().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>(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::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 4>>, 8>> | |
| ( | |
| backing_ | |
| .template GetOffsetStorage<0, | |
| 4>( | |
| emboss_reserved_local_offset.ValueOrDefault(), | |
| emboss_reserved_local_size.ValueOrDefault())); | |
| } | |
| } | |
| return ::emboss::prelude::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 4>>, 8>> | |
| (); | |
| } | |
| template <class Storage> | |
| inline ::emboss::support::Maybe<bool> | |
| GenericComplexView<Storage>::has_e3() const { | |
| return ::emboss::support::GreaterThan</**/::std::int32_t, bool, ::std::int32_t, ::std::int32_t>((b2().Ok() ? ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(b2().UncheckedRead())) : ::emboss::support::Maybe</**/::std::int32_t>()), ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(25LL))); | |
| } | |
| template <class Storage> | |
| inline typename ::emboss::prelude::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 5>>, 8>> | |
| GenericComplexView<Storage>::e4() | |
| const { | |
| if ( has_e4().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>(5LL)); | |
| 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::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 5>>, 8>> | |
| ( | |
| backing_ | |
| .template GetOffsetStorage<0, | |
| 5>( | |
| emboss_reserved_local_offset.ValueOrDefault(), | |
| emboss_reserved_local_size.ValueOrDefault())); | |
| } | |
| } | |
| return ::emboss::prelude::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 5>>, 8>> | |
| (); | |
| } | |
| template <class Storage> | |
| inline ::emboss::support::Maybe<bool> | |
| GenericComplexView<Storage>::has_e4() const { | |
| return ::emboss::support::And</**/bool, bool, bool, bool>(::emboss::support::GreaterThanOrEqual</**/::std::int32_t, bool, ::std::int32_t, ::std::int32_t>((s().Ok() ? ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(s().UncheckedRead())) : ::emboss::support::Maybe</**/::std::int32_t>()), ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(4LL))), ::emboss::support::Choice</**/bool, bool, bool, bool, bool>(::emboss::support::GreaterThanOrEqual</**/::std::int32_t, bool, ::std::int32_t, ::std::int32_t>((a0().Ok() ? ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(a0().UncheckedRead())) : ::emboss::support::Maybe</**/::std::int32_t>()), ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(80LL))), ::emboss::support::GreaterThanOrEqual</**/::std::int32_t, bool, ::std::int32_t, ::std::int32_t>((e3().Ok() ? ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(e3().UncheckedRead())) : ::emboss::support::Maybe</**/::std::int32_t>()), ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(128LL))), ::emboss::support::LessThan</**/::std::int32_t, bool, ::std::int32_t, ::std::int32_t>((b2().Ok() ? ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(b2().UncheckedRead())) : ::emboss::support::Maybe</**/::std::int32_t>()), ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(50LL))))); | |
| } | |
| template <class Storage> | |
| inline typename ::emboss::prelude::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 6>>, 8>> | |
| GenericComplexView<Storage>::e5() | |
| const { | |
| if ( has_e5().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>(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::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 6>>, 8>> | |
| ( | |
| backing_ | |
| .template GetOffsetStorage<0, | |
| 6>( | |
| emboss_reserved_local_offset.ValueOrDefault(), | |
| emboss_reserved_local_size.ValueOrDefault())); | |
| } | |
| } | |
| return ::emboss::prelude::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 6>>, 8>> | |
| (); | |
| } | |
| template <class Storage> | |
| inline ::emboss::support::Maybe<bool> | |
| GenericComplexView<Storage>::has_e5() const { | |
| return ::emboss::support::And</**/bool, bool, bool, bool>(::emboss::support::GreaterThanOrEqual</**/::std::int32_t, bool, ::std::int32_t, ::std::int32_t>((s().Ok() ? ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(s().UncheckedRead())) : ::emboss::support::Maybe</**/::std::int32_t>()), ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(5LL))), ::emboss::support::GreaterThan</**/::std::int32_t, bool, ::std::int32_t, ::std::int32_t>((e4().Ok() ? ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(e4().UncheckedRead())) : ::emboss::support::Maybe</**/::std::int32_t>()), ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(0LL)))); | |
| } | |
| template <class Storage> | |
| inline typename ::emboss::prelude::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 1>>, 8>> | |
| GenericComplexView<Storage>::e0() | |
| const { | |
| if ( has_e0().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>(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::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 1>>, 8>> | |
| ( | |
| backing_ | |
| .template GetOffsetStorage<0, | |
| 1>( | |
| emboss_reserved_local_offset.ValueOrDefault(), | |
| emboss_reserved_local_size.ValueOrDefault())); | |
| } | |
| } | |
| return ::emboss::prelude::IntView< | |
| /**/ ::emboss::support::FixedSizeViewParameters<8, ::emboss::support::AllValuesAreOk>, | |
| typename ::emboss::support::BitBlock</**/::emboss::support::LittleEndianByteOrderer<typename Storage::template OffsetStorageType</**/0, 1>>, 8>> | |
| (); | |
| } | |
| template <class Storage> | |
| inline ::emboss::support::Maybe<bool> | |
| GenericComplexView<Storage>::has_e0() const { | |
| return ::emboss::support::Or</**/bool, bool, bool, bool>(::emboss::support::LessThan</**/::std::int32_t, bool, ::std::int32_t, ::std::int32_t>((s().Ok() ? ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(s().UncheckedRead())) : ::emboss::support::Maybe</**/::std::int32_t>()), ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(2LL))), ::emboss::support::LessThan</**/::std::int32_t, bool, ::std::int32_t, ::std::int32_t>((a0().Ok() ? ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(a0().UncheckedRead())) : ::emboss::support::Maybe</**/::std::int32_t>()), ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(4LL)))); | |
| } | |
| template <class Storage> | |
| inline typename GenericComplexView<Storage>::EmbossReservedDollarVirtualIntrinsicSizeInBytesView | |
| GenericComplexView<Storage>::IntrinsicSizeInBytes() const { | |
| return | |
| typename GenericComplexView<Storage>::EmbossReservedDollarVirtualIntrinsicSizeInBytesView( | |
| *this); | |
| } | |
| template <class Storage> | |
| inline ::emboss::support::Maybe<bool> | |
| GenericComplexView<Storage>::has_IntrinsicSizeInBytes() const { | |
| return ::emboss::support::Maybe</**/bool>(true); | |
| } | |
| namespace Complex { | |
| inline constexpr ::std::int32_t MaxSizeInBytes() { | |
| return ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(1021LL)).ValueOrDefault(); | |
| } | |
| } // namespace Complex | |
| template <class Storage> | |
| inline constexpr ::std::int32_t | |
| GenericComplexView<Storage>::EmbossReservedDollarVirtualMaxSizeInBytesView::Read() { | |
| return Complex::MaxSizeInBytes(); | |
| } | |
| template <class Storage> | |
| inline constexpr ::std::int32_t | |
| GenericComplexView< | |
| Storage>::EmbossReservedDollarVirtualMaxSizeInBytesView::UncheckedRead() { | |
| return Complex::MaxSizeInBytes(); | |
| } | |
| namespace Complex { | |
| inline constexpr ::std::int32_t MinSizeInBytes() { | |
| return ::emboss::support::Maybe</**/::std::int32_t>(static_cast</**/::std::int32_t>(9LL)).ValueOrDefault(); | |
| } | |
| } // namespace Complex | |
| template <class Storage> | |
| inline constexpr ::std::int32_t | |
| GenericComplexView<Storage>::EmbossReservedDollarVirtualMinSizeInBytesView::Read() { | |
| return Complex::MinSizeInBytes(); | |
| } | |
| template <class Storage> | |
| inline constexpr ::std::int32_t | |
| GenericComplexView< | |
| Storage>::EmbossReservedDollarVirtualMinSizeInBytesView::UncheckedRead() { | |
| return Complex::MinSizeInBytes(); | |
| } | |
| } // namespace emboss_test | |
| /* NOLINTEND */ | |
| #endif // TESTDATA_COMPLEX_STRUCTURE_EMB_H_ | |