macro_rules! type_path {
(:: $($segment:ident)::*) => { ... };
($($segment:ident)::*) => { ... };
(< $($ty_segment:ident)::* > :: $($segment:ident)::*) => { ... };
(< :: $($ty_segment:ident)::* > :: $($segment:ident)::*) => { ... };
(< $($ty_segment:ident)::* as $($as_segment:ident)::* > :: $($segment:ident)::*) => { ... };
(< :: $($ty_segment:ident)::* as $($as_segment:ident)::* > :: $($segment:ident)::*) => { ... };
(< $($ty_segment:ident)::* as :: $($as_segment:ident)::* > :: $($segment:ident)::*) => { ... };
(< :: $($ty_segment:ident)::* as :: $($as_segment:ident)::* > :: $($segment:ident)::*) => { ... };
}
Expand description
This macro takes type paths of the form my_crate::my_mod::FooBar
and
<my_crate::my_mod::FooBar as my_crate::my_mod::MyTrait>::MyType
and
turns them into a syn::TypePath
.