| // WARNING: This file is machine generated by fidlgen. |
| |
| // fidl_experiment = output_index_json |
| |
| #pragma once |
| |
| #include <fidl/test.inheritancewithrecursivedecl/cpp/common_types.h> |
| #include <fidl/test.inheritancewithrecursivedecl/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> |
| |
| #endif // __Fuchsia__ |
| |
| #pragma clang diagnostic push |
| #pragma clang diagnostic ignored "-Wshadow" |
| |
| namespace test_inheritancewithrecursivedecl { |
| |
| class ParentFirstRequest; |
| |
| class ChildSecondRequest; |
| |
| #ifdef __Fuchsia__ |
| |
| class ParentFirstRequest { |
| private: |
| struct Storage_; |
| |
| public: |
| ParentFirstRequest(Storage_ storage) noexcept; |
| ParentFirstRequest(::fidl::ServerEnd<::test_inheritancewithrecursivedecl::Parent> request) noexcept; |
| |
| #pragma clang diagnostic push |
| #pragma clang diagnostic ignored "-Wdefaulted-function-deleted" |
| // Default constructs a |ParentFirstRequest| only if all of its members are default constructible. |
| ParentFirstRequest() = default; |
| #pragma clang diagnostic pop |
| |
| ParentFirstRequest(ParentFirstRequest&&) noexcept = default; |
| ParentFirstRequest& operator=(ParentFirstRequest&&) noexcept = default; |
| |
| const ::fidl::ServerEnd<::test_inheritancewithrecursivedecl::Parent>& |
| request() const { |
| return storage_.request; |
| } |
| |
| ::fidl::ServerEnd<::test_inheritancewithrecursivedecl::Parent>& request() { |
| return storage_.request; |
| } |
| |
| // Setter for request. |
| // |
| |
| ParentFirstRequest& request(::fidl::ServerEnd<::test_inheritancewithrecursivedecl::Parent> value); |
| |
| ParentFirstRequest(::fidl::internal::DefaultConstructPossiblyInvalidObjectTag); |
| |
| private: |
| struct Storage_ final { |
| ::fidl::ServerEnd<::test_inheritancewithrecursivedecl::Parent> request; |
| }; |
| |
| Storage_ storage_; |
| |
| friend struct ::fidl::internal::NaturalStructCodingTraits<::test_inheritancewithrecursivedecl::ParentFirstRequest, 4>; |
| friend struct ::fidl::internal::MemberVisitor<::test_inheritancewithrecursivedecl::ParentFirstRequest>; |
| static constexpr auto kMembers = std::make_tuple(::fidl::internal::NaturalStructMember<Storage_, ::fidl::ServerEnd<::test_inheritancewithrecursivedecl::Parent>, fidl::internal::NaturalCodingConstraintHandle<ZX_OBJ_TYPE_CHANNEL, ZX_DEFAULT_CHANNEL_RIGHTS, false>>{ |
| &Storage_::request, 0}); |
| static constexpr auto kPadding = std::make_tuple(); |
| }; |
| |
| #endif // __Fuchsia__ |
| |
| #ifdef __Fuchsia__ |
| |
| class ChildSecondRequest { |
| private: |
| struct Storage_; |
| |
| public: |
| ChildSecondRequest(Storage_ storage) noexcept; |
| ChildSecondRequest(::fidl::ServerEnd<::test_inheritancewithrecursivedecl::Parent> request) noexcept; |
| |
| #pragma clang diagnostic push |
| #pragma clang diagnostic ignored "-Wdefaulted-function-deleted" |
| // Default constructs a |ChildSecondRequest| only if all of its members are default constructible. |
| ChildSecondRequest() = default; |
| #pragma clang diagnostic pop |
| |
| ChildSecondRequest(ChildSecondRequest&&) noexcept = default; |
| ChildSecondRequest& operator=(ChildSecondRequest&&) noexcept = default; |
| |
| const ::fidl::ServerEnd<::test_inheritancewithrecursivedecl::Parent>& |
| request() const { |
| return storage_.request; |
| } |
| |
| ::fidl::ServerEnd<::test_inheritancewithrecursivedecl::Parent>& request() { |
| return storage_.request; |
| } |
| |
| // Setter for request. |
| // |
| |
| ChildSecondRequest& request(::fidl::ServerEnd<::test_inheritancewithrecursivedecl::Parent> value); |
| |
| ChildSecondRequest(::fidl::internal::DefaultConstructPossiblyInvalidObjectTag); |
| |
| private: |
| struct Storage_ final { |
| ::fidl::ServerEnd<::test_inheritancewithrecursivedecl::Parent> request; |
| }; |
| |
| Storage_ storage_; |
| |
| friend struct ::fidl::internal::NaturalStructCodingTraits<::test_inheritancewithrecursivedecl::ChildSecondRequest, 4>; |
| friend struct ::fidl::internal::MemberVisitor<::test_inheritancewithrecursivedecl::ChildSecondRequest>; |
| static constexpr auto kMembers = std::make_tuple(::fidl::internal::NaturalStructMember<Storage_, ::fidl::ServerEnd<::test_inheritancewithrecursivedecl::Parent>, fidl::internal::NaturalCodingConstraintHandle<ZX_OBJ_TYPE_CHANNEL, ZX_DEFAULT_CHANNEL_RIGHTS, false>>{ |
| &Storage_::request, 0}); |
| static constexpr auto kPadding = std::make_tuple(); |
| }; |
| |
| #endif // __Fuchsia__ |
| |
| #ifdef __Fuchsia__ |
| |
| inline ParentFirstRequest::ParentFirstRequest(Storage_ storage) noexcept : storage_(std::move(storage)) {} |
| inline ParentFirstRequest::ParentFirstRequest(::fidl::ServerEnd<::test_inheritancewithrecursivedecl::Parent> request) noexcept |
| : storage_({.request = std::move(request)}) {} |
| |
| inline ParentFirstRequest::ParentFirstRequest(::fidl::internal::DefaultConstructPossiblyInvalidObjectTag) : ParentFirstRequest(Storage_{ |
| .request = {}, |
| }) {} |
| inline ParentFirstRequest& ParentFirstRequest::request(::fidl::ServerEnd<::test_inheritancewithrecursivedecl::Parent> value) { |
| storage_.request = std::move(value); |
| return *this; |
| } |
| |
| #endif // __Fuchsia__ |
| |
| #ifdef __Fuchsia__ |
| |
| inline ChildSecondRequest::ChildSecondRequest(Storage_ storage) noexcept : storage_(std::move(storage)) {} |
| inline ChildSecondRequest::ChildSecondRequest(::fidl::ServerEnd<::test_inheritancewithrecursivedecl::Parent> request) noexcept |
| : storage_({.request = std::move(request)}) {} |
| |
| inline ChildSecondRequest::ChildSecondRequest(::fidl::internal::DefaultConstructPossiblyInvalidObjectTag) : ChildSecondRequest(Storage_{ |
| .request = {}, |
| }) {} |
| inline ChildSecondRequest& ChildSecondRequest::request(::fidl::ServerEnd<::test_inheritancewithrecursivedecl::Parent> value) { |
| storage_.request = std::move(value); |
| return *this; |
| } |
| |
| #endif // __Fuchsia__ |
| |
| } // namespace test_inheritancewithrecursivedecl |
| namespace fidl { |
| |
| #ifdef __Fuchsia__ |
| |
| template <> |
| struct IsResource<::test_inheritancewithrecursivedecl::ParentFirstRequest> : public std::true_type {}; |
| template <> |
| struct IsFidlType<::test_inheritancewithrecursivedecl::ParentFirstRequest> : public std::true_type {}; |
| |
| template <> |
| struct TypeTraits<::test_inheritancewithrecursivedecl::ParentFirstRequest> { |
| static constexpr uint32_t kMaxNumHandles = 1; |
| static constexpr uint32_t kMaxDepth = 0; |
| static constexpr uint32_t kPrimarySize = 4; |
| static constexpr uint32_t kMaxOutOfLine = 0; |
| static constexpr bool kHasPointer = false; |
| }; |
| |
| template <> |
| struct IsStruct<::test_inheritancewithrecursivedecl::ParentFirstRequest> : public std::true_type {}; |
| |
| template <> |
| struct internal::NaturalCodingTraits<::test_inheritancewithrecursivedecl::ParentFirstRequest, ::fidl::internal::NaturalCodingConstraintEmpty> final |
| : public ::fidl::internal::NaturalStructCodingTraits<::test_inheritancewithrecursivedecl::ParentFirstRequest, 4> {}; |
| |
| #endif // __Fuchsia__ |
| |
| #ifdef __Fuchsia__ |
| |
| template <> |
| struct IsResource<::test_inheritancewithrecursivedecl::ChildSecondRequest> : public std::true_type {}; |
| template <> |
| struct IsFidlType<::test_inheritancewithrecursivedecl::ChildSecondRequest> : public std::true_type {}; |
| |
| template <> |
| struct TypeTraits<::test_inheritancewithrecursivedecl::ChildSecondRequest> { |
| static constexpr uint32_t kMaxNumHandles = 1; |
| static constexpr uint32_t kMaxDepth = 0; |
| static constexpr uint32_t kPrimarySize = 4; |
| static constexpr uint32_t kMaxOutOfLine = 0; |
| static constexpr bool kHasPointer = false; |
| }; |
| |
| template <> |
| struct IsStruct<::test_inheritancewithrecursivedecl::ChildSecondRequest> : public std::true_type {}; |
| |
| template <> |
| struct internal::NaturalCodingTraits<::test_inheritancewithrecursivedecl::ChildSecondRequest, ::fidl::internal::NaturalCodingConstraintEmpty> final |
| : public ::fidl::internal::NaturalStructCodingTraits<::test_inheritancewithrecursivedecl::ChildSecondRequest, 4> {}; |
| |
| #endif // __Fuchsia__ |
| |
| #pragma clang diagnostic pop |
| |
| } // namespace fidl |