use bevy_reflect::{Reflect, TypeInfo, Typed};
fn main() {
#[derive(Reflect)]
struct Player {
name: String,
hp: u8,
max_hp: u8,
}
let player_info = <Player as Typed>::type_info();
let player_docs = player_info.docs().unwrap();
assert_eq!(" The struct that defines our player.\n\n # Example\n\n ```\n let player = Player::new(\"Urist McPlayer\");\n ```", player_docs);
println!("=====[ Player ]=====\n{player_docs}");
if let TypeInfo::Struct(struct_info) = player_info {
for field in struct_info.iter() {
let field_name = field.name();
let field_docs = field.docs().unwrap_or("<NO_DOCUMENTATION>");
println!("-----[ Player::{field_name} ]-----\n{field_docs}");
}
}
}