Macro evm_coder::make_signature
source · macro_rules! make_signature { (new $($tt:tt)*) => { ... }; (@size;) => { ... }; (@size; fixed($expr:expr) $($tt:tt)*) => { ... }; (@size; nameof($expr:expr) $($tt:tt)*) => { ... }; (@size; numof($expr:expr) $($tt:tt)*) => { ... }; (@size; shift_left($expr:expr) $($tt:tt)*) => { ... }; (@data($dst:ident, $dst_offset:ident);) => { ... }; (@data($dst:ident, $dst_offset:ident); fixed($expr:expr) $($tt:tt)*) => { ... }; (@data($dst:ident, $dst_offset:ident); nameof($expr:expr) $($tt:tt)*) => { ... }; (@data($dst:ident, $dst_offset:ident); numof($expr:expr) $($tt:tt)*) => { ... }; (@data($dst:ident, $dst_offset:ident); shift_left($expr:expr) $($tt:tt)*) => { ... }; (@copy($src:expr, $dst:expr, $src_len:expr, $dst_offset:ident)) => { ... }; }
Expand description
Macro to create signatures of types and functions.
Format for creating a type of signature:
ⓘ
make_signature!(new fixed("uint8")); // Simple type
make_signature!(new fixed("(") nameof(u8) fixed(",") nameof(u8) fixed(")")); // Composite type