[][src]Macro derive_less::derive_less

macro_rules! derive_less {
    {
        $(#[$smeta:meta])* $($svis:ident)? struct ... { $(#[$fmeta:meta])? $($fvis:ident)? ... }
        $(#[$emeta:meta])* $($evis:ident)? enum   ... { $(#[$vmeta:meta])?                   ... }
        $($rest:tt)*
    } => { ... };
    {
        $(#[$emeta:meta])* $($evis:ident)? enum   ... { $(#[$vmeta:meta])?                 ... }
        $(#[$smeta:meta])* $($svis:ident)? struct ... { $(#[$fmeta:meta])? $($fvis:ident)? ... }
        $($rest:tt)*
    } => { ... };
    {
        $(#[$smeta:meta])* $($svis:ident)? struct ... { $(#[$fmeta:meta])? $($fvis:ident)? ... }
        $($rest:tt)*
    } => { ... };
    {
        $(#[$emeta:meta])* $($evis:ident)? enum   ... { $(#[$vmeta:meta])?                   ... }
        $($rest:tt)*
    } => { ... };
    {
        ($($smeta:meta)*) ($($svis:ident)?)
        (  $fmeta:meta  ) (  $fvis:ident  )
        ($($emeta:meta)*) ($($evis:ident)?)
        ($($vmeta:meta)?)

        $(#[$current_smeta:meta])*
        struct $name:ident $(< $($generic:tt),* >)* (
            $( $(#[$current_fmeta:meta])* $field:ty),* $(,)*
        );

        $($rest:tt)*
    } => { ... };
    {
        ($($smeta:meta)*) ($($svis:ident)?)
        (  $fmeta:meta  ) (               )
        ($($emeta:meta)*) ($($evis:ident)?)
        ($($vmeta:meta)?)

        $(#[$current_smeta:meta])*
        struct $name:ident $(< $($generic:tt),* >)* (
            $( $(#[$current_fmeta:meta])* $field:ty),* $(,)*
        );

        $($rest:tt)*
    } => { ... };
    {
        ($($smeta:meta)*) ($($svis:ident)?)
        (               ) (  $fvis:ident  )
        ($($emeta:meta)*) ($($evis:ident)?)
        ($($vmeta:meta)?)

        $(#[$current_smeta:meta])*
        struct $name:ident $(< $($generic:tt),* >)* (
            $( $(#[$current_fmeta:meta])* $field:ty),* $(,)*
        );

        $($rest:tt)*
    } => { ... };
    {
        ($($smeta:meta)*) ($($svis:ident)?)
        ($($fmeta:meta)?) ($($fvis:ident)?)
        ($($emeta:meta)*) ($($evis:ident)?)
        (  $vmeta:meta  )

        $(#[$current_emeta:meta])*
        enum $name:ident $(< $($generic:tt),* >)* {
            $( $(#[$current_vmeta:meta])* $variant:ident($($field:ty),*)),* $(,)*
        }

        $($rest:tt)*
    } => { ... };
    {
        ($($smeta:meta)*) ($($svis:ident)?)
        ($($fmeta:meta)?) ($($fvis:ident)?)
        ($($emeta:meta)*) ($($evis:ident)?)
        (               )

        $(#[$current_emeta:meta])*
        enum $name:ident $(< $($generic:tt),* $(,)* >)* {
            $( $(#[$current_vmeta:meta])* $variant:ident($($field:ty),*)),* $(,)*
        }

        $($rest:tt)*
    } => { ... };
    {
        ($($smeta:meta)*) ($($svis:ident)?)
        ($($fmeta:meta)?) ($($fvis:ident)?)
        ($($emeta:meta)*) ($($evis:ident)?)
        ($($vmeta:meta)?)
        $($rest:tt)*
    } => { ... };
}