blob: 482202a673390b3acd7865d2a69f89847fcaa67f [file] [log] [blame]
// WARNING: This file is machine generated by fidlgen.
// fidl_experiment = output_index_json
#pragma once
#include <fidl/test.protocollayouts.imported/cpp/natural_messaging.h>
#include <fidl/test.protocollayouts/cpp/markers.h>
#include <fidl/test.protocollayouts/cpp/natural_types.h>
#include <fidl/test.protocollayouts/cpp/wire_messaging.h>
#include <lib/fidl/cpp/channel.h>
#include <lib/fidl/cpp/client.h>
#include <lib/fidl/cpp/internal/thenable.h>
#include <lib/fidl/cpp/natural_types.h>
#include <lib/fidl/cpp/unified_messaging.h>
#include <lib/fidl/cpp/wire/unknown_interaction_handler.h>
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wshadow"
namespace fidl {
} // namespace fidl
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::MainProtocol::OneWayAnonComposed> {
using Request = ::test_protocollayouts_imported::ComposedProtocolOneWayAnonComposedRequest;
using Completer = fidl::Completer<>;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::MainProtocol::TwoWayAnonComposed> {
using Request = ::test_protocollayouts_imported::ComposedProtocolTwoWayAnonComposedRequest;
using Response = ::test_protocollayouts_imported::ComposedProtocolTwoWayAnonComposedResponse;
using Completer = fidl::Completer<::fidl::internal::NaturalCompleterBase<::test_protocollayouts::MainProtocol::TwoWayAnonComposed>>;
using ResultCallback =
::fit::callback<void(::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayAnonComposed>&)>;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::MainProtocol::TwoWayAnonComposedWithError> {
using Request = ::test_protocollayouts_imported::ComposedProtocolTwoWayAnonComposedWithErrorRequest;
using Response = ::test_protocollayouts_imported::ComposedProtocolTwoWayAnonComposedWithErrorResult;
using Completer = fidl::Completer<::fidl::internal::NaturalCompleterBase<::test_protocollayouts::MainProtocol::TwoWayAnonComposedWithError>>;
using ResultCallback =
::fit::callback<void(::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayAnonComposedWithError>&)>;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::MainProtocol::OnAnonComposed> {
using Request = ::test_protocollayouts_imported::ComposedProtocolOnAnonComposedRequest;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::MainProtocol::OneWayNamedComposed> {
using Request = ::test_protocollayouts_imported::ImportTablePayload;
using Completer = fidl::Completer<>;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::MainProtocol::TwoWayNamedComposed> {
using Request = ::test_protocollayouts_imported::ImportUnionPayload;
using Response = ::test_protocollayouts_imported::ImportTablePayload;
using Completer = fidl::Completer<::fidl::internal::NaturalCompleterBase<::test_protocollayouts::MainProtocol::TwoWayNamedComposed>>;
using ResultCallback =
::fit::callback<void(::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayNamedComposed>&)>;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::MainProtocol::TwoWayNamedComposedWithError> {
using Request = ::test_protocollayouts_imported::ImportTablePayload;
using Response = ::test_protocollayouts_imported::ComposedProtocolTwoWayNamedComposedWithErrorResult;
using Completer = fidl::Completer<::fidl::internal::NaturalCompleterBase<::test_protocollayouts::MainProtocol::TwoWayNamedComposedWithError>>;
using ResultCallback =
::fit::callback<void(::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayNamedComposedWithError>&)>;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::MainProtocol::OnNamedComposed> {
using Request = ::test_protocollayouts_imported::ImportUnionPayload;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::MainProtocol::OneWayImport> {
using Request = ::test_protocollayouts_imported::ImportTablePayload;
using Completer = fidl::Completer<>;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::MainProtocol::TwoWayImport> {
using Request = ::test_protocollayouts_imported::ImportUnionPayload;
using Response = ::test_protocollayouts_imported::ImportTablePayload;
using Completer = fidl::Completer<::fidl::internal::NaturalCompleterBase<::test_protocollayouts::MainProtocol::TwoWayImport>>;
using ResultCallback =
::fit::callback<void(::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayImport>&)>;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::MainProtocol::TwoWayImportWithError> {
using Request = ::test_protocollayouts_imported::ImportTablePayload;
using Response = ::test_protocollayouts::MainProtocolTwoWayImportWithErrorResult;
using Completer = fidl::Completer<::fidl::internal::NaturalCompleterBase<::test_protocollayouts::MainProtocol::TwoWayImportWithError>>;
using ResultCallback =
::fit::callback<void(::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayImportWithError>&)>;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::MainProtocol::OnImport> {
using Request = ::test_protocollayouts_imported::ImportUnionPayload;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::MainProtocol::OneWayLocal> {
using Request = ::test_protocollayouts::LocalTablePayload;
using Completer = fidl::Completer<>;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::MainProtocol::TwoWayLocal> {
using Request = ::test_protocollayouts::LocalUnionPayload;
using Response = ::test_protocollayouts::LocalTablePayload;
using Completer = fidl::Completer<::fidl::internal::NaturalCompleterBase<::test_protocollayouts::MainProtocol::TwoWayLocal>>;
using ResultCallback =
::fit::callback<void(::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayLocal>&)>;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::MainProtocol::TwoWayLocalWithError> {
using Request = ::test_protocollayouts::LocalTablePayload;
using Response = ::test_protocollayouts::MainProtocolTwoWayLocalWithErrorResult;
using Completer = fidl::Completer<::fidl::internal::NaturalCompleterBase<::test_protocollayouts::MainProtocol::TwoWayLocalWithError>>;
using ResultCallback =
::fit::callback<void(::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayLocalWithError>&)>;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::MainProtocol::OnLocal> {
using Request = ::test_protocollayouts::LocalUnionPayload;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::MainProtocol::OneWayAnon> {
using Request = ::test_protocollayouts::MainProtocolOneWayAnonRequest;
using Completer = fidl::Completer<>;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::MainProtocol::TwoWayAnon> {
using Request = ::test_protocollayouts::MainProtocolTwoWayAnonRequest;
using Response = ::test_protocollayouts::MainProtocolTwoWayAnonResponse;
using Completer = fidl::Completer<::fidl::internal::NaturalCompleterBase<::test_protocollayouts::MainProtocol::TwoWayAnon>>;
using ResultCallback =
::fit::callback<void(::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayAnon>&)>;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::MainProtocol::TwoWayAnonWithError> {
using Request = ::test_protocollayouts::MainProtocolTwoWayAnonWithErrorRequest;
using Response = ::test_protocollayouts::MainProtocolTwoWayAnonWithErrorResult;
using Completer = fidl::Completer<::fidl::internal::NaturalCompleterBase<::test_protocollayouts::MainProtocol::TwoWayAnonWithError>>;
using ResultCallback =
::fit::callback<void(::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayAnonWithError>&)>;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::MainProtocol::OnAnon> {
using Request = ::test_protocollayouts::MainProtocolOnAnonRequest;
};
#ifdef __Fuchsia__
template <>
class ::fidl::Response<::test_protocollayouts::MainProtocol::TwoWayAnonComposed> final : public ::test_protocollayouts_imported::ComposedProtocolTwoWayAnonComposedResponse {
public:
using ::test_protocollayouts_imported::ComposedProtocolTwoWayAnonComposedResponse::ComposedProtocolTwoWayAnonComposedResponse;
Response(::test_protocollayouts_imported::ComposedProtocolTwoWayAnonComposedResponse v) : ComposedProtocolTwoWayAnonComposedResponse(std::move(v)) {}
};
template <>
class ::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayAnonComposed> final : public ::fit::result<::fidl::Error, ::test_protocollayouts_imported::ComposedProtocolTwoWayAnonComposedResponse> {
public:
using ::fit::result<::fidl::Error, ::test_protocollayouts_imported::ComposedProtocolTwoWayAnonComposedResponse>::result;
protected:
Result() = default;
};
template <>
class ::fidl::Response<::test_protocollayouts::MainProtocol::TwoWayAnonComposedWithError> final : public ::fit::result<uint32_t, ::test_protocollayouts_imported::ComposedProtocolTwoWayAnonComposedWithErrorResponse> {
public:
using ::fit::result<uint32_t, ::test_protocollayouts_imported::ComposedProtocolTwoWayAnonComposedWithErrorResponse>::result;
Response(::fit::result<uint32_t, ::test_protocollayouts_imported::ComposedProtocolTwoWayAnonComposedWithErrorResponse> v) : result(std::move(v)) {}
Response() = delete;
};
template <>
class ::fidl::internal::ResponseMessageConverter<::test_protocollayouts::MainProtocol::TwoWayAnonComposedWithError> {
using DomainObject = ::test_protocollayouts_imported::ComposedProtocolTwoWayAnonComposedWithErrorResult;
public:
static DomainObject IntoDomainObject(const ::fidl::Response<::test_protocollayouts::MainProtocol::TwoWayAnonComposedWithError>& m) {
if (m.is_error()) {
return DomainObject::WithErr(m.error_value());
} else {
return DomainObject::WithResponse(std::move(m.value()));
}
}
};
template <>
class ::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayAnonComposedWithError> final : public ::fit::result<::fidl::ErrorsIn<::test_protocollayouts::MainProtocol::TwoWayAnonComposedWithError>, ::test_protocollayouts_imported::ComposedProtocolTwoWayAnonComposedWithErrorResponse> {
public:
using ::fit::result<::fidl::ErrorsIn<::test_protocollayouts::MainProtocol::TwoWayAnonComposedWithError>, ::test_protocollayouts_imported::ComposedProtocolTwoWayAnonComposedWithErrorResponse>::result;
protected:
Result() = default;
};
template <>
class ::fidl::Response<::test_protocollayouts::MainProtocol::TwoWayNamedComposed> final : public ::test_protocollayouts_imported::ImportTablePayload {
public:
using ::test_protocollayouts_imported::ImportTablePayload::ImportTablePayload;
Response(::test_protocollayouts_imported::ImportTablePayload v) : ImportTablePayload(std::move(v)) {}
};
template <>
class ::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayNamedComposed> final : public ::fit::result<::fidl::Error, ::test_protocollayouts_imported::ImportTablePayload> {
public:
using ::fit::result<::fidl::Error, ::test_protocollayouts_imported::ImportTablePayload>::result;
protected:
Result() = default;
};
template <>
class ::fidl::Response<::test_protocollayouts::MainProtocol::TwoWayNamedComposedWithError> final : public ::fit::result<uint32_t, ::test_protocollayouts_imported::ImportUnionPayload> {
public:
using ::fit::result<uint32_t, ::test_protocollayouts_imported::ImportUnionPayload>::result;
Response(::fit::result<uint32_t, ::test_protocollayouts_imported::ImportUnionPayload> v) : result(std::move(v)) {}
Response() = delete;
};
template <>
class ::fidl::internal::ResponseMessageConverter<::test_protocollayouts::MainProtocol::TwoWayNamedComposedWithError> {
using DomainObject = ::test_protocollayouts_imported::ComposedProtocolTwoWayNamedComposedWithErrorResult;
public:
static DomainObject IntoDomainObject(const ::fidl::Response<::test_protocollayouts::MainProtocol::TwoWayNamedComposedWithError>& m) {
if (m.is_error()) {
return DomainObject::WithErr(m.error_value());
} else {
return DomainObject::WithResponse(std::move(m.value()));
}
}
};
template <>
class ::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayNamedComposedWithError> final : public ::fit::result<::fidl::ErrorsIn<::test_protocollayouts::MainProtocol::TwoWayNamedComposedWithError>, ::test_protocollayouts_imported::ImportUnionPayload> {
public:
using ::fit::result<::fidl::ErrorsIn<::test_protocollayouts::MainProtocol::TwoWayNamedComposedWithError>, ::test_protocollayouts_imported::ImportUnionPayload>::result;
protected:
Result() = default;
};
template <>
class ::fidl::Response<::test_protocollayouts::MainProtocol::TwoWayImport> final : public ::test_protocollayouts_imported::ImportTablePayload {
public:
using ::test_protocollayouts_imported::ImportTablePayload::ImportTablePayload;
Response(::test_protocollayouts_imported::ImportTablePayload v) : ImportTablePayload(std::move(v)) {}
};
template <>
class ::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayImport> final : public ::fit::result<::fidl::Error, ::test_protocollayouts_imported::ImportTablePayload> {
public:
using ::fit::result<::fidl::Error, ::test_protocollayouts_imported::ImportTablePayload>::result;
protected:
Result() = default;
};
template <>
class ::fidl::Response<::test_protocollayouts::MainProtocol::TwoWayImportWithError> final : public ::fit::result<uint32_t, ::test_protocollayouts_imported::ImportUnionPayload> {
public:
using ::fit::result<uint32_t, ::test_protocollayouts_imported::ImportUnionPayload>::result;
Response(::fit::result<uint32_t, ::test_protocollayouts_imported::ImportUnionPayload> v) : result(std::move(v)) {}
Response() = delete;
};
template <>
class ::fidl::internal::ResponseMessageConverter<::test_protocollayouts::MainProtocol::TwoWayImportWithError> {
using DomainObject = ::test_protocollayouts::MainProtocolTwoWayImportWithErrorResult;
public:
static DomainObject IntoDomainObject(const ::fidl::Response<::test_protocollayouts::MainProtocol::TwoWayImportWithError>& m) {
if (m.is_error()) {
return DomainObject::WithErr(m.error_value());
} else {
return DomainObject::WithResponse(std::move(m.value()));
}
}
};
template <>
class ::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayImportWithError> final : public ::fit::result<::fidl::ErrorsIn<::test_protocollayouts::MainProtocol::TwoWayImportWithError>, ::test_protocollayouts_imported::ImportUnionPayload> {
public:
using ::fit::result<::fidl::ErrorsIn<::test_protocollayouts::MainProtocol::TwoWayImportWithError>, ::test_protocollayouts_imported::ImportUnionPayload>::result;
protected:
Result() = default;
};
template <>
class ::fidl::Response<::test_protocollayouts::MainProtocol::TwoWayLocal> final : public ::test_protocollayouts::LocalTablePayload {
public:
using ::test_protocollayouts::LocalTablePayload::LocalTablePayload;
Response(::test_protocollayouts::LocalTablePayload v) : LocalTablePayload(std::move(v)) {}
};
template <>
class ::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayLocal> final : public ::fit::result<::fidl::Error, ::test_protocollayouts::LocalTablePayload> {
public:
using ::fit::result<::fidl::Error, ::test_protocollayouts::LocalTablePayload>::result;
protected:
Result() = default;
};
template <>
class ::fidl::Response<::test_protocollayouts::MainProtocol::TwoWayLocalWithError> final : public ::fit::result<uint32_t, ::test_protocollayouts::LocalUnionPayload> {
public:
using ::fit::result<uint32_t, ::test_protocollayouts::LocalUnionPayload>::result;
Response(::fit::result<uint32_t, ::test_protocollayouts::LocalUnionPayload> v) : result(std::move(v)) {}
Response() = delete;
};
template <>
class ::fidl::internal::ResponseMessageConverter<::test_protocollayouts::MainProtocol::TwoWayLocalWithError> {
using DomainObject = ::test_protocollayouts::MainProtocolTwoWayLocalWithErrorResult;
public:
static DomainObject IntoDomainObject(const ::fidl::Response<::test_protocollayouts::MainProtocol::TwoWayLocalWithError>& m) {
if (m.is_error()) {
return DomainObject::WithErr(m.error_value());
} else {
return DomainObject::WithResponse(std::move(m.value()));
}
}
};
template <>
class ::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayLocalWithError> final : public ::fit::result<::fidl::ErrorsIn<::test_protocollayouts::MainProtocol::TwoWayLocalWithError>, ::test_protocollayouts::LocalUnionPayload> {
public:
using ::fit::result<::fidl::ErrorsIn<::test_protocollayouts::MainProtocol::TwoWayLocalWithError>, ::test_protocollayouts::LocalUnionPayload>::result;
protected:
Result() = default;
};
template <>
class ::fidl::Response<::test_protocollayouts::MainProtocol::TwoWayAnon> final : public ::test_protocollayouts::MainProtocolTwoWayAnonResponse {
public:
using ::test_protocollayouts::MainProtocolTwoWayAnonResponse::MainProtocolTwoWayAnonResponse;
Response(::test_protocollayouts::MainProtocolTwoWayAnonResponse v) : MainProtocolTwoWayAnonResponse(std::move(v)) {}
};
template <>
class ::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayAnon> final : public ::fit::result<::fidl::Error, ::test_protocollayouts::MainProtocolTwoWayAnonResponse> {
public:
using ::fit::result<::fidl::Error, ::test_protocollayouts::MainProtocolTwoWayAnonResponse>::result;
protected:
Result() = default;
};
template <>
class ::fidl::Response<::test_protocollayouts::MainProtocol::TwoWayAnonWithError> final : public ::fit::result<uint32_t, ::test_protocollayouts::MainProtocolTwoWayAnonWithErrorResponse> {
public:
using ::fit::result<uint32_t, ::test_protocollayouts::MainProtocolTwoWayAnonWithErrorResponse>::result;
Response(::fit::result<uint32_t, ::test_protocollayouts::MainProtocolTwoWayAnonWithErrorResponse> v) : result(std::move(v)) {}
Response() = delete;
};
template <>
class ::fidl::internal::ResponseMessageConverter<::test_protocollayouts::MainProtocol::TwoWayAnonWithError> {
using DomainObject = ::test_protocollayouts::MainProtocolTwoWayAnonWithErrorResult;
public:
static DomainObject IntoDomainObject(const ::fidl::Response<::test_protocollayouts::MainProtocol::TwoWayAnonWithError>& m) {
if (m.is_error()) {
return DomainObject::WithErr(m.error_value());
} else {
return DomainObject::WithResponse(std::move(m.value()));
}
}
};
template <>
class ::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayAnonWithError> final : public ::fit::result<::fidl::ErrorsIn<::test_protocollayouts::MainProtocol::TwoWayAnonWithError>, ::test_protocollayouts::MainProtocolTwoWayAnonWithErrorResponse> {
public:
using ::fit::result<::fidl::ErrorsIn<::test_protocollayouts::MainProtocol::TwoWayAnonWithError>, ::test_protocollayouts::MainProtocolTwoWayAnonWithErrorResponse>::result;
protected:
Result() = default;
};
template <>
class ::fidl::internal::NaturalClientImpl<::test_protocollayouts::MainProtocol> final : public ::fidl::internal::NaturalClientBase {
public:
using NaturalClientBase::NaturalClientBase;
::fidl::internal::NaturalThenable<::test_protocollayouts::MainProtocol::TwoWayAnonComposed> TwoWayAnonComposed(const ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayAnonComposed>& request) const;
::fidl::internal::NaturalThenable<::test_protocollayouts::MainProtocol::TwoWayAnonComposedWithError> TwoWayAnonComposedWithError(const ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayAnonComposedWithError>& request) const;
::fidl::internal::NaturalThenable<::test_protocollayouts::MainProtocol::TwoWayNamedComposed> TwoWayNamedComposed(const ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayNamedComposed>& request) const;
::fidl::internal::NaturalThenable<::test_protocollayouts::MainProtocol::TwoWayNamedComposedWithError> TwoWayNamedComposedWithError(const ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayNamedComposedWithError>& request) const;
::fidl::internal::NaturalThenable<::test_protocollayouts::MainProtocol::TwoWayImport> TwoWayImport(const ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayImport>& request) const;
::fidl::internal::NaturalThenable<::test_protocollayouts::MainProtocol::TwoWayImportWithError> TwoWayImportWithError(const ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayImportWithError>& request) const;
::fidl::internal::NaturalThenable<::test_protocollayouts::MainProtocol::TwoWayLocal> TwoWayLocal(const ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayLocal>& request) const;
::fidl::internal::NaturalThenable<::test_protocollayouts::MainProtocol::TwoWayLocalWithError> TwoWayLocalWithError(const ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayLocalWithError>& request) const;
::fidl::internal::NaturalThenable<::test_protocollayouts::MainProtocol::TwoWayAnon> TwoWayAnon(const ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayAnon>& request) const;
::fidl::internal::NaturalThenable<::test_protocollayouts::MainProtocol::TwoWayAnonWithError> TwoWayAnonWithError(const ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayAnonWithError>& request) const;
::fit::result<::fidl::OneWayError> OneWayAnonComposed(const ::fidl::Request<::test_protocollayouts::MainProtocol::OneWayAnonComposed>& request) const;
::fit::result<::fidl::OneWayError> OneWayNamedComposed(const ::fidl::Request<::test_protocollayouts::MainProtocol::OneWayNamedComposed>& request) const;
::fit::result<::fidl::OneWayError> OneWayImport(const ::fidl::Request<::test_protocollayouts::MainProtocol::OneWayImport>& request) const;
::fit::result<::fidl::OneWayError> OneWayLocal(const ::fidl::Request<::test_protocollayouts::MainProtocol::OneWayLocal>& request) const;
::fit::result<::fidl::OneWayError> OneWayAnon(const ::fidl::Request<::test_protocollayouts::MainProtocol::OneWayAnon>& request) const;
};
#endif // __Fuchsia__
#ifdef __Fuchsia__
template <>
class ::fidl::internal::NaturalSyncClientImpl<::test_protocollayouts::MainProtocol> final
: public ::fidl::internal::SyncEndpointManagedVeneer<::fidl::internal::NaturalSyncClientImpl<::test_protocollayouts::MainProtocol>> {
public:
::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayAnonComposed> TwoWayAnonComposed(const ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayAnonComposed>& request);
::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayAnonComposedWithError> TwoWayAnonComposedWithError(const ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayAnonComposedWithError>& request);
::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayNamedComposed> TwoWayNamedComposed(const ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayNamedComposed>& request);
::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayNamedComposedWithError> TwoWayNamedComposedWithError(const ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayNamedComposedWithError>& request);
::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayImport> TwoWayImport(const ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayImport>& request);
::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayImportWithError> TwoWayImportWithError(const ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayImportWithError>& request);
::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayLocal> TwoWayLocal(const ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayLocal>& request);
::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayLocalWithError> TwoWayLocalWithError(const ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayLocalWithError>& request);
::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayAnon> TwoWayAnon(const ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayAnon>& request);
::fidl::Result<::test_protocollayouts::MainProtocol::TwoWayAnonWithError> TwoWayAnonWithError(const ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayAnonWithError>& request);
::fit::result<::fidl::OneWayError> OneWayAnonComposed(const ::fidl::Request<::test_protocollayouts::MainProtocol::OneWayAnonComposed>& request);
::fit::result<::fidl::OneWayError> OneWayNamedComposed(const ::fidl::Request<::test_protocollayouts::MainProtocol::OneWayNamedComposed>& request);
::fit::result<::fidl::OneWayError> OneWayImport(const ::fidl::Request<::test_protocollayouts::MainProtocol::OneWayImport>& request);
::fit::result<::fidl::OneWayError> OneWayLocal(const ::fidl::Request<::test_protocollayouts::MainProtocol::OneWayLocal>& request);
::fit::result<::fidl::OneWayError> OneWayAnon(const ::fidl::Request<::test_protocollayouts::MainProtocol::OneWayAnon>& request);
private:
::fidl::UnownedClientEnd<::test_protocollayouts::MainProtocol> _client_end() const {
return ::fidl::UnownedClientEnd<::test_protocollayouts::MainProtocol>(
_transport().get<::fidl::internal::ChannelTransport>());
}
};
#endif // __Fuchsia__
#ifdef __Fuchsia__
template <>
class ::fidl::internal::NaturalEventHandlerInterface<::test_protocollayouts::MainProtocol> : public ::fidl::internal::BaseEventHandlerInterface {
public:
NaturalEventHandlerInterface() = default;
virtual ~NaturalEventHandlerInterface() = default;
virtual void OnAnonComposed(::fidl::Event<::test_protocollayouts::MainProtocol::OnAnonComposed>&) = 0;
virtual void OnNamedComposed(::fidl::Event<::test_protocollayouts::MainProtocol::OnNamedComposed>&) = 0;
virtual void OnImport(::fidl::Event<::test_protocollayouts::MainProtocol::OnImport>&) = 0;
virtual void OnLocal(::fidl::Event<::test_protocollayouts::MainProtocol::OnLocal>&) = 0;
virtual void OnAnon(::fidl::Event<::test_protocollayouts::MainProtocol::OnAnon>&) = 0;
};
template <>
class ::fidl::AsyncEventHandler<::test_protocollayouts::MainProtocol>
: public ::fidl::internal::NaturalEventHandlerInterface<::test_protocollayouts::MainProtocol>, public ::fidl::internal::AsyncEventHandler {
public:
AsyncEventHandler() = default;
void OnAnonComposed(::fidl::Event<::test_protocollayouts::MainProtocol::OnAnonComposed>&) override {}
void OnNamedComposed(::fidl::Event<::test_protocollayouts::MainProtocol::OnNamedComposed>&) override {}
void OnImport(::fidl::Event<::test_protocollayouts::MainProtocol::OnImport>&) override {}
void OnLocal(::fidl::Event<::test_protocollayouts::MainProtocol::OnLocal>&) override {}
void OnAnon(::fidl::Event<::test_protocollayouts::MainProtocol::OnAnon>&) override {}
};
template <>
class ::fidl::SyncEventHandler<::test_protocollayouts::MainProtocol>
: public ::fidl::internal::NaturalEventHandlerInterface<::test_protocollayouts::MainProtocol>, public ::fidl::internal::SyncEventHandler {
public:
SyncEventHandler() = default;
// Handle all possible events defined in this protocol.
// Blocks to consume exactly one message from the channel, then call the corresponding virtual
// method.
::fidl::Status HandleOneEvent(
::fidl::UnownedClientEnd<::test_protocollayouts::MainProtocol> client_end);
};
template <>
class ::fidl::internal::NaturalEventDispatcher<::test_protocollayouts::MainProtocol> final : public ::fidl::internal::IncomingEventDispatcher<::fidl::internal::NaturalEventHandlerInterface<::test_protocollayouts::MainProtocol>> {
public:
explicit NaturalEventDispatcher(::fidl::internal::NaturalEventHandlerInterface<::test_protocollayouts::MainProtocol>* event_handler)
: IncomingEventDispatcher(event_handler) {}
::fidl::Status DispatchEvent(
::fidl::IncomingHeaderAndMessage& msg,
internal::MessageStorageViewBase* storage_view) override;
};
#endif // __Fuchsia__
#ifdef __Fuchsia__
template <>
class ::fidl::internal::NaturalWeakEventSender<::test_protocollayouts::MainProtocol> : public ::fidl::internal::WeakEventSenderBase {
public:
using WeakEventSenderBase::WeakEventSenderBase;
::fit::result<::fidl::OneWayError> OnAnonComposed(const ::test_protocollayouts_imported::ComposedProtocolOnAnonComposedRequest& payload);
::fit::result<::fidl::OneWayError> OnNamedComposed(const ::test_protocollayouts_imported::ImportUnionPayload& payload);
::fit::result<::fidl::OneWayError> OnImport(const ::test_protocollayouts_imported::ImportUnionPayload& payload);
::fit::result<::fidl::OneWayError> OnLocal(const ::test_protocollayouts::LocalUnionPayload& payload);
::fit::result<::fidl::OneWayError> OnAnon(const ::test_protocollayouts::MainProtocolOnAnonRequest& payload);
};
template <>
class ::fidl::internal::NaturalEventSender<::test_protocollayouts::MainProtocol>
: public ::fidl::internal::SyncEndpointManagedVeneer<::fidl::internal::NaturalEventSender<::test_protocollayouts::MainProtocol>> {
public:
using SyncEndpointManagedVeneer::SyncEndpointManagedVeneer;
::fit::result<::fidl::OneWayError> OnAnonComposed(const ::test_protocollayouts_imported::ComposedProtocolOnAnonComposedRequest& payload);
::fit::result<::fidl::OneWayError> OnNamedComposed(const ::test_protocollayouts_imported::ImportUnionPayload& payload);
::fit::result<::fidl::OneWayError> OnImport(const ::test_protocollayouts_imported::ImportUnionPayload& payload);
::fit::result<::fidl::OneWayError> OnLocal(const ::test_protocollayouts::LocalUnionPayload& payload);
::fit::result<::fidl::OneWayError> OnAnon(const ::test_protocollayouts::MainProtocolOnAnonRequest& payload);
};
#endif // __Fuchsia__
template <>
class ::fidl::internal::NaturalCompleterBase<::test_protocollayouts::MainProtocol::TwoWayAnonComposed> : public ::fidl::CompleterBase {
public:
void Reply(const ::fidl::Response<::test_protocollayouts::MainProtocol::TwoWayAnonComposed>& response);
protected:
using ::fidl::CompleterBase::CompleterBase;
};
template <>
class ::fidl::internal::NaturalCompleterBase<::test_protocollayouts::MainProtocol::TwoWayAnonComposedWithError> : public ::fidl::CompleterBase {
public:
void Reply(const ::fidl::Response<::test_protocollayouts::MainProtocol::TwoWayAnonComposedWithError>& response);
protected:
using ::fidl::CompleterBase::CompleterBase;
};
template <>
class ::fidl::internal::NaturalCompleterBase<::test_protocollayouts::MainProtocol::TwoWayNamedComposed> : public ::fidl::CompleterBase {
public:
void Reply(const ::fidl::Response<::test_protocollayouts::MainProtocol::TwoWayNamedComposed>& response);
protected:
using ::fidl::CompleterBase::CompleterBase;
};
template <>
class ::fidl::internal::NaturalCompleterBase<::test_protocollayouts::MainProtocol::TwoWayNamedComposedWithError> : public ::fidl::CompleterBase {
public:
void Reply(const ::fidl::Response<::test_protocollayouts::MainProtocol::TwoWayNamedComposedWithError>& response);
protected:
using ::fidl::CompleterBase::CompleterBase;
};
template <>
class ::fidl::internal::NaturalCompleterBase<::test_protocollayouts::MainProtocol::TwoWayImport> : public ::fidl::CompleterBase {
public:
void Reply(const ::fidl::Response<::test_protocollayouts::MainProtocol::TwoWayImport>& response);
protected:
using ::fidl::CompleterBase::CompleterBase;
};
template <>
class ::fidl::internal::NaturalCompleterBase<::test_protocollayouts::MainProtocol::TwoWayImportWithError> : public ::fidl::CompleterBase {
public:
void Reply(const ::fidl::Response<::test_protocollayouts::MainProtocol::TwoWayImportWithError>& response);
protected:
using ::fidl::CompleterBase::CompleterBase;
};
template <>
class ::fidl::internal::NaturalCompleterBase<::test_protocollayouts::MainProtocol::TwoWayLocal> : public ::fidl::CompleterBase {
public:
void Reply(const ::fidl::Response<::test_protocollayouts::MainProtocol::TwoWayLocal>& response);
protected:
using ::fidl::CompleterBase::CompleterBase;
};
template <>
class ::fidl::internal::NaturalCompleterBase<::test_protocollayouts::MainProtocol::TwoWayLocalWithError> : public ::fidl::CompleterBase {
public:
void Reply(const ::fidl::Response<::test_protocollayouts::MainProtocol::TwoWayLocalWithError>& response);
protected:
using ::fidl::CompleterBase::CompleterBase;
};
template <>
class ::fidl::internal::NaturalCompleterBase<::test_protocollayouts::MainProtocol::TwoWayAnon> : public ::fidl::CompleterBase {
public:
void Reply(const ::fidl::Response<::test_protocollayouts::MainProtocol::TwoWayAnon>& response);
protected:
using ::fidl::CompleterBase::CompleterBase;
};
template <>
class ::fidl::internal::NaturalCompleterBase<::test_protocollayouts::MainProtocol::TwoWayAnonWithError> : public ::fidl::CompleterBase {
public:
void Reply(const ::fidl::Response<::test_protocollayouts::MainProtocol::TwoWayAnonWithError>& response);
protected:
using ::fidl::CompleterBase::CompleterBase;
};
template <>
class ::fidl::Server<::test_protocollayouts::MainProtocol> : public ::fidl::internal::IncomingMessageDispatcher {
public:
Server() = default;
virtual ~Server() = default;
// The FIDL protocol type that is implemented by this server.
using _EnclosingProtocol = ::test_protocollayouts::MainProtocol;
using Handler = fidl::ProtocolHandler<::test_protocollayouts::MainProtocol>;
using OneWayAnonComposedRequest = ::fidl::Request<::test_protocollayouts::MainProtocol::OneWayAnonComposed>;
using OneWayAnonComposedCompleter = ::fidl::internal::NaturalCompleter<::test_protocollayouts::MainProtocol::OneWayAnonComposed>;
virtual void OneWayAnonComposed(OneWayAnonComposedRequest& request,
OneWayAnonComposedCompleter::Sync& completer) = 0;
using TwoWayAnonComposedRequest = ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayAnonComposed>;
using TwoWayAnonComposedCompleter = ::fidl::internal::NaturalCompleter<::test_protocollayouts::MainProtocol::TwoWayAnonComposed>;
virtual void TwoWayAnonComposed(TwoWayAnonComposedRequest& request,
TwoWayAnonComposedCompleter::Sync& completer) = 0;
using TwoWayAnonComposedWithErrorRequest = ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayAnonComposedWithError>;
using TwoWayAnonComposedWithErrorCompleter = ::fidl::internal::NaturalCompleter<::test_protocollayouts::MainProtocol::TwoWayAnonComposedWithError>;
virtual void TwoWayAnonComposedWithError(TwoWayAnonComposedWithErrorRequest& request,
TwoWayAnonComposedWithErrorCompleter::Sync& completer) = 0;
using OneWayNamedComposedRequest = ::fidl::Request<::test_protocollayouts::MainProtocol::OneWayNamedComposed>;
using OneWayNamedComposedCompleter = ::fidl::internal::NaturalCompleter<::test_protocollayouts::MainProtocol::OneWayNamedComposed>;
virtual void OneWayNamedComposed(OneWayNamedComposedRequest& request,
OneWayNamedComposedCompleter::Sync& completer) = 0;
using TwoWayNamedComposedRequest = ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayNamedComposed>;
using TwoWayNamedComposedCompleter = ::fidl::internal::NaturalCompleter<::test_protocollayouts::MainProtocol::TwoWayNamedComposed>;
virtual void TwoWayNamedComposed(TwoWayNamedComposedRequest& request,
TwoWayNamedComposedCompleter::Sync& completer) = 0;
using TwoWayNamedComposedWithErrorRequest = ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayNamedComposedWithError>;
using TwoWayNamedComposedWithErrorCompleter = ::fidl::internal::NaturalCompleter<::test_protocollayouts::MainProtocol::TwoWayNamedComposedWithError>;
virtual void TwoWayNamedComposedWithError(TwoWayNamedComposedWithErrorRequest& request,
TwoWayNamedComposedWithErrorCompleter::Sync& completer) = 0;
using OneWayImportRequest = ::fidl::Request<::test_protocollayouts::MainProtocol::OneWayImport>;
using OneWayImportCompleter = ::fidl::internal::NaturalCompleter<::test_protocollayouts::MainProtocol::OneWayImport>;
virtual void OneWayImport(OneWayImportRequest& request,
OneWayImportCompleter::Sync& completer) = 0;
using TwoWayImportRequest = ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayImport>;
using TwoWayImportCompleter = ::fidl::internal::NaturalCompleter<::test_protocollayouts::MainProtocol::TwoWayImport>;
virtual void TwoWayImport(TwoWayImportRequest& request,
TwoWayImportCompleter::Sync& completer) = 0;
using TwoWayImportWithErrorRequest = ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayImportWithError>;
using TwoWayImportWithErrorCompleter = ::fidl::internal::NaturalCompleter<::test_protocollayouts::MainProtocol::TwoWayImportWithError>;
virtual void TwoWayImportWithError(TwoWayImportWithErrorRequest& request,
TwoWayImportWithErrorCompleter::Sync& completer) = 0;
using OneWayLocalRequest = ::fidl::Request<::test_protocollayouts::MainProtocol::OneWayLocal>;
using OneWayLocalCompleter = ::fidl::internal::NaturalCompleter<::test_protocollayouts::MainProtocol::OneWayLocal>;
virtual void OneWayLocal(OneWayLocalRequest& request,
OneWayLocalCompleter::Sync& completer) = 0;
using TwoWayLocalRequest = ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayLocal>;
using TwoWayLocalCompleter = ::fidl::internal::NaturalCompleter<::test_protocollayouts::MainProtocol::TwoWayLocal>;
virtual void TwoWayLocal(TwoWayLocalRequest& request,
TwoWayLocalCompleter::Sync& completer) = 0;
using TwoWayLocalWithErrorRequest = ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayLocalWithError>;
using TwoWayLocalWithErrorCompleter = ::fidl::internal::NaturalCompleter<::test_protocollayouts::MainProtocol::TwoWayLocalWithError>;
virtual void TwoWayLocalWithError(TwoWayLocalWithErrorRequest& request,
TwoWayLocalWithErrorCompleter::Sync& completer) = 0;
using OneWayAnonRequest = ::fidl::Request<::test_protocollayouts::MainProtocol::OneWayAnon>;
using OneWayAnonCompleter = ::fidl::internal::NaturalCompleter<::test_protocollayouts::MainProtocol::OneWayAnon>;
virtual void OneWayAnon(OneWayAnonRequest& request,
OneWayAnonCompleter::Sync& completer) = 0;
using TwoWayAnonRequest = ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayAnon>;
using TwoWayAnonCompleter = ::fidl::internal::NaturalCompleter<::test_protocollayouts::MainProtocol::TwoWayAnon>;
virtual void TwoWayAnon(TwoWayAnonRequest& request,
TwoWayAnonCompleter::Sync& completer) = 0;
using TwoWayAnonWithErrorRequest = ::fidl::Request<::test_protocollayouts::MainProtocol::TwoWayAnonWithError>;
using TwoWayAnonWithErrorCompleter = ::fidl::internal::NaturalCompleter<::test_protocollayouts::MainProtocol::TwoWayAnonWithError>;
virtual void TwoWayAnonWithError(TwoWayAnonWithErrorRequest& request,
TwoWayAnonWithErrorCompleter::Sync& completer) = 0;
// |bind_handler| returns a handler that binds incoming connections to this
// server implementation.
//
// The returned handler borrows the server instance.
// The server must outlive the provided |dispatcher|. Only after
// the dispatcher is shutdown will it be safe to destroy the servers.
// The server should not be moved.
Handler bind_handler(async_dispatcher_t* dispatcher) {
return [impl = this, dispatcher = dispatcher](::fidl::ServerEnd<::test_protocollayouts::MainProtocol> request) {
(void)::fidl::BindServer(dispatcher, std::move(request), impl);
};
}
private:
void dispatch_message(
::fidl::IncomingHeaderAndMessage&& msg, ::fidl::Transaction* txn,
::fidl::internal::MessageStorageViewBase* storage_view) final;
};
#ifdef __Fuchsia__
template <>
struct ::fidl::internal::NaturalServerDispatcher<::test_protocollayouts::MainProtocol> final {
NaturalServerDispatcher() = delete;
static void Dispatch(::fidl::Server<::test_protocollayouts::MainProtocol>* impl, ::fidl::IncomingHeaderAndMessage&& msg,
internal::MessageStorageViewBase* storage_view,
::fidl::Transaction* txn);
private:
static const ::fidl::internal::MethodEntry entries_[];
static const ::fidl::internal::MethodEntry* entries_end_;
static constexpr const ::fidl::internal::UnknownMethodHandlerEntry& unknown_method_handler_entry_ =
::fidl::internal::UnknownMethodHandlerEntry::kClosedProtocolHandlerEntry;
};
#endif // __Fuchsia__
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::OpenProtocol::FlexibleOneWay> {
using Request = ::test_protocollayouts_imported::ComposedOpenProtocolFlexibleOneWayRequest;
using Completer = fidl::Completer<>;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::OpenProtocol::FlexibleTwoWayNoError> {
using Request = ::test_protocollayouts_imported::ComposedOpenProtocolFlexibleTwoWayNoErrorRequest;
using Response = ::test_protocollayouts_imported::ComposedOpenProtocolFlexibleTwoWayNoErrorResult;
using Completer = fidl::Completer<::fidl::internal::NaturalCompleterBase<::test_protocollayouts::OpenProtocol::FlexibleTwoWayNoError>>;
using ResultCallback =
::fit::callback<void(::fidl::Result<::test_protocollayouts::OpenProtocol::FlexibleTwoWayNoError>&)>;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::OpenProtocol::FlexibleTwoWayWithError> {
using Request = ::test_protocollayouts_imported::ComposedOpenProtocolFlexibleTwoWayWithErrorRequest;
using Response = ::test_protocollayouts_imported::ComposedOpenProtocolFlexibleTwoWayWithErrorResult;
using Completer = fidl::Completer<::fidl::internal::NaturalCompleterBase<::test_protocollayouts::OpenProtocol::FlexibleTwoWayWithError>>;
using ResultCallback =
::fit::callback<void(::fidl::Result<::test_protocollayouts::OpenProtocol::FlexibleTwoWayWithError>&)>;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::OpenProtocol::FlexibleEvent> {
using Request = ::test_protocollayouts_imported::ComposedOpenProtocolFlexibleEventRequest;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::OpenProtocol::StrictOneWay> {
using Request = ::test_protocollayouts_imported::ComposedOpenProtocolStrictOneWayRequest;
using Completer = fidl::Completer<>;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::OpenProtocol::StrictTwoWayNoError> {
using Request = ::test_protocollayouts_imported::ComposedOpenProtocolStrictTwoWayNoErrorRequest;
using Response = ::test_protocollayouts_imported::ComposedOpenProtocolStrictTwoWayNoErrorResponse;
using Completer = fidl::Completer<::fidl::internal::NaturalCompleterBase<::test_protocollayouts::OpenProtocol::StrictTwoWayNoError>>;
using ResultCallback =
::fit::callback<void(::fidl::Result<::test_protocollayouts::OpenProtocol::StrictTwoWayNoError>&)>;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::OpenProtocol::StrictTwoWayWithError> {
using Request = ::test_protocollayouts_imported::ComposedOpenProtocolStrictTwoWayWithErrorRequest;
using Response = ::test_protocollayouts_imported::ComposedOpenProtocolStrictTwoWayWithErrorResult;
using Completer = fidl::Completer<::fidl::internal::NaturalCompleterBase<::test_protocollayouts::OpenProtocol::StrictTwoWayWithError>>;
using ResultCallback =
::fit::callback<void(::fidl::Result<::test_protocollayouts::OpenProtocol::StrictTwoWayWithError>&)>;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::OpenProtocol::StrictEvent> {
using Request = ::test_protocollayouts_imported::ComposedOpenProtocolStrictEventRequest;
};
template <>
struct ::fidl::internal::NaturalMethodTypes<::test_protocollayouts::OpenProtocol::FlexibleOneWayNamedPayload> {
using Request = ::test_protocollayouts_imported::ImportStructPayload;
using Completer = fidl::Completer<>;
};
#ifdef __Fuchsia__
template <>
class ::fidl::Response<::test_protocollayouts::OpenProtocol::FlexibleTwoWayNoError> final : public ::test_protocollayouts_imported::ComposedOpenProtocolFlexibleTwoWayNoErrorResponse {
public:
using ::test_protocollayouts_imported::ComposedOpenProtocolFlexibleTwoWayNoErrorResponse::ComposedOpenProtocolFlexibleTwoWayNoErrorResponse;
Response(::test_protocollayouts_imported::ComposedOpenProtocolFlexibleTwoWayNoErrorResponse v) : ComposedOpenProtocolFlexibleTwoWayNoErrorResponse(std::move(v)) {}
};
template <>
class ::fidl::internal::ResponseMessageConverter<::test_protocollayouts::OpenProtocol::FlexibleTwoWayNoError> {
using DomainObject = ::test_protocollayouts_imported::ComposedOpenProtocolFlexibleTwoWayNoErrorResult;
public:
static DomainObject IntoDomainObject(const ::fidl::Response<::test_protocollayouts::OpenProtocol::FlexibleTwoWayNoError>& m) {
return DomainObject::WithResponse(std::move(m));
}
};
template <>
class ::fidl::Result<::test_protocollayouts::OpenProtocol::FlexibleTwoWayNoError> final : public ::fit::result<::fidl::Error, ::test_protocollayouts_imported::ComposedOpenProtocolFlexibleTwoWayNoErrorResponse> {
public:
using ::fit::result<::fidl::Error, ::test_protocollayouts_imported::ComposedOpenProtocolFlexibleTwoWayNoErrorResponse>::result;
protected:
Result() = default;
};
template <>
class ::fidl::Response<::test_protocollayouts::OpenProtocol::FlexibleTwoWayWithError> final : public ::fit::result<int32_t, ::test_protocollayouts_imported::ComposedOpenProtocolFlexibleTwoWayWithErrorResponse> {
public:
using ::fit::result<int32_t, ::test_protocollayouts_imported::ComposedOpenProtocolFlexibleTwoWayWithErrorResponse>::result;
Response(::fit::result<int32_t, ::test_protocollayouts_imported::ComposedOpenProtocolFlexibleTwoWayWithErrorResponse> v) : result(std::move(v)) {}
Response() = delete;
};
template <>
class ::fidl::internal::ResponseMessageConverter<::test_protocollayouts::OpenProtocol::FlexibleTwoWayWithError> {
using DomainObject = ::test_protocollayouts_imported::ComposedOpenProtocolFlexibleTwoWayWithErrorResult;
public:
static DomainObject IntoDomainObject(const ::fidl::Response<::test_protocollayouts::OpenProtocol::FlexibleTwoWayWithError>& m) {
if (m.is_error()) {
return DomainObject::WithErr(m.error_value());
} else {
return DomainObject::WithResponse(std::move(m.value()));
}
}
};
template <>
class ::fidl::Result<::test_protocollayouts::OpenProtocol::FlexibleTwoWayWithError> final : public ::fit::result<::fidl::ErrorsIn<::test_protocollayouts::OpenProtocol::FlexibleTwoWayWithError>, ::test_protocollayouts_imported::ComposedOpenProtocolFlexibleTwoWayWithErrorResponse> {
public:
using ::fit::result<::fidl::ErrorsIn<::test_protocollayouts::OpenProtocol::FlexibleTwoWayWithError>, ::test_protocollayouts_imported::ComposedOpenProtocolFlexibleTwoWayWithErrorResponse>::result;
protected:
Result() = default;
};
template <>
class ::fidl::Response<::test_protocollayouts::OpenProtocol::StrictTwoWayNoError> final : public ::test_protocollayouts_imported::ComposedOpenProtocolStrictTwoWayNoErrorResponse {
public:
using ::test_protocollayouts_imported::ComposedOpenProtocolStrictTwoWayNoErrorResponse::ComposedOpenProtocolStrictTwoWayNoErrorResponse;
Response(::test_protocollayouts_imported::ComposedOpenProtocolStrictTwoWayNoErrorResponse v) : ComposedOpenProtocolStrictTwoWayNoErrorResponse(std::move(v)) {}
};
template <>
class ::fidl::Result<::test_protocollayouts::OpenProtocol::StrictTwoWayNoError> final : public ::fit::result<::fidl::Error, ::test_protocollayouts_imported::ComposedOpenProtocolStrictTwoWayNoErrorResponse> {
public:
using ::fit::result<::fidl::Error, ::test_protocollayouts_imported::ComposedOpenProtocolStrictTwoWayNoErrorResponse>::result;
protected:
Result() = default;
};
template <>
class ::fidl::Response<::test_protocollayouts::OpenProtocol::StrictTwoWayWithError> final : public ::fit::result<int32_t, ::test_protocollayouts_imported::ComposedOpenProtocolStrictTwoWayWithErrorResponse> {
public:
using ::fit::result<int32_t, ::test_protocollayouts_imported::ComposedOpenProtocolStrictTwoWayWithErrorResponse>::result;
Response(::fit::result<int32_t, ::test_protocollayouts_imported::ComposedOpenProtocolStrictTwoWayWithErrorResponse> v) : result(std::move(v)) {}
Response() = delete;
};
template <>
class ::fidl::internal::ResponseMessageConverter<::test_protocollayouts::OpenProtocol::StrictTwoWayWithError> {
using DomainObject = ::test_protocollayouts_imported::ComposedOpenProtocolStrictTwoWayWithErrorResult;
public:
static DomainObject IntoDomainObject(const ::fidl::Response<::test_protocollayouts::OpenProtocol::StrictTwoWayWithError>& m) {
if (m.is_error()) {
return DomainObject::WithErr(m.error_value());
} else {
return DomainObject::WithResponse(std::move(m.value()));
}
}
};
template <>
class ::fidl::Result<::test_protocollayouts::OpenProtocol::StrictTwoWayWithError> final : public ::fit::result<::fidl::ErrorsIn<::test_protocollayouts::OpenProtocol::StrictTwoWayWithError>, ::test_protocollayouts_imported::ComposedOpenProtocolStrictTwoWayWithErrorResponse> {
public:
using ::fit::result<::fidl::ErrorsIn<::test_protocollayouts::OpenProtocol::StrictTwoWayWithError>, ::test_protocollayouts_imported::ComposedOpenProtocolStrictTwoWayWithErrorResponse>::result;
protected:
Result() = default;
};
template <>
class ::fidl::internal::NaturalClientImpl<::test_protocollayouts::OpenProtocol> final : public ::fidl::internal::NaturalClientBase {
public:
using NaturalClientBase::NaturalClientBase;
::fidl::internal::NaturalThenable<::test_protocollayouts::OpenProtocol::FlexibleTwoWayNoError> FlexibleTwoWayNoError(const ::fidl::Request<::test_protocollayouts::OpenProtocol::FlexibleTwoWayNoError>& request) const;
::fidl::internal::NaturalThenable<::test_protocollayouts::OpenProtocol::FlexibleTwoWayWithError> FlexibleTwoWayWithError(const ::fidl::Request<::test_protocollayouts::OpenProtocol::FlexibleTwoWayWithError>& request) const;
::fidl::internal::NaturalThenable<::test_protocollayouts::OpenProtocol::StrictTwoWayNoError> StrictTwoWayNoError(const ::fidl::Request<::test_protocollayouts::OpenProtocol::StrictTwoWayNoError>& request) const;
::fidl::internal::NaturalThenable<::test_protocollayouts::OpenProtocol::StrictTwoWayWithError> StrictTwoWayWithError(const ::fidl::Request<::test_protocollayouts::OpenProtocol::StrictTwoWayWithError>& request) const;
::fit::result<::fidl::OneWayError> FlexibleOneWay(const ::fidl::Request<::test_protocollayouts::OpenProtocol::FlexibleOneWay>& request) const;
::fit::result<::fidl::OneWayError> StrictOneWay(const ::fidl::Request<::test_protocollayouts::OpenProtocol::StrictOneWay>& request) const;
::fit::result<::fidl::OneWayError> FlexibleOneWayNamedPayload(const ::fidl::Request<::test_protocollayouts::OpenProtocol::FlexibleOneWayNamedPayload>& request) const;
};
#endif // __Fuchsia__
#ifdef __Fuchsia__
template <>
class ::fidl::internal::NaturalSyncClientImpl<::test_protocollayouts::OpenProtocol> final
: public ::fidl::internal::SyncEndpointManagedVeneer<::fidl::internal::NaturalSyncClientImpl<::test_protocollayouts::OpenProtocol>> {
public:
::fidl::Result<::test_protocollayouts::OpenProtocol::FlexibleTwoWayNoError> FlexibleTwoWayNoError(const ::fidl::Request<::test_protocollayouts::OpenProtocol::FlexibleTwoWayNoError>& request);
::fidl::Result<::test_protocollayouts::OpenProtocol::FlexibleTwoWayWithError> FlexibleTwoWayWithError(const ::fidl::Request<::test_protocollayouts::OpenProtocol::FlexibleTwoWayWithError>& request);
::fidl::Result<::test_protocollayouts::OpenProtocol::StrictTwoWayNoError> StrictTwoWayNoError(const ::fidl::Request<::test_protocollayouts::OpenProtocol::StrictTwoWayNoError>& request);
::fidl::Result<::test_protocollayouts::OpenProtocol::StrictTwoWayWithError> StrictTwoWayWithError(const ::fidl::Request<::test_protocollayouts::OpenProtocol::StrictTwoWayWithError>& request);
::fit::result<::fidl::OneWayError> FlexibleOneWay(const ::fidl::Request<::test_protocollayouts::OpenProtocol::FlexibleOneWay>& request);
::fit::result<::fidl::OneWayError> StrictOneWay(const ::fidl::Request<::test_protocollayouts::OpenProtocol::StrictOneWay>& request);
::fit::result<::fidl::OneWayError> FlexibleOneWayNamedPayload(const ::fidl::Request<::test_protocollayouts::OpenProtocol::FlexibleOneWayNamedPayload>& request);
private:
::fidl::UnownedClientEnd<::test_protocollayouts::OpenProtocol> _client_end() const {
return ::fidl::UnownedClientEnd<::test_protocollayouts::OpenProtocol>(
_transport().get<::fidl::internal::ChannelTransport>());
}
};
#endif // __Fuchsia__
#ifdef __Fuchsia__
template <>
class ::fidl::internal::NaturalEventHandlerInterface<::test_protocollayouts::OpenProtocol> : public ::fidl::internal::BaseEventHandlerInterface, public ::fidl::UnknownEventHandler<::test_protocollayouts::OpenProtocol> {
public:
NaturalEventHandlerInterface() = default;
virtual ~NaturalEventHandlerInterface() = default;
virtual void FlexibleEvent(::fidl::Event<::test_protocollayouts::OpenProtocol::FlexibleEvent>&) = 0;
virtual void StrictEvent(::fidl::Event<::test_protocollayouts::OpenProtocol::StrictEvent>&) = 0;
};
template <>
class ::fidl::AsyncEventHandler<::test_protocollayouts::OpenProtocol>
: public ::fidl::internal::NaturalEventHandlerInterface<::test_protocollayouts::OpenProtocol>, public ::fidl::internal::AsyncEventHandler {
public:
AsyncEventHandler() = default;
void FlexibleEvent(::fidl::Event<::test_protocollayouts::OpenProtocol::FlexibleEvent>&) override {}
void StrictEvent(::fidl::Event<::test_protocollayouts::OpenProtocol::StrictEvent>&) override {}
};
template <>
class ::fidl::SyncEventHandler<::test_protocollayouts::OpenProtocol>
: public ::fidl::internal::NaturalEventHandlerInterface<::test_protocollayouts::OpenProtocol>, public ::fidl::internal::SyncEventHandler {
public:
SyncEventHandler() = default;
// Handle all possible events defined in this protocol.
// Blocks to consume exactly one message from the channel, then call the corresponding virtual
// method.
::fidl::Status HandleOneEvent(
::fidl::UnownedClientEnd<::test_protocollayouts::OpenProtocol> client_end);
};
template <>
class ::fidl::internal::NaturalEventDispatcher<::test_protocollayouts::OpenProtocol> final : public ::fidl::internal::IncomingEventDispatcher<::fidl::internal::NaturalEventHandlerInterface<::test_protocollayouts::OpenProtocol>> {
public:
explicit NaturalEventDispatcher(::fidl::internal::NaturalEventHandlerInterface<::test_protocollayouts::OpenProtocol>* event_handler)
: IncomingEventDispatcher(event_handler) {}
::fidl::Status DispatchEvent(
::fidl::IncomingHeaderAndMessage& msg,
internal::MessageStorageViewBase* storage_view) override;
};
#endif // __Fuchsia__
#ifdef __Fuchsia__
template <>
class ::fidl::internal::NaturalWeakEventSender<::test_protocollayouts::OpenProtocol> : public ::fidl::internal::WeakEventSenderBase {
public:
using WeakEventSenderBase::WeakEventSenderBase;
::fit::result<::fidl::OneWayError> FlexibleEvent(const ::test_protocollayouts_imported::ComposedOpenProtocolFlexibleEventRequest& payload);
::fit::result<::fidl::OneWayError> StrictEvent(const ::test_protocollayouts_imported::ComposedOpenProtocolStrictEventRequest& payload);
};
template <>
class ::fidl::internal::NaturalEventSender<::test_protocollayouts::OpenProtocol>
: public ::fidl::internal::SyncEndpointManagedVeneer<::fidl::internal::NaturalEventSender<::test_protocollayouts::OpenProtocol>> {
public:
using SyncEndpointManagedVeneer::SyncEndpointManagedVeneer;
::fit::result<::fidl::OneWayError> FlexibleEvent(const ::test_protocollayouts_imported::ComposedOpenProtocolFlexibleEventRequest& payload);
::fit::result<::fidl::OneWayError> StrictEvent(const ::test_protocollayouts_imported::ComposedOpenProtocolStrictEventRequest& payload);
};
#endif // __Fuchsia__
template <>
class ::fidl::internal::NaturalCompleterBase<::test_protocollayouts::OpenProtocol::FlexibleTwoWayNoError> : public ::fidl::CompleterBase {
public:
void Reply(const ::fidl::Response<::test_protocollayouts::OpenProtocol::FlexibleTwoWayNoError>& response);
protected:
using ::fidl::CompleterBase::CompleterBase;
};
template <>
class ::fidl::internal::NaturalCompleterBase<::test_protocollayouts::OpenProtocol::FlexibleTwoWayWithError> : public ::fidl::CompleterBase {
public:
void Reply(const ::fidl::Response<::test_protocollayouts::OpenProtocol::FlexibleTwoWayWithError>& response);
protected:
using ::fidl::CompleterBase::CompleterBase;
};
template <>
class ::fidl::internal::NaturalCompleterBase<::test_protocollayouts::OpenProtocol::StrictTwoWayNoError> : public ::fidl::CompleterBase {
public:
void Reply(const ::fidl::Response<::test_protocollayouts::OpenProtocol::StrictTwoWayNoError>& response);
protected:
using ::fidl::CompleterBase::CompleterBase;
};
template <>
class ::fidl::internal::NaturalCompleterBase<::test_protocollayouts::OpenProtocol::StrictTwoWayWithError> : public ::fidl::CompleterBase {
public:
void Reply(const ::fidl::Response<::test_protocollayouts::OpenProtocol::StrictTwoWayWithError>& response);
protected:
using ::fidl::CompleterBase::CompleterBase;
};
template <>
class ::fidl::Server<::test_protocollayouts::OpenProtocol> : public ::fidl::internal::IncomingMessageDispatcher, public ::fidl::UnknownMethodHandler<::test_protocollayouts::OpenProtocol> {
public:
Server() = default;
virtual ~Server() = default;
// The FIDL protocol type that is implemented by this server.
using _EnclosingProtocol = ::test_protocollayouts::OpenProtocol;
using Handler = fidl::ProtocolHandler<::test_protocollayouts::OpenProtocol>;
using FlexibleOneWayRequest = ::fidl::Request<::test_protocollayouts::OpenProtocol::FlexibleOneWay>;
using FlexibleOneWayCompleter = ::fidl::internal::NaturalCompleter<::test_protocollayouts::OpenProtocol::FlexibleOneWay>;
virtual void FlexibleOneWay(FlexibleOneWayRequest& request,
FlexibleOneWayCompleter::Sync& completer) = 0;
using FlexibleTwoWayNoErrorRequest = ::fidl::Request<::test_protocollayouts::OpenProtocol::FlexibleTwoWayNoError>;
using FlexibleTwoWayNoErrorCompleter = ::fidl::internal::NaturalCompleter<::test_protocollayouts::OpenProtocol::FlexibleTwoWayNoError>;
virtual void FlexibleTwoWayNoError(FlexibleTwoWayNoErrorRequest& request,
FlexibleTwoWayNoErrorCompleter::Sync& completer) = 0;
using FlexibleTwoWayWithErrorRequest = ::fidl::Request<::test_protocollayouts::OpenProtocol::FlexibleTwoWayWithError>;
using FlexibleTwoWayWithErrorCompleter = ::fidl::internal::NaturalCompleter<::test_protocollayouts::OpenProtocol::FlexibleTwoWayWithError>;
virtual void FlexibleTwoWayWithError(FlexibleTwoWayWithErrorRequest& request,
FlexibleTwoWayWithErrorCompleter::Sync& completer) = 0;
using StrictOneWayRequest = ::fidl::Request<::test_protocollayouts::OpenProtocol::StrictOneWay>;
using StrictOneWayCompleter = ::fidl::internal::NaturalCompleter<::test_protocollayouts::OpenProtocol::StrictOneWay>;
virtual void StrictOneWay(StrictOneWayRequest& request,
StrictOneWayCompleter::Sync& completer) = 0;
using StrictTwoWayNoErrorRequest = ::fidl::Request<::test_protocollayouts::OpenProtocol::StrictTwoWayNoError>;
using StrictTwoWayNoErrorCompleter = ::fidl::internal::NaturalCompleter<::test_protocollayouts::OpenProtocol::StrictTwoWayNoError>;
virtual void StrictTwoWayNoError(StrictTwoWayNoErrorRequest& request,
StrictTwoWayNoErrorCompleter::Sync& completer) = 0;
using StrictTwoWayWithErrorRequest = ::fidl::Request<::test_protocollayouts::OpenProtocol::StrictTwoWayWithError>;
using StrictTwoWayWithErrorCompleter = ::fidl::internal::NaturalCompleter<::test_protocollayouts::OpenProtocol::StrictTwoWayWithError>;
virtual void StrictTwoWayWithError(StrictTwoWayWithErrorRequest& request,
StrictTwoWayWithErrorCompleter::Sync& completer) = 0;
using FlexibleOneWayNamedPayloadRequest = ::fidl::Request<::test_protocollayouts::OpenProtocol::FlexibleOneWayNamedPayload>;
using FlexibleOneWayNamedPayloadCompleter = ::fidl::internal::NaturalCompleter<::test_protocollayouts::OpenProtocol::FlexibleOneWayNamedPayload>;
virtual void FlexibleOneWayNamedPayload(FlexibleOneWayNamedPayloadRequest& request,
FlexibleOneWayNamedPayloadCompleter::Sync& completer) = 0;
// |bind_handler| returns a handler that binds incoming connections to this
// server implementation.
//
// The returned handler borrows the server instance.
// The server must outlive the provided |dispatcher|. Only after
// the dispatcher is shutdown will it be safe to destroy the servers.
// The server should not be moved.
Handler bind_handler(async_dispatcher_t* dispatcher) {
return [impl = this, dispatcher = dispatcher](::fidl::ServerEnd<::test_protocollayouts::OpenProtocol> request) {
(void)::fidl::BindServer(dispatcher, std::move(request), impl);
};
}
private:
void dispatch_message(
::fidl::IncomingHeaderAndMessage&& msg, ::fidl::Transaction* txn,
::fidl::internal::MessageStorageViewBase* storage_view) final;
};
#ifdef __Fuchsia__
template <>
struct ::fidl::internal::NaturalServerDispatcher<::test_protocollayouts::OpenProtocol> final {
NaturalServerDispatcher() = delete;
static void Dispatch(::fidl::Server<::test_protocollayouts::OpenProtocol>* impl, ::fidl::IncomingHeaderAndMessage&& msg,
internal::MessageStorageViewBase* storage_view,
::fidl::Transaction* txn);
private:
static const ::fidl::internal::MethodEntry entries_[];
static const ::fidl::internal::MethodEntry* entries_end_;
static const ::fidl::internal::UnknownMethodHandlerEntry unknown_method_handler_entry_;
};
#endif // __Fuchsia__
#pragma clang diagnostic pop