| // WARNING: This file is machine generated by fidlgen. |
| |
| #pragma once |
| |
| #include <fidl/test.nullable/cpp/common_types.h> |
| #include <fidl/test.nullable/cpp/markers.h> |
| #include <lib/fidl/cpp/natural_coding_traits.h> |
| #include <lib/fidl/cpp/natural_types.h> |
| |
| #include <cinttypes> |
| #include <string> |
| |
| #ifdef __Fuchsia__ |
| |
| #include <lib/zx/channel.h> |
| #include <lib/zx/vmo.h> |
| |
| #endif // __Fuchsia__ |
| |
| namespace test_nullable { |
| class StructWithNullableVector; |
| |
| class StructWithNullableUnion; |
| |
| class StructWithNullableStruct; |
| |
| class StructWithNullableString; |
| |
| class StructWithNullableRequest; |
| |
| class StructWithNullableProtocol; |
| |
| class StructWithNullableHandle; |
| |
| class SimpleProtocolAddTopResponse; |
| |
| class SimpleProtocolAddRequest; |
| |
| class Int32Wrapper; |
| |
| class SimpleUnion; |
| |
| extern "C" const fidl_type_t test_nullable_StructWithNullableVectorTable; |
| |
| class StructWithNullableVector { |
| private: |
| struct Storage_; |
| |
| public: |
| StructWithNullableVector(Storage_ storage) noexcept |
| : storage_(std::move(storage)) {} |
| StructWithNullableVector(::std::optional<::std::vector<int32_t>> val) noexcept |
| : storage_({.val = std::move(val)}) {} |
| |
| #pragma clang diagnostic push |
| #pragma clang diagnostic ignored "-Wdefaulted-function-deleted" |
| // Default constructs a |StructWithNullableVector| only if all of its members |
| // are default constructible. |
| StructWithNullableVector() = default; |
| #pragma clang diagnostic pop |
| |
| StructWithNullableVector(StructWithNullableVector&&) noexcept = default; |
| StructWithNullableVector& operator=(StructWithNullableVector&&) noexcept = |
| default; |
| StructWithNullableVector(const StructWithNullableVector& other) noexcept |
| : StructWithNullableVector(other.CloneStorage_()) {} |
| StructWithNullableVector& operator=( |
| const StructWithNullableVector& other) noexcept { |
| storage_ = other.CloneStorage_(); |
| return *this; |
| } |
| |
| bool operator==(const StructWithNullableVector& other) const noexcept { |
| return ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::StructWithNullableVector, 16>::Equal(this, &other); |
| } |
| bool operator!=(const StructWithNullableVector& other) const noexcept { |
| return !::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::StructWithNullableVector, 16>::Equal(this, &other); |
| } |
| |
| const ::std::optional<::std::vector<int32_t>>& val() const { |
| return storage_.val; |
| } |
| |
| ::std::optional<::std::vector<int32_t>>& val() { return storage_.val; } |
| |
| StructWithNullableVector( |
| ::fidl::internal::DefaultConstructPossiblyInvalidObjectTag) |
| : StructWithNullableVector(Storage_{ |
| .val = {}, |
| }) {} |
| |
| private: |
| struct Storage_ final { |
| ::std::optional<::std::vector<int32_t>> val; |
| }; |
| |
| Storage_ storage_; |
| Storage_ CloneStorage_() const; |
| |
| friend struct ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::StructWithNullableVector, 16>; |
| friend struct ::fidl::internal::MemberVisitor< |
| ::test_nullable::StructWithNullableVector>; |
| static constexpr auto kMembers = |
| std::make_tuple(::fidl::internal::NaturalStructMember< |
| Storage_, ::std::optional<::std::vector<int32_t>>, |
| fidl::internal::NaturalCodingConstraintVector< |
| fidl::internal::NaturalCodingConstraintEmpty>>{ |
| &Storage_::val, 0}); |
| static constexpr auto kPadding = std::make_tuple(); |
| }; |
| |
| extern "C" const fidl_type_t test_nullable_StructWithNullableUnionTable; |
| |
| class StructWithNullableUnion { |
| private: |
| struct Storage_; |
| |
| public: |
| StructWithNullableUnion(Storage_ storage) noexcept |
| : storage_(std::move(storage)) {} |
| StructWithNullableUnion( |
| ::std::unique_ptr<::test_nullable::SimpleUnion> val) noexcept |
| : storage_({.val = std::move(val)}) {} |
| |
| #pragma clang diagnostic push |
| #pragma clang diagnostic ignored "-Wdefaulted-function-deleted" |
| // Default constructs a |StructWithNullableUnion| only if all of its members |
| // are default constructible. |
| StructWithNullableUnion() = default; |
| #pragma clang diagnostic pop |
| |
| StructWithNullableUnion(StructWithNullableUnion&&) noexcept = default; |
| StructWithNullableUnion& operator=(StructWithNullableUnion&&) noexcept = |
| default; |
| StructWithNullableUnion(const StructWithNullableUnion& other) noexcept |
| : StructWithNullableUnion(other.CloneStorage_()) {} |
| StructWithNullableUnion& operator=( |
| const StructWithNullableUnion& other) noexcept { |
| storage_ = other.CloneStorage_(); |
| return *this; |
| } |
| |
| bool operator==(const StructWithNullableUnion& other) const noexcept { |
| return ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::StructWithNullableUnion, 16>::Equal(this, &other); |
| } |
| bool operator!=(const StructWithNullableUnion& other) const noexcept { |
| return !::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::StructWithNullableUnion, 16>::Equal(this, &other); |
| } |
| |
| const ::std::unique_ptr<::test_nullable::SimpleUnion>& val() const { |
| return storage_.val; |
| } |
| |
| ::std::unique_ptr<::test_nullable::SimpleUnion>& val() { |
| return storage_.val; |
| } |
| |
| StructWithNullableUnion( |
| ::fidl::internal::DefaultConstructPossiblyInvalidObjectTag) |
| : StructWithNullableUnion(Storage_{ |
| .val = {}, |
| }) {} |
| |
| private: |
| struct Storage_ final { |
| ::std::unique_ptr<::test_nullable::SimpleUnion> val; |
| }; |
| |
| Storage_ storage_; |
| Storage_ CloneStorage_() const; |
| |
| friend struct ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::StructWithNullableUnion, 16>; |
| friend struct ::fidl::internal::MemberVisitor< |
| ::test_nullable::StructWithNullableUnion>; |
| static constexpr auto kMembers = std::make_tuple( |
| ::fidl::internal::NaturalStructMember< |
| Storage_, ::std::unique_ptr<::test_nullable::SimpleUnion>, |
| fidl::internal::NaturalCodingConstraintEmpty>{&Storage_::val, 0}); |
| static constexpr auto kPadding = std::make_tuple(); |
| }; |
| |
| extern "C" const fidl_type_t test_nullable_StructWithNullableStructTable; |
| |
| class StructWithNullableStruct { |
| private: |
| struct Storage_; |
| |
| public: |
| StructWithNullableStruct(Storage_ storage) noexcept |
| : storage_(std::move(storage)) {} |
| StructWithNullableStruct( |
| ::std::unique_ptr<::test_nullable::Int32Wrapper> val) noexcept |
| : storage_({.val = std::move(val)}) {} |
| |
| #pragma clang diagnostic push |
| #pragma clang diagnostic ignored "-Wdefaulted-function-deleted" |
| // Default constructs a |StructWithNullableStruct| only if all of its members |
| // are default constructible. |
| StructWithNullableStruct() = default; |
| #pragma clang diagnostic pop |
| |
| StructWithNullableStruct(StructWithNullableStruct&&) noexcept = default; |
| StructWithNullableStruct& operator=(StructWithNullableStruct&&) noexcept = |
| default; |
| StructWithNullableStruct(const StructWithNullableStruct& other) noexcept |
| : StructWithNullableStruct(other.CloneStorage_()) {} |
| StructWithNullableStruct& operator=( |
| const StructWithNullableStruct& other) noexcept { |
| storage_ = other.CloneStorage_(); |
| return *this; |
| } |
| |
| bool operator==(const StructWithNullableStruct& other) const noexcept { |
| return ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::StructWithNullableStruct, 8>::Equal(this, &other); |
| } |
| bool operator!=(const StructWithNullableStruct& other) const noexcept { |
| return !::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::StructWithNullableStruct, 8>::Equal(this, &other); |
| } |
| |
| const ::std::unique_ptr<::test_nullable::Int32Wrapper>& val() const { |
| return storage_.val; |
| } |
| |
| ::std::unique_ptr<::test_nullable::Int32Wrapper>& val() { |
| return storage_.val; |
| } |
| |
| StructWithNullableStruct( |
| ::fidl::internal::DefaultConstructPossiblyInvalidObjectTag) |
| : StructWithNullableStruct(Storage_{ |
| .val = {}, |
| }) {} |
| |
| private: |
| struct Storage_ final { |
| ::std::unique_ptr<::test_nullable::Int32Wrapper> val; |
| }; |
| |
| Storage_ storage_; |
| Storage_ CloneStorage_() const; |
| |
| friend struct ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::StructWithNullableStruct, 8>; |
| friend struct ::fidl::internal::MemberVisitor< |
| ::test_nullable::StructWithNullableStruct>; |
| static constexpr auto kMembers = std::make_tuple( |
| ::fidl::internal::NaturalStructMember< |
| Storage_, ::std::unique_ptr<::test_nullable::Int32Wrapper>, |
| fidl::internal::NaturalCodingConstraintEmpty>{&Storage_::val, 0}); |
| static constexpr auto kPadding = std::make_tuple(); |
| }; |
| |
| extern "C" const fidl_type_t test_nullable_StructWithNullableStringTable; |
| |
| class StructWithNullableString { |
| private: |
| struct Storage_; |
| |
| public: |
| StructWithNullableString(Storage_ storage) noexcept |
| : storage_(std::move(storage)) {} |
| StructWithNullableString(::std::optional<::std::string> val) noexcept |
| : storage_({.val = std::move(val)}) {} |
| |
| #pragma clang diagnostic push |
| #pragma clang diagnostic ignored "-Wdefaulted-function-deleted" |
| // Default constructs a |StructWithNullableString| only if all of its members |
| // are default constructible. |
| StructWithNullableString() = default; |
| #pragma clang diagnostic pop |
| |
| StructWithNullableString(StructWithNullableString&&) noexcept = default; |
| StructWithNullableString& operator=(StructWithNullableString&&) noexcept = |
| default; |
| StructWithNullableString(const StructWithNullableString& other) noexcept |
| : StructWithNullableString(other.CloneStorage_()) {} |
| StructWithNullableString& operator=( |
| const StructWithNullableString& other) noexcept { |
| storage_ = other.CloneStorage_(); |
| return *this; |
| } |
| |
| bool operator==(const StructWithNullableString& other) const noexcept { |
| return ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::StructWithNullableString, 16>::Equal(this, &other); |
| } |
| bool operator!=(const StructWithNullableString& other) const noexcept { |
| return !::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::StructWithNullableString, 16>::Equal(this, &other); |
| } |
| |
| const ::std::optional<::std::string>& val() const { return storage_.val; } |
| |
| ::std::optional<::std::string>& val() { return storage_.val; } |
| |
| StructWithNullableString( |
| ::fidl::internal::DefaultConstructPossiblyInvalidObjectTag) |
| : StructWithNullableString(Storage_{ |
| .val = {}, |
| }) {} |
| |
| private: |
| struct Storage_ final { |
| ::std::optional<::std::string> val; |
| }; |
| |
| Storage_ storage_; |
| Storage_ CloneStorage_() const; |
| |
| friend struct ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::StructWithNullableString, 16>; |
| friend struct ::fidl::internal::MemberVisitor< |
| ::test_nullable::StructWithNullableString>; |
| static constexpr auto kMembers = std::make_tuple( |
| ::fidl::internal::NaturalStructMember< |
| Storage_, ::std::optional<::std::string>, |
| fidl::internal::NaturalCodingConstraintString<>>{&Storage_::val, 0}); |
| static constexpr auto kPadding = std::make_tuple(); |
| }; |
| |
| #ifdef __Fuchsia__ |
| |
| extern "C" const fidl_type_t test_nullable_StructWithNullableRequestTable; |
| |
| class StructWithNullableRequest { |
| private: |
| struct Storage_; |
| |
| public: |
| StructWithNullableRequest(Storage_ storage) noexcept |
| : storage_(std::move(storage)) {} |
| StructWithNullableRequest( |
| ::fidl::ServerEnd<::test_nullable::SimpleProtocol> val) noexcept |
| : storage_({.val = std::move(val)}) {} |
| |
| #pragma clang diagnostic push |
| #pragma clang diagnostic ignored "-Wdefaulted-function-deleted" |
| // Default constructs a |StructWithNullableRequest| only if all of its members |
| // are default constructible. |
| StructWithNullableRequest() = default; |
| #pragma clang diagnostic pop |
| |
| StructWithNullableRequest(StructWithNullableRequest&&) noexcept = default; |
| StructWithNullableRequest& operator=(StructWithNullableRequest&&) noexcept = |
| default; |
| |
| const ::fidl::ServerEnd<::test_nullable::SimpleProtocol>& val() const { |
| return storage_.val; |
| } |
| |
| ::fidl::ServerEnd<::test_nullable::SimpleProtocol>& val() { |
| return storage_.val; |
| } |
| |
| StructWithNullableRequest( |
| ::fidl::internal::DefaultConstructPossiblyInvalidObjectTag) |
| : StructWithNullableRequest(Storage_{ |
| .val = {}, |
| }) {} |
| |
| private: |
| struct Storage_ final { |
| ::fidl::ServerEnd<::test_nullable::SimpleProtocol> val; |
| }; |
| |
| Storage_ storage_; |
| |
| friend struct ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::StructWithNullableRequest, 4>; |
| friend struct ::fidl::internal::MemberVisitor< |
| ::test_nullable::StructWithNullableRequest>; |
| static constexpr auto kMembers = std::make_tuple( |
| ::fidl::internal::NaturalStructMember< |
| Storage_, ::fidl::ServerEnd<::test_nullable::SimpleProtocol>, |
| fidl::internal::NaturalCodingConstraintHandle< |
| ZX_OBJ_TYPE_CHANNEL, ZX_DEFAULT_CHANNEL_RIGHTS, true>>{ |
| &Storage_::val, 0}); |
| static constexpr auto kPadding = std::make_tuple(); |
| }; |
| |
| #endif // __Fuchsia__ |
| |
| #ifdef __Fuchsia__ |
| |
| extern "C" const fidl_type_t test_nullable_StructWithNullableProtocolTable; |
| |
| class StructWithNullableProtocol { |
| private: |
| struct Storage_; |
| |
| public: |
| StructWithNullableProtocol(Storage_ storage) noexcept |
| : storage_(std::move(storage)) {} |
| StructWithNullableProtocol( |
| ::fidl::ClientEnd<::test_nullable::SimpleProtocol> val) noexcept |
| : storage_({.val = std::move(val)}) {} |
| |
| #pragma clang diagnostic push |
| #pragma clang diagnostic ignored "-Wdefaulted-function-deleted" |
| // Default constructs a |StructWithNullableProtocol| only if all of its |
| // members are default constructible. |
| StructWithNullableProtocol() = default; |
| #pragma clang diagnostic pop |
| |
| StructWithNullableProtocol(StructWithNullableProtocol&&) noexcept = default; |
| StructWithNullableProtocol& operator=(StructWithNullableProtocol&&) noexcept = |
| default; |
| |
| const ::fidl::ClientEnd<::test_nullable::SimpleProtocol>& val() const { |
| return storage_.val; |
| } |
| |
| ::fidl::ClientEnd<::test_nullable::SimpleProtocol>& val() { |
| return storage_.val; |
| } |
| |
| StructWithNullableProtocol( |
| ::fidl::internal::DefaultConstructPossiblyInvalidObjectTag) |
| : StructWithNullableProtocol(Storage_{ |
| .val = {}, |
| }) {} |
| |
| private: |
| struct Storage_ final { |
| ::fidl::ClientEnd<::test_nullable::SimpleProtocol> val; |
| }; |
| |
| Storage_ storage_; |
| |
| friend struct ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::StructWithNullableProtocol, 4>; |
| friend struct ::fidl::internal::MemberVisitor< |
| ::test_nullable::StructWithNullableProtocol>; |
| static constexpr auto kMembers = std::make_tuple( |
| ::fidl::internal::NaturalStructMember< |
| Storage_, ::fidl::ClientEnd<::test_nullable::SimpleProtocol>, |
| fidl::internal::NaturalCodingConstraintHandle< |
| ZX_OBJ_TYPE_CHANNEL, ZX_DEFAULT_CHANNEL_RIGHTS, true>>{ |
| &Storage_::val, 0}); |
| static constexpr auto kPadding = std::make_tuple(); |
| }; |
| |
| #endif // __Fuchsia__ |
| |
| #ifdef __Fuchsia__ |
| |
| extern "C" const fidl_type_t test_nullable_StructWithNullableHandleTable; |
| |
| class StructWithNullableHandle { |
| private: |
| struct Storage_; |
| |
| public: |
| StructWithNullableHandle(Storage_ storage) noexcept |
| : storage_(std::move(storage)) {} |
| StructWithNullableHandle(::zx::vmo val) noexcept |
| : storage_({.val = std::move(val)}) {} |
| |
| #pragma clang diagnostic push |
| #pragma clang diagnostic ignored "-Wdefaulted-function-deleted" |
| // Default constructs a |StructWithNullableHandle| only if all of its members |
| // are default constructible. |
| StructWithNullableHandle() = default; |
| #pragma clang diagnostic pop |
| |
| StructWithNullableHandle(StructWithNullableHandle&&) noexcept = default; |
| StructWithNullableHandle& operator=(StructWithNullableHandle&&) noexcept = |
| default; |
| |
| const ::zx::vmo& val() const { return storage_.val; } |
| |
| ::zx::vmo& val() { return storage_.val; } |
| |
| StructWithNullableHandle( |
| ::fidl::internal::DefaultConstructPossiblyInvalidObjectTag) |
| : StructWithNullableHandle(Storage_{ |
| .val = {}, |
| }) {} |
| |
| private: |
| struct Storage_ final { |
| ::zx::vmo val; |
| }; |
| |
| Storage_ storage_; |
| |
| friend struct ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::StructWithNullableHandle, 4>; |
| friend struct ::fidl::internal::MemberVisitor< |
| ::test_nullable::StructWithNullableHandle>; |
| static constexpr auto kMembers = std::make_tuple( |
| ::fidl::internal::NaturalStructMember< |
| Storage_, ::zx::vmo, |
| fidl::internal::NaturalCodingConstraintHandle<ZX_OBJ_TYPE_VMO, |
| 0x80000000, true>>{ |
| &Storage_::val, 0}); |
| static constexpr auto kPadding = std::make_tuple(); |
| }; |
| |
| #endif // __Fuchsia__ |
| |
| extern "C" const fidl_type_t test_nullable_SimpleUnionTable; |
| |
| class SimpleUnion { |
| private: |
| using Storage_ = std::variant<std::monostate, int32_t, float>; |
| |
| public: |
| // TODO: share union tag types between wire & natural. |
| enum class Tag : fidl_union_tag_t { |
| kA = 1, // 0x1 |
| kB = 2, // 0x2 |
| }; |
| |
| SimpleUnion(SimpleUnion&& other) noexcept |
| : SimpleUnion( |
| ::fidl::internal::DefaultConstructPossiblyInvalidObjectTag{}) { |
| *storage_ = std::move(*other.storage_); |
| } |
| SimpleUnion& operator=(SimpleUnion&& other) noexcept { |
| if (this != &other) { |
| *storage_ = std::move(*other.storage_); |
| } |
| return *this; |
| } |
| SimpleUnion(const SimpleUnion& other) noexcept |
| : SimpleUnion(other.CloneStorage_()) {} |
| SimpleUnion& operator=(const SimpleUnion& other) noexcept { |
| if (this != &other) { |
| storage_ = other.CloneStorage_(); |
| } |
| return *this; |
| } |
| |
| bool operator==(const SimpleUnion& other) const noexcept { |
| return *storage_ == *other.storage_; |
| } |
| bool operator!=(const SimpleUnion& other) const noexcept { |
| return *storage_ != *other.storage_; |
| } |
| |
| constexpr ::test_nullable::SimpleUnion::Tag Which() const { |
| return SimpleUnion::IndexToTag(storage_->index()).value(); |
| } |
| static SimpleUnion WithA(int32_t val) { |
| return SimpleUnion( |
| std::make_shared<Storage_>(std::in_place_index_t<1>{}, std::move(val))); |
| } |
| |
| const ::fidl::internal::UnionMemberView<1, Storage_> a() const { |
| return ::fidl::internal::UnionMemberView<1, Storage_>(storage_); |
| } |
| ::fidl::internal::UnionMemberView<1, Storage_> a() { |
| return ::fidl::internal::UnionMemberView<1, Storage_>(storage_); |
| } |
| static SimpleUnion WithB(float val) { |
| return SimpleUnion( |
| std::make_shared<Storage_>(std::in_place_index_t<2>{}, std::move(val))); |
| } |
| |
| const ::fidl::internal::UnionMemberView<2, Storage_> b() const { |
| return ::fidl::internal::UnionMemberView<2, Storage_>(storage_); |
| } |
| ::fidl::internal::UnionMemberView<2, Storage_> b() { |
| return ::fidl::internal::UnionMemberView<2, Storage_>(storage_); |
| } |
| |
| SimpleUnion(::fidl::internal::DefaultConstructPossiblyInvalidObjectTag) |
| : storage_(std::make_shared<Storage_>()) {} |
| |
| private: |
| std::shared_ptr<Storage_> storage_; |
| std::shared_ptr<Storage_> CloneStorage_() const; |
| friend struct ::fidl::internal::NaturalUnionCodingTraits< |
| ::test_nullable::SimpleUnion>; |
| static constexpr auto kMembers = |
| std::make_tuple(::fidl::internal::NaturalUnionMember< |
| ::fidl::internal::NaturalCodingConstraintEmpty>(), |
| ::fidl::internal::NaturalUnionMember< |
| fidl::internal::NaturalCodingConstraintEmpty>(), |
| ::fidl::internal::NaturalUnionMember< |
| fidl::internal::NaturalCodingConstraintEmpty>()); |
| |
| explicit SimpleUnion(std::shared_ptr<Storage_> storage) |
| : storage_(std::move(storage)) {} |
| |
| static constexpr size_t TagToIndex(::fidl::internal::NaturalDecoder* decoder, |
| ::test_nullable::SimpleUnion::Tag tag) { |
| switch (tag) { |
| case ::test_nullable::SimpleUnion::Tag::kA: |
| return 1; |
| case ::test_nullable::SimpleUnion::Tag::kB: |
| return 2; |
| default: { |
| decoder->SetError(::fidl::internal::kCodingErrorUnknownUnionTag); |
| return 0; |
| } |
| } |
| } |
| |
| static constexpr std::optional<::test_nullable::SimpleUnion::Tag> IndexToTag( |
| size_t index) { |
| switch (index) { |
| case 1: |
| return ::test_nullable::SimpleUnion::Tag::kA; |
| case 2: |
| return ::test_nullable::SimpleUnion::Tag::kB; |
| default: |
| return std::nullopt; |
| } |
| } |
| }; |
| |
| extern "C" const fidl_type_t test_nullable_SimpleProtocolAddTopResponseTable; |
| |
| class SimpleProtocolAddTopResponse { |
| private: |
| struct Storage_; |
| |
| public: |
| SimpleProtocolAddTopResponse(Storage_ storage) noexcept |
| : storage_(std::move(storage)) {} |
| SimpleProtocolAddTopResponse(int32_t sum) noexcept |
| : storage_({.sum = std::move(sum)}) {} |
| |
| #pragma clang diagnostic push |
| #pragma clang diagnostic ignored "-Wdefaulted-function-deleted" |
| // Default constructs a |SimpleProtocolAddTopResponse| only if all of its |
| // members are default constructible. |
| SimpleProtocolAddTopResponse() = default; |
| #pragma clang diagnostic pop |
| |
| SimpleProtocolAddTopResponse(SimpleProtocolAddTopResponse&&) noexcept = |
| default; |
| SimpleProtocolAddTopResponse& operator=( |
| SimpleProtocolAddTopResponse&&) noexcept = default; |
| SimpleProtocolAddTopResponse( |
| const SimpleProtocolAddTopResponse& other) noexcept |
| : SimpleProtocolAddTopResponse(other.CloneStorage_()) {} |
| SimpleProtocolAddTopResponse& operator=( |
| const SimpleProtocolAddTopResponse& other) noexcept { |
| storage_ = other.CloneStorage_(); |
| return *this; |
| } |
| |
| bool operator==(const SimpleProtocolAddTopResponse& other) const noexcept { |
| return ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::SimpleProtocolAddTopResponse, 4>::Equal(this, &other); |
| } |
| bool operator!=(const SimpleProtocolAddTopResponse& other) const noexcept { |
| return !::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::SimpleProtocolAddTopResponse, 4>::Equal(this, &other); |
| } |
| |
| int32_t sum() const { return storage_.sum; } |
| |
| int32_t& sum() { return storage_.sum; } |
| |
| SimpleProtocolAddTopResponse( |
| ::fidl::internal::DefaultConstructPossiblyInvalidObjectTag) |
| : SimpleProtocolAddTopResponse(Storage_{ |
| .sum = {}, |
| }) {} |
| |
| private: |
| struct Storage_ final { |
| int32_t sum = {}; |
| }; |
| |
| Storage_ storage_; |
| Storage_ CloneStorage_() const; |
| |
| friend struct ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::SimpleProtocolAddTopResponse, 4>; |
| friend struct ::fidl::internal::MemberVisitor< |
| ::test_nullable::SimpleProtocolAddTopResponse>; |
| static constexpr auto kMembers = std::make_tuple( |
| ::fidl::internal::NaturalStructMember< |
| Storage_, int32_t, fidl::internal::NaturalCodingConstraintEmpty>{ |
| &Storage_::sum, 0}); |
| static constexpr auto kPadding = std::make_tuple(); |
| }; |
| |
| extern "C" const fidl_type_t test_nullable_SimpleProtocolAddRequestTable; |
| |
| class SimpleProtocolAddRequest { |
| private: |
| struct Storage_; |
| |
| public: |
| SimpleProtocolAddRequest(Storage_ storage) noexcept |
| : storage_(std::move(storage)) {} |
| SimpleProtocolAddRequest(int32_t a, int32_t b) noexcept |
| : storage_({.a = std::move(a), .b = std::move(b)}) {} |
| |
| #pragma clang diagnostic push |
| #pragma clang diagnostic ignored "-Wdefaulted-function-deleted" |
| // Default constructs a |SimpleProtocolAddRequest| only if all of its members |
| // are default constructible. |
| SimpleProtocolAddRequest() = default; |
| #pragma clang diagnostic pop |
| |
| SimpleProtocolAddRequest(SimpleProtocolAddRequest&&) noexcept = default; |
| SimpleProtocolAddRequest& operator=(SimpleProtocolAddRequest&&) noexcept = |
| default; |
| SimpleProtocolAddRequest(const SimpleProtocolAddRequest& other) noexcept |
| : SimpleProtocolAddRequest(other.CloneStorage_()) {} |
| SimpleProtocolAddRequest& operator=( |
| const SimpleProtocolAddRequest& other) noexcept { |
| storage_ = other.CloneStorage_(); |
| return *this; |
| } |
| |
| bool operator==(const SimpleProtocolAddRequest& other) const noexcept { |
| return ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::SimpleProtocolAddRequest, 8>::Equal(this, &other); |
| } |
| bool operator!=(const SimpleProtocolAddRequest& other) const noexcept { |
| return !::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::SimpleProtocolAddRequest, 8>::Equal(this, &other); |
| } |
| |
| int32_t a() const { return storage_.a; } |
| |
| int32_t& a() { return storage_.a; } |
| |
| int32_t b() const { return storage_.b; } |
| |
| int32_t& b() { return storage_.b; } |
| |
| SimpleProtocolAddRequest( |
| ::fidl::internal::DefaultConstructPossiblyInvalidObjectTag) |
| : SimpleProtocolAddRequest(Storage_{ |
| .a = {}, |
| .b = {}, |
| }) {} |
| |
| private: |
| struct Storage_ final { |
| int32_t a = {}; |
| int32_t b = {}; |
| }; |
| |
| Storage_ storage_; |
| Storage_ CloneStorage_() const; |
| |
| friend struct ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::SimpleProtocolAddRequest, 8>; |
| friend struct ::fidl::internal::MemberVisitor< |
| ::test_nullable::SimpleProtocolAddRequest>; |
| static constexpr auto kMembers = std::make_tuple( |
| ::fidl::internal::NaturalStructMember< |
| Storage_, int32_t, fidl::internal::NaturalCodingConstraintEmpty>{ |
| &Storage_::a, 0}, |
| ::fidl::internal::NaturalStructMember< |
| Storage_, int32_t, fidl::internal::NaturalCodingConstraintEmpty>{ |
| &Storage_::b, 4}); |
| static constexpr auto kPadding = std::make_tuple(); |
| }; |
| |
| extern "C" const fidl_type_t test_nullable_Int32WrapperTable; |
| |
| class Int32Wrapper { |
| private: |
| struct Storage_; |
| |
| public: |
| Int32Wrapper(Storage_ storage) noexcept : storage_(std::move(storage)) {} |
| Int32Wrapper(int32_t val) noexcept : storage_({.val = std::move(val)}) {} |
| |
| #pragma clang diagnostic push |
| #pragma clang diagnostic ignored "-Wdefaulted-function-deleted" |
| // Default constructs a |Int32Wrapper| only if all of its members are default |
| // constructible. |
| Int32Wrapper() = default; |
| #pragma clang diagnostic pop |
| |
| Int32Wrapper(Int32Wrapper&&) noexcept = default; |
| Int32Wrapper& operator=(Int32Wrapper&&) noexcept = default; |
| Int32Wrapper(const Int32Wrapper& other) noexcept |
| : Int32Wrapper(other.CloneStorage_()) {} |
| Int32Wrapper& operator=(const Int32Wrapper& other) noexcept { |
| storage_ = other.CloneStorage_(); |
| return *this; |
| } |
| |
| bool operator==(const Int32Wrapper& other) const noexcept { |
| return ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::Int32Wrapper, 4>::Equal(this, &other); |
| } |
| bool operator!=(const Int32Wrapper& other) const noexcept { |
| return !::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::Int32Wrapper, 4>::Equal(this, &other); |
| } |
| |
| int32_t val() const { return storage_.val; } |
| |
| int32_t& val() { return storage_.val; } |
| |
| Int32Wrapper(::fidl::internal::DefaultConstructPossiblyInvalidObjectTag) |
| : Int32Wrapper(Storage_{ |
| .val = {}, |
| }) {} |
| |
| private: |
| struct Storage_ final { |
| int32_t val = {}; |
| }; |
| |
| Storage_ storage_; |
| Storage_ CloneStorage_() const; |
| |
| friend struct ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::Int32Wrapper, 4>; |
| friend struct ::fidl::internal::MemberVisitor<::test_nullable::Int32Wrapper>; |
| static constexpr auto kMembers = std::make_tuple( |
| ::fidl::internal::NaturalStructMember< |
| Storage_, int32_t, fidl::internal::NaturalCodingConstraintEmpty>{ |
| &Storage_::val, 0}); |
| static constexpr auto kPadding = std::make_tuple(); |
| }; |
| |
| } // namespace test_nullable |
| namespace fidl { |
| |
| extern "C" const fidl_type_t test_nullable_StructWithNullableVectorTable; |
| |
| template <> |
| struct IsFidlType<::test_nullable::StructWithNullableVector> |
| : public std::true_type {}; |
| |
| template <> |
| struct ::fidl::internal::TypeTraits<::test_nullable::StructWithNullableVector> |
| final { |
| public: |
| static constexpr const fidl_type_t* kCodingTable = |
| &test_nullable_StructWithNullableVectorTable; |
| }; |
| |
| template <> |
| struct internal::NaturalCodingTraits< |
| ::test_nullable::StructWithNullableVector, |
| ::fidl::internal::NaturalCodingConstraintEmpty> |
| final : public ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::StructWithNullableVector, 16> {}; |
| |
| extern "C" const fidl_type_t test_nullable_StructWithNullableUnionTable; |
| |
| template <> |
| struct IsFidlType<::test_nullable::StructWithNullableUnion> |
| : public std::true_type {}; |
| |
| template <> |
| struct ::fidl::internal::TypeTraits<::test_nullable::StructWithNullableUnion> |
| final { |
| public: |
| static constexpr const fidl_type_t* kCodingTable = |
| &test_nullable_StructWithNullableUnionTable; |
| }; |
| |
| template <> |
| struct internal::NaturalCodingTraits< |
| ::test_nullable::StructWithNullableUnion, |
| ::fidl::internal::NaturalCodingConstraintEmpty> |
| final : public ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::StructWithNullableUnion, 16> {}; |
| |
| extern "C" const fidl_type_t test_nullable_StructWithNullableStructTable; |
| |
| template <> |
| struct IsFidlType<::test_nullable::StructWithNullableStruct> |
| : public std::true_type {}; |
| |
| template <> |
| struct ::fidl::internal::TypeTraits<::test_nullable::StructWithNullableStruct> |
| final { |
| public: |
| static constexpr const fidl_type_t* kCodingTable = |
| &test_nullable_StructWithNullableStructTable; |
| }; |
| |
| template <> |
| struct internal::NaturalCodingTraits< |
| ::test_nullable::StructWithNullableStruct, |
| ::fidl::internal::NaturalCodingConstraintEmpty> |
| final : public ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::StructWithNullableStruct, 8> {}; |
| |
| extern "C" const fidl_type_t test_nullable_StructWithNullableStringTable; |
| |
| template <> |
| struct IsFidlType<::test_nullable::StructWithNullableString> |
| : public std::true_type {}; |
| |
| template <> |
| struct ::fidl::internal::TypeTraits<::test_nullable::StructWithNullableString> |
| final { |
| public: |
| static constexpr const fidl_type_t* kCodingTable = |
| &test_nullable_StructWithNullableStringTable; |
| }; |
| |
| template <> |
| struct internal::NaturalCodingTraits< |
| ::test_nullable::StructWithNullableString, |
| ::fidl::internal::NaturalCodingConstraintEmpty> |
| final : public ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::StructWithNullableString, 16> {}; |
| |
| #ifdef __Fuchsia__ |
| |
| extern "C" const fidl_type_t test_nullable_StructWithNullableRequestTable; |
| |
| template <> |
| struct IsResource<::test_nullable::StructWithNullableRequest> |
| : public std::true_type {}; |
| template <> |
| struct IsFidlType<::test_nullable::StructWithNullableRequest> |
| : public std::true_type {}; |
| |
| template <> |
| struct ::fidl::internal::TypeTraits<::test_nullable::StructWithNullableRequest> |
| final { |
| public: |
| static constexpr const fidl_type_t* kCodingTable = |
| &test_nullable_StructWithNullableRequestTable; |
| }; |
| |
| template <> |
| struct internal::NaturalCodingTraits< |
| ::test_nullable::StructWithNullableRequest, |
| ::fidl::internal::NaturalCodingConstraintEmpty> |
| final : public ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::StructWithNullableRequest, 4> {}; |
| |
| #endif // __Fuchsia__ |
| |
| #ifdef __Fuchsia__ |
| |
| extern "C" const fidl_type_t test_nullable_StructWithNullableProtocolTable; |
| |
| template <> |
| struct IsResource<::test_nullable::StructWithNullableProtocol> |
| : public std::true_type {}; |
| template <> |
| struct IsFidlType<::test_nullable::StructWithNullableProtocol> |
| : public std::true_type {}; |
| |
| template <> |
| struct ::fidl::internal::TypeTraits<::test_nullable::StructWithNullableProtocol> |
| final { |
| public: |
| static constexpr const fidl_type_t* kCodingTable = |
| &test_nullable_StructWithNullableProtocolTable; |
| }; |
| |
| template <> |
| struct internal::NaturalCodingTraits< |
| ::test_nullable::StructWithNullableProtocol, |
| ::fidl::internal::NaturalCodingConstraintEmpty> |
| final : public ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::StructWithNullableProtocol, 4> {}; |
| |
| #endif // __Fuchsia__ |
| |
| #ifdef __Fuchsia__ |
| |
| extern "C" const fidl_type_t test_nullable_StructWithNullableHandleTable; |
| |
| template <> |
| struct IsResource<::test_nullable::StructWithNullableHandle> |
| : public std::true_type {}; |
| template <> |
| struct IsFidlType<::test_nullable::StructWithNullableHandle> |
| : public std::true_type {}; |
| |
| template <> |
| struct ::fidl::internal::TypeTraits<::test_nullable::StructWithNullableHandle> |
| final { |
| public: |
| static constexpr const fidl_type_t* kCodingTable = |
| &test_nullable_StructWithNullableHandleTable; |
| }; |
| |
| template <> |
| struct internal::NaturalCodingTraits< |
| ::test_nullable::StructWithNullableHandle, |
| ::fidl::internal::NaturalCodingConstraintEmpty> |
| final : public ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::StructWithNullableHandle, 4> {}; |
| |
| #endif // __Fuchsia__ |
| |
| extern "C" const fidl_type_t test_nullable_SimpleProtocolAddTopResponseTable; |
| |
| template <> |
| struct IsFidlType<::test_nullable::SimpleProtocolAddTopResponse> |
| : public std::true_type {}; |
| |
| template <> |
| struct ::fidl::internal::TypeTraits< |
| ::test_nullable::SimpleProtocolAddTopResponse> |
| final { |
| public: |
| static constexpr const fidl_type_t* kCodingTable = |
| &test_nullable_SimpleProtocolAddTopResponseTable; |
| }; |
| |
| template <> |
| struct internal::NaturalCodingTraits< |
| ::test_nullable::SimpleProtocolAddTopResponse, |
| ::fidl::internal::NaturalCodingConstraintEmpty> |
| final : public ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::SimpleProtocolAddTopResponse, 4> {}; |
| |
| extern "C" const fidl_type_t test_nullable_SimpleProtocolAddRequestTable; |
| |
| template <> |
| struct IsFidlType<::test_nullable::SimpleProtocolAddRequest> |
| : public std::true_type {}; |
| |
| template <> |
| struct ::fidl::internal::TypeTraits<::test_nullable::SimpleProtocolAddRequest> |
| final { |
| public: |
| static constexpr const fidl_type_t* kCodingTable = |
| &test_nullable_SimpleProtocolAddRequestTable; |
| }; |
| |
| template <> |
| struct internal::NaturalCodingTraits< |
| ::test_nullable::SimpleProtocolAddRequest, |
| ::fidl::internal::NaturalCodingConstraintEmpty> |
| final : public ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::SimpleProtocolAddRequest, 8> {}; |
| |
| extern "C" const fidl_type_t test_nullable_Int32WrapperTable; |
| |
| template <> |
| struct IsFidlType<::test_nullable::Int32Wrapper> : public std::true_type {}; |
| |
| template <> |
| struct ::fidl::internal::TypeTraits<::test_nullable::Int32Wrapper> final { |
| public: |
| static constexpr const fidl_type_t* kCodingTable = |
| &test_nullable_Int32WrapperTable; |
| }; |
| |
| template <> |
| struct internal::NaturalCodingTraits< |
| ::test_nullable::Int32Wrapper, |
| ::fidl::internal::NaturalCodingConstraintEmpty> |
| final : public ::fidl::internal::NaturalStructCodingTraits< |
| ::test_nullable::Int32Wrapper, 4> {}; |
| |
| extern "C" const fidl_type_t test_nullable_SimpleUnionTable; |
| |
| template <> |
| struct IsFidlType<::test_nullable::SimpleUnion> : public std::true_type {}; |
| template <> |
| struct IsUnion<::test_nullable::SimpleUnion> : public std::true_type {}; |
| |
| template <> |
| struct ::fidl::internal::TypeTraits<::test_nullable::SimpleUnion> final { |
| public: |
| static constexpr const fidl_type_t* kCodingTable = |
| &test_nullable_SimpleUnionTable; |
| }; |
| |
| template <> |
| struct internal::NaturalCodingTraits< |
| ::test_nullable::SimpleUnion, |
| ::fidl::internal::NaturalCodingConstraintEmpty> |
| final : public ::fidl::internal::NaturalUnionCodingTraits< |
| ::test_nullable::SimpleUnion> {}; |
| |
| } // namespace fidl |