#![no_main] use libfuzzer_sys::fuzz_target; use pumpkin_nbt::deserializer::{from_bytes, from_bytes_unnamed}; use serde::Deserialize; use std::io::Cursor; #[derive(Deserialize, Debug, PartialEq)] struct FuzzStruct { byte: i8, short: i16, int: i32, long: i64, float: f32, double: f64, string: String, byte_array: Vec, int_array: Vec, long_array: Vec, list_string: Vec, nested: Option>, } fuzz_target!(|data: &[u8]| { let cursor = Cursor::new(data); let _: Result = from_bytes(cursor); let cursor_unnamed = Cursor::new(data); let _: Result = from_bytes_unnamed(cursor_unnamed); });