macro_rules! any_expr_enum {
($vis:vis $name:ident : $($v:ident),+ $(,)?) => { ... };
(strict $vis:vis $name:ident : $($v:ident),+ $(,)?) => { ... };
(@impl_strict $vis:vis $name:ident; $($v:ident),+) => { ... };
(@impl_permissive $vis:vis $name:ident; $($v:ident),+) => { ... };
(@ty Path) => { ... };
(@ty Call) => { ... };
(@ty MethodCall) => { ... };
(@ty Closure) => { ... };
(@ty Macro) => { ... };
(@ty Lit) => { ... };
(@ty Array) => { ... };
(@ty Tuple) => { ... };
(@ty Struct) => { ... };
(@ty Paren) => { ... };
(@ty Binary) => { ... };
(@ty Unary) => { ... };
(@ty Block) => { ... };
(@ty If) => { ... };
(@ty Match) => { ... };
(@ty Field) => { ... };
(@ty Index) => { ... };
(@ty Range) => { ... };
(@ty Repeat) => { ... };
(@ty Reference) => { ... };
(@ty Cast) => { ... };
(@ty Let) => { ... };
(@impls $name:ident) => { ... };
}Expand description
example usage: any_expr_enum!(strict pub AnyExprCallPathClosure: Path, Call, Closure); any_expr_enum!(strict AnyExprCall: Call); any_expr_enum!(AnyExprCallPathClosure: Path, Call, Closure); any_expr_enum!(pub AnyExprCallPathClosure: Path, Call, Closure);