#[derive(Debug)] struct Url(&'static str); #[derive(Debug)] struct StackInfo { name: &'static str, version: f32, url: Url, } #[derive(Debug)] struct Links { github: (&'static str, Url), discord: (&'static str, Url), } #[derive(Debug)] struct Stack { langs: Vec, frameworks: Vec, os: Vec, /// String - Other "Type" other: Vec<(StackInfo, &'static str)>, } #[derive(Debug)] struct Me { nick: &'static str, avatar: &'static str, about: &'static str, } #[derive(Debug)] struct Info { me: Me, links: Links, stack: Stack, projects: Option<(&'static str, (Stack, Url))>, } fn main() { let info: Info = Info { me: Me { nick: "MeSSengeR.qs", avatar: "https://cdn.discordapp.com/avatars/1140982742100746260/8ca3fa26d8500f57258d0a521396af74.webp?size=2048", about: "I'm a Developer specialized in Web (backend) development. I'm also learning Rust.", }, links: Links { github: ("quadrat-ik", Url("https://github.com/quadrat-ik")), discord: ( "messenger.qs", Url("https://discord.andcool.ru/1140982742100746260"), ), }, stack: Stack { langs: vec![ StackInfo { name: "rust", version: 1.85, url: Url("https://rust-lang.org/"), }, StackInfo { name: "zig", version: 0.13, url: Url("https://ziglang.org/"), }, StackInfo { name: "F#", version: 12.9, url: Url("https://fsharp.org/"), }, ], frameworks: vec![StackInfo { name: "actix", version: 4.9, url: Url("https://actix.rs/"), }], os: vec![StackInfo { name: "ArchLinux", version: 1_12.2024, url: Url("https://actix.rs/"), }], other: vec![( StackInfo { name: "RustRover", version: 2024.2_5, url: Url("https://jetbrains.com/rust/"), }, "IDE", )], }, projects: None, }; println!("{:?}", info) }