14 unstable releases (3 breaking)
0.5.0 |
|
---|---|
0.4.0 | Nov 5, 2024 |
0.3.7 | Nov 1, 2024 |
0.3.6 | Oct 31, 2024 |
0.1.1 | Oct 2, 2024 |
#2343 in Procedural macros
121 downloads per month
76KB
1.5K
SLoC
Introduction
This is a helper library to generate complex and nested structures by a simple macro. It is based on the serde
library that is used to serialize and deserialize data in Rust.
The name yuuka
comes from the character Yuuka in the game Blue Archive.
Still in development, the API may change in the future.
Quick Start
use serde::{Serialize, Deserialize};
use yuuka::derive_struct;
derive_struct!(
#[derive(Serialize, Deserialize)]
GameDevelopment {
description: String,
members: Members {
script_writer: String,
illustrator: String,
programmer: String,
tester: Vec<String>,
},
projects: [Project {
project_name: String,
engine: String,
}],
}
);
let config = auto!(GameDevelopment {
description: "A game development team".to_string(),
members: {
script_writer: "Momoi".to_string(),
illustrator: "Midori".to_string(),
programmer: "Yuzu".to_string(),
tester: vec!["Arisu".to_string(), "Key".to_string()],
},
projects: vec![
Project {
project_name: "777 Game Launcher".to_string(),
engine: "Tauri".to_string(),
},
Project {
project_name: "Blue Archive".to_string(),
engine: "Unity".to_string(),
},
]
});
More information can be found in the documentation (English | 简体中文 | 繁體中文).
Dependencies
~0.5–1.2MB
~25K SLoC