derpscfg 0.6.0

A brief, incomplete, and mostly wrong derive implementation for scfg
Documentation
//! Example showing how to parse the upstream example snippet.
#![allow(unused_crate_dependencies)]
use derpscfg::prelude::*;

#[derive(Debug, Derpscfg)]
pub struct Model {
    #[scfg(param)]
    pub name: String,
    pub max_speed: String,
    pub weight: String,
    pub lines_served: Vec<String>,
}

#[derive(Debug, Derpscfg)]
pub struct Train {
    #[scfg(param)]
    pub name: String,
    #[scfg(name = "model")]
    pub models: Vec<Model>,
}

#[derive(Debug, Derpscfg)]
pub struct ScfgDemo {
    pub train: Train,
}

fn main() {
    static SCFG_DOC: &str = r#"
train "Shinkansen" {
	model "E5" {
		max-speed 320km/h
		weight 453.5t

		lines-served "Tōhoku" "Hokkaido"
	}

	model "E7" {
		max-speed 275km/h
		weight 540t

		lines-served "Hokuriku" "Jōetsu"
	}
}
"#;

    let demo = derpscfg::parse::<ScfgDemo>(SCFG_DOC).unwrap();
    println!("{demo:?}");
}