| // WARNING: This file is machine generated by fidlgen. |
| |
| // fidl_experiment = output_index_json |
| |
| #pragma once |
| |
| #include <test/protocolrequest/cpp/fidl.h> |
| |
| #include "lib/fidl/cpp/fuzzing/traits.h" |
| #include "lib/fidl/cpp/internal/header.h" |
| // For ::std::max_element(). |
| #include <algorithm> |
| // For uint64_t. |
| #include <stdint.h> |
| |
| namespace fuzzing { |
| |
| using ParentGetChildResponse = ::test::protocolrequest::ParentGetChildResponse; |
| using ParentGetChildRequestResponse = ::test::protocolrequest::ParentGetChildRequestResponse; |
| using ParentTakeChildRequest = ::test::protocolrequest::ParentTakeChildRequest; |
| using ParentTakeChildRequestRequest = ::test::protocolrequest::ParentTakeChildRequestRequest; |
| |
| template <> |
| struct MinSize<ParentGetChildResponse> { |
| operator size_t() { |
| return MinSize<::fidl::InterfaceHandle<::test::protocolrequest::Child>>(); |
| } |
| }; |
| template <> |
| struct Allocate<ParentGetChildResponse> { |
| ParentGetChildResponse operator()(FuzzInput* src, size_t* size) { |
| ZX_ASSERT(*size >= MinSize<ParentGetChildResponse>()); |
| ParentGetChildResponse out; |
| const size_t slack_per_member = (*size - MinSize<ParentGetChildResponse>()) / 1; |
| size_t out_size; |
| out_size = MinSize<::fidl::InterfaceHandle<::test::protocolrequest::Child>>() + slack_per_member; |
| out.c = Allocate<::fidl::InterfaceHandle<::test::protocolrequest::Child>>{}(src, &out_size); |
| return out; |
| } |
| }; |
| template <> |
| struct MinSize<ParentGetChildRequestResponse> { |
| operator size_t() { |
| return MinSize<::fidl::InterfaceRequest<::test::protocolrequest::Child>>(); |
| } |
| }; |
| template <> |
| struct Allocate<ParentGetChildRequestResponse> { |
| ParentGetChildRequestResponse operator()(FuzzInput* src, size_t* size) { |
| ZX_ASSERT(*size >= MinSize<ParentGetChildRequestResponse>()); |
| ParentGetChildRequestResponse out; |
| const size_t slack_per_member = (*size - MinSize<ParentGetChildRequestResponse>()) / 1; |
| size_t out_size; |
| out_size = MinSize<::fidl::InterfaceRequest<::test::protocolrequest::Child>>() + slack_per_member; |
| out.r = Allocate<::fidl::InterfaceRequest<::test::protocolrequest::Child>>{}(src, &out_size); |
| return out; |
| } |
| }; |
| template <> |
| struct MinSize<ParentTakeChildRequest> { |
| operator size_t() { |
| return MinSize<::fidl::InterfaceHandle<::test::protocolrequest::Child>>(); |
| } |
| }; |
| template <> |
| struct Allocate<ParentTakeChildRequest> { |
| ParentTakeChildRequest operator()(FuzzInput* src, size_t* size) { |
| ZX_ASSERT(*size >= MinSize<ParentTakeChildRequest>()); |
| ParentTakeChildRequest out; |
| const size_t slack_per_member = (*size - MinSize<ParentTakeChildRequest>()) / 1; |
| size_t out_size; |
| out_size = MinSize<::fidl::InterfaceHandle<::test::protocolrequest::Child>>() + slack_per_member; |
| out.c = Allocate<::fidl::InterfaceHandle<::test::protocolrequest::Child>>{}(src, &out_size); |
| return out; |
| } |
| }; |
| template <> |
| struct MinSize<ParentTakeChildRequestRequest> { |
| operator size_t() { |
| return MinSize<::fidl::InterfaceRequest<::test::protocolrequest::Child>>(); |
| } |
| }; |
| template <> |
| struct Allocate<ParentTakeChildRequestRequest> { |
| ParentTakeChildRequestRequest operator()(FuzzInput* src, size_t* size) { |
| ZX_ASSERT(*size >= MinSize<ParentTakeChildRequestRequest>()); |
| ParentTakeChildRequestRequest out; |
| const size_t slack_per_member = (*size - MinSize<ParentTakeChildRequestRequest>()) / 1; |
| size_t out_size; |
| out_size = MinSize<::fidl::InterfaceRequest<::test::protocolrequest::Child>>() + slack_per_member; |
| out.r = Allocate<::fidl::InterfaceRequest<::test::protocolrequest::Child>>{}(src, &out_size); |
| return out; |
| } |
| }; |
| |
| } // namespace fuzzing |