blob: dd394bb6011c87880b74effc6e62ef8abbe5df63 [file] [log] [blame]
// WARNING: This file is machine generated by fidlgen.
#include <fidl/test.versions/cpp/type_conversions.h>
namespace fidl {
namespace internal {
::test_versions::Struct WireNaturalConversionTraits<
::test_versions::wire::Struct,
::test_versions::Struct>::ToNatural(::test_versions::wire::Struct src) {
return ::test_versions::Struct(
WireNaturalConversionTraits<uint32_t, uint32_t>::ToNatural(
std::move(src.x)));
}
::test_versions::wire::Struct WireNaturalConversionTraits<
::test_versions::wire::Struct,
::test_versions::Struct>::ToWire(fidl::AnyArena& arena,
::test_versions::Struct src) {
return ::test_versions::wire::Struct{
.x = WireNaturalConversionTraits<uint32_t, uint32_t>::ToWire(
arena, std::move(src.x())),
};
}
::test_versions::Table WireNaturalConversionTraits<
::test_versions::wire::Table,
::test_versions::Table>::ToNatural(::test_versions::wire::Table src) {
::test_versions::Table dst;
if (src.has_x()) {
dst.x() = WireNaturalConversionTraits<uint32_t, uint32_t>::ToNatural(
std::move(src.x()));
}
return dst;
}
::test_versions::wire::Table WireNaturalConversionTraits<
::test_versions::wire::Table,
::test_versions::Table>::ToWire(fidl::AnyArena& arena,
::test_versions::Table src) {
auto builder = ::test_versions::wire::Table::Builder(arena);
if (src.x().has_value()) {
builder.x(WireNaturalConversionTraits<uint32_t, uint32_t>::ToWire(
arena, std::move(src.x().value())));
}
return builder.Build();
}
::test_versions::Union WireNaturalConversionTraits<
::test_versions::wire::Union,
::test_versions::Union>::ToNatural(::test_versions::wire::Union src) {
switch (src.Which()) {
case ::test_versions::wire::Union::Tag::kX:
return ::test_versions::Union::WithX(
WireNaturalConversionTraits<uint32_t, uint32_t>::ToNatural(
std::move(src.x())));
default:
return ::test_versions::Union();
}
}
::test_versions::wire::Union WireNaturalConversionTraits<
::test_versions::wire::Union,
::test_versions::Union>::ToWire(fidl::AnyArena& arena,
::test_versions::Union src) {
switch (src.Which()) {
case ::test_versions::Union::Tag::kX:
return ::test_versions::wire::Union::WithX(
WireNaturalConversionTraits<uint32_t, uint32_t>::ToWire(
arena, std::move(src.x().value())));
default:
return ::test_versions::wire::Union();
}
}
std::unique_ptr<::test_versions::Union> WireNaturalConversionTraits<
::test_versions::wire::Union, std::unique_ptr<::test_versions::Union>>::
ToNatural(::test_versions::wire::Union src) {
if (src.has_invalid_tag()) {
return nullptr;
}
return std::make_unique<::test_versions::Union>(
WireNaturalConversionTraits<
::test_versions::wire::Union,
::test_versions::Union>::ToNatural(std::move(src)));
}
::test_versions::wire::Union WireNaturalConversionTraits<
::test_versions::wire::Union, std::unique_ptr<::test_versions::Union>>::
ToWire(fidl::AnyArena& arena, std::unique_ptr<::test_versions::Union> src) {
if (!src) {
return ::test_versions::wire::Union();
}
return WireNaturalConversionTraits<::test_versions::wire::Union,
::test_versions::Union>::ToWire(arena,
std::move(
*src));
}
#ifdef __Fuchsia__
::fidl::Request<::test_versions::Protocol::Foo>
WireNaturalConversionTraits<::fidl::WireRequest<::test_versions::Protocol::Foo>,
::fidl::Request<::test_versions::Protocol::Foo>>::
ToNatural(::fidl::WireRequest<::test_versions::Protocol::Foo> src) {
return ::fidl::Request<::test_versions::Protocol::Foo>();
}
::fidl::WireRequest<::test_versions::Protocol::Foo>
WireNaturalConversionTraits<::fidl::WireRequest<::test_versions::Protocol::Foo>,
::fidl::Request<::test_versions::Protocol::Foo>>::
ToWire(fidl::AnyArena& arena,
::fidl::Request<::test_versions::Protocol::Foo> src) {
return ::fidl::WireRequest<::test_versions::Protocol::Foo>();
}
#endif // __Fuchsia__
} // namespace internal
} // namespace fidl