parse_optional_angle_bracketed_generics

Macro parse_optional_angle_bracketed_generics 

Source
macro_rules! parse_optional_angle_bracketed_generics {
    ($($args:tt)*) => { ... };
}
Expand description

Parse an optional angle bracketed generics <'a, T, const N: usize>

See also parse_generics!.

§Examples:

§no angle bracketed generics
macro_rules! expect_no_generics {
    (rest { () -> u8 {} }) => {};
}
syn_lite::parse_optional_angle_bracketed_generics! {
    on_finish {expect_no_generics!}
    input { () -> u8 {} }
}
§empty generics
macro_rules! expect {
    (
        lt {<}
        parsed_generics {
            generics {}
            impl_generics {}
            type_generics {}
            generics_info {}
        }
        gt {>}
        rest { () -> u8 {} }
    ) => {};
}
syn_lite::parse_optional_angle_bracketed_generics! {
    on_finish {expect!}
    input { <>() -> u8 {} }
}
§lifetime generics
macro_rules! expect {
    (
        lt {<}
        parsed_generics {
            generics {'a,}
            impl_generics {'a,}
            type_generics {'a,}
            generics_info {
                { lifetime {'a} }
            }
        }
        gt {>}
        rest { () ->&'a str {} }
    ) => {};
}
syn_lite::parse_optional_angle_bracketed_generics! {
    on_finish {expect!}
    input { <'a>() -> &'a str {} }
}