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