Macro event
macro_rules! event {
(name: $name:expr, target: $target:expr, parent: $parent:expr, $lvl:expr, { $($fields:tt)* } ) => { ... };
(name: $name:expr, target: $target:expr, parent: $parent:expr, $lvl:expr, { $($fields:tt)* }, $($arg:tt)+ ) => { ... };
(name: $name:expr, target: $target:expr, parent: $parent:expr, $lvl:expr, $($k:ident).+ = $($fields:tt)* ) => { ... };
(name: $name:expr, target: $target:expr, parent: $parent:expr, $lvl:expr, $($arg:tt)+) => { ... };
(name: $name:expr, target: $target:expr, $lvl:expr, { $($fields:tt)* } ) => { ... };
(name: $name:expr, target: $target:expr, $lvl:expr, { $($fields:tt)* }, $($arg:tt)+ ) => { ... };
(name: $name:expr, target: $target:expr, $lvl:expr, $($k:ident).+ = $($fields:tt)* ) => { ... };
(name: $name:expr, target: $target:expr, $lvl:expr, $($arg:tt)+) => { ... };
(target: $target:expr, parent: $parent:expr, $lvl:expr, { $($fields:tt)* } ) => { ... };
(target: $target:expr, parent: $parent:expr, $lvl:expr, { $($fields:tt)* }, $($arg:tt)+ ) => { ... };
(target: $target:expr, parent: $parent:expr, $lvl:expr, $($k:ident).+ = $($fields:tt)* ) => { ... };
(target: $target:expr, parent: $parent:expr, $lvl:expr, $($arg:tt)+) => { ... };
(name: $name:expr, parent: $parent:expr, $lvl:expr, { $($fields:tt)* } ) => { ... };
(name: $name:expr, parent: $parent:expr, $lvl:expr, { $($fields:tt)* }, $($arg:tt)+ ) => { ... };
(name: $name:expr, parent: $parent:expr, $lvl:expr, $($k:ident).+ = $($fields:tt)* ) => { ... };
(name: $name:expr, parent: $parent:expr, $lvl:expr, $($arg:tt)+) => { ... };
(name: $name:expr, $lvl:expr, { $($fields:tt)* } ) => { ... };
(name: $name:expr, $lvl:expr, { $($fields:tt)* }, $($arg:tt)+ ) => { ... };
(name: $name:expr, $lvl:expr, $($k:ident).+ = $($fields:tt)* ) => { ... };
(name: $name:expr, $lvl:expr, $($arg:tt)+ ) => { ... };
(target: $target:expr, $lvl:expr, { $($fields:tt)* } ) => { ... };
(target: $target:expr, $lvl:expr, { $($fields:tt)* }, $($arg:tt)+ ) => { ... };
(target: $target:expr, $lvl:expr, $($k:ident).+ = $($fields:tt)* ) => { ... };
(target: $target:expr, $lvl:expr, $($arg:tt)+ ) => { ... };
(parent: $parent:expr, $lvl:expr, { $($fields:tt)* }, $($arg:tt)+ ) => { ... };
(parent: $parent:expr, $lvl:expr, $($k:ident).+ = $($field:tt)*) => { ... };
(parent: $parent:expr, $lvl:expr, ?$($k:ident).+ = $($field:tt)*) => { ... };
(parent: $parent:expr, $lvl:expr, %$($k:ident).+ = $($field:tt)*) => { ... };
(parent: $parent:expr, $lvl:expr, $($k:ident).+, $($field:tt)*) => { ... };
(parent: $parent:expr, $lvl:expr, %$($k:ident).+, $($field:tt)*) => { ... };
(parent: $parent:expr, $lvl:expr, ?$($k:ident).+, $($field:tt)*) => { ... };
(parent: $parent:expr, $lvl:expr, $($arg:tt)+ ) => { ... };
( $lvl:expr, { $($fields:tt)* }, $($arg:tt)+ ) => { ... };
( $lvl:expr, { $($fields:tt)* }, $($arg:tt)+ ) => { ... };
($lvl:expr, $($k:ident).+ = $($field:tt)*) => { ... };
($lvl:expr, $($k:ident).+, $($field:tt)*) => { ... };
($lvl:expr, ?$($k:ident).+, $($field:tt)*) => { ... };
($lvl:expr, %$($k:ident).+, $($field:tt)*) => { ... };
($lvl:expr, ?$($k:ident).+) => { ... };
($lvl:expr, %$($k:ident).+) => { ... };
($lvl:expr, $($k:ident).+) => { ... };
( $lvl:expr, $($arg:tt)+ ) => { ... };
}
Constructs a new Event.
The event macro is invoked with a Level and up to 32 key-value fields.
Optionally, a format string and arguments may follow the fields; this will
be used to construct an implicit field named "message".
See the top-level documentation for details on the syntax accepted by this macro.
Examples
use ;
#