blob: 61202bb0f5c9a1c8486572a434f7f35a50ec92c3 [file] [log] [blame]
// WARNING: This file is machine generated by fidlgen.
#pragma once
#include <dependent/cpp/libfuzzer.h>
#include <fidl/test/importedconstvalues/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 MyStruct = ::fidl::test::importedconstvalues::MyStruct;
template <>
struct MinSize<MyStruct> {
operator size_t() { return MinSize<uint8_t>(); }
};
template <>
struct Allocate<MyStruct> {
MyStruct operator()(FuzzInput* src, size_t* size) {
ZX_ASSERT(*size >= MinSize<MyStruct>());
MyStruct out;
const size_t slack_per_member = (*size - MinSize<MyStruct>()) / 1;
size_t out_size;
out_size = MinSize<uint8_t>() + slack_per_member;
out.__reserved = Allocate<uint8_t>{}(src, &out_size);
return out;
}
};
} // namespace fuzzing