macro_rules! clone {
    () => { ... };
    ([$($tt:tt)*], $expr:expr) => { ... };
    ($(,)? mut { $expr:expr } as $ident:ident $($tt:tt)*) => { ... };
    ($(,)? mut $ident:ident $($tt:tt)*) => { ... };
    ($(,)? { $expr:expr } as $ident:ident $($tt:tt)*) => { ... };
    ($(,)? $ident:ident $($tt:tt)*) => { ... };
    ($(,)?) => { ... };
}
Expand description

Please see the crate documentation for syntax and examples, but in a jist, the syntax is as follows:

clone!([$($(mut)? $FORM)*], $expr);

where $FORM is one of either:

  • ident
  • { $expr } as ident