mirror of
https://github.com/lennart-k/rustical.git
synced 2025-12-13 17:02:32 +00:00
13 lines
430 B
Rust
13 lines
430 B
Rust
pub(crate) fn get_generic_type(ty: &syn::Type) -> Option<&syn::Type> {
|
|
if let syn::Type::Path(syn::TypePath { path, .. }) = ty
|
|
&& let Some(seg) = path.segments.last()
|
|
&& let syn::PathArguments::AngleBracketed(syn::AngleBracketedGenericArguments {
|
|
args, ..
|
|
}) = &seg.arguments
|
|
&& let Some(syn::GenericArgument::Type(t)) = &args.first()
|
|
{
|
|
return Some(t);
|
|
}
|
|
None
|
|
}
|