blob: 8fa3dec74f0828acea5bca324e7c79d7632f2822 [file] [log] [blame]
// WARNING: This file is machine generated by fidlgen.
// fidl_experiment = output_index_json
#pragma once
#include <test/driveroneway/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 Payload = ::test::driveroneway::Payload;
using OneWaySendRequest = ::test::driveroneway::OneWaySendRequest;
template <>
struct MinSize<Payload> {
operator size_t() {
return MinSize<uint32_t>();
}
};
template <>
struct Allocate<Payload> {
Payload operator()(FuzzInput* src, size_t* size) {
ZX_ASSERT(*size >= MinSize<Payload>());
Payload out;
const size_t slack_per_member = (*size - MinSize<Payload>()) / 1;
size_t out_size;
out_size = MinSize<uint32_t>() + slack_per_member;
out.value = Allocate<uint32_t>{}(src, &out_size);
return out;
}
};
template <>
struct MinSize<OneWaySendRequest> {
operator size_t() {
return MinSize<::test::driveroneway::Payload>();
}
};
template <>
struct Allocate<OneWaySendRequest> {
OneWaySendRequest operator()(FuzzInput* src, size_t* size) {
ZX_ASSERT(*size >= MinSize<OneWaySendRequest>());
OneWaySendRequest out;
const size_t slack_per_member = (*size - MinSize<OneWaySendRequest>()) / 1;
size_t out_size;
out_size = MinSize<::test::driveroneway::Payload>() + slack_per_member;
out.payload = Allocate<::test::driveroneway::Payload>{}(src, &out_size);
return out;
}
};
} // namespace fuzzing