pub(crate) fn attributes_of_expression(expr: &mut Expr) -> Option<&mut Vec<Attribute>> {
    macro_rules! extract_attributes_from {
        ($expr:expr => $($variant:ident),*) => {
            match $expr {
                $(
                    Expr::$variant(e) => Some(&mut e.attrs),
                )*
                    _ => None,
            }
        }
    }

    extract_attributes_from!(expr =>
        Array, Assign, AssignOp, Async, Await, Binary, Block, Box, Break, Call, Cast,
        Closure, Continue, Field, ForLoop, Group, If, Index, Let, Lit, Loop, Macro, Match,
        MethodCall, Paren, Path, Range, Reference, Repeat, Return, Struct, Try, TryBlock, Tuple,
        Type, Unary, Unsafe, While, Yield
    )
}
/// Returns the attributes of the given expression.
Returns the attributes of the given expression.
Returns the attributes of the given expression .
pub(crate) fn attributes_of_expression(expr: &mut Expr) -> Option<&mut Vec<Attribute>> {
    macro_rules! extract_attributes_from {
        ($expr:expr => $($variant:ident),*) => {
            match $expr {
                $(
                    Expr::$variant(e) => Some(&mut e.attrs),
                )*
                    _ => None,
            }
        }
    }
    extract_attributes_from!(expr =>
        Array, Assign, AssignOp, Async, Await, Binary, Block, Box, Break, Call, Cast,
        Closure, Continue, Field, ForLoop, Group, If, Index, Let, Lit, Loop, Macro, Match,
        MethodCall, Paren, Path, Range, Reference, Repeat, Return, Struct, Try, TryBlock, Tuple,
        Type, Unary, Unsafe, While, Yield
    )
}
pub ( crate ) fn attributes_of_expression ( expr : & mut Expr ) -> Option < & mut Vec < Attribute > > { macro_rules! extract_attributes_from { ( $expr : expr $ ( $variant : ident ) * ) => { match $expr { $ ( Expr $variant ( e ) Some ( mut e attrs ) ) * None } } } extract_attributes_from ! ( expr Array Assign AssignOp Async Await Binary Block Box Break Call Cast Closure Continue Field ForLoop Group If Index Let Lit Loop Macro Match MethodCall Paren Path Range Reference Repeat Return Struct Try TryBlock Tuple Type Unary Unsafe While Yield ) }
Returns the attributes of the given expression.
Returns the attributes of the given expression .
expr
&mut Expr
expr
&mut Expr