#pascal-case #proc-macro #field-name #snake-case #type-name #conversion #type

proc-macro-type-name

Convert Rust field names (snake case) to type names (pascal case) using proc_macro2 identifiers

1 unstable release

0.1.0 Feb 27, 2023

#802 in Procedural macros

MIT/Apache

7KB
91 lines

proc-macro-type-name

Convert Rust field names (snake case) to type names (pascal case) using proc_macro2 identifiers.

Example

use proc_macro_type_name::ToTypeName;

let ident: proc_macro2::Indent = Ident::new("foo_bar", Span::call_site());
let type_ident = (&ident).to_type_ident(ident.span());

assert_eq!(type_ident.to_string(), "FooBar".to_owned());

quote! {
    enum #type_ident {}
}

lib.rs:

proc-macro-type-name

Convert Rust field names (snake case) to type names (pascal case) using proc_macro2 identifiers.

Example

use proc_macro_type_name::ToTypeName;

let ident: proc_macro2::Indent = Ident::new("foo_bar", Span::call_site());
let type_ident = (&ident).to_type_ident(ident.span());

assert_eq!(type_ident.to_string(), "FooBar".to_owned());

quote! {
    enum #type_ident {}
}

Dependencies

~62KB