| // 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 |