trl_codegen 1.2.1

This library provides auto generation of some common methods based on Rust macros
Documentation
use syn::{Ident, parse::Parse};

pub enum FieldParam {
    Option,
}

impl Parse for FieldParam {
    fn parse(input: syn::parse::ParseStream) -> syn::Result<Self> {
        if input.peek(Ident) {
            let ident: syn::Ident = input.parse()?;
            match ident.to_string().as_str() {
                "option" => Ok(FieldParam::Option),
                other => Err(input.error(format!("unexpected keyword `{other}`"))),
            }
        } else {
            Err(input.error("Expected identifier"))
        }
    }
}