blob: 39e964c79cd3fbbce95e3ea4aac8454f2b0ed144 [file] [log] [blame]
// 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