#[doc(hidden)]
#[macro_export]
macro_rules! _private_split_reactor_attrs {
(
peel: module
state: $state:tt
pass: $pass:tt
found: $_old:tt
attrs: { #[module($($args:tt)*)] $($more:tt)* }
) => {
$crate::_private_split_reactor_attrs! {
peel: module
state: $state
pass: $pass
found: { $($args)* }
attrs: { $($more)* }
}
};
(
peel: event
state: $state:tt
pass: $pass:tt
found: $_old:tt
attrs: { #[event($($args:tt)*)] $($more:tt)* }
) => {
$crate::_private_split_reactor_attrs! {
peel: event
state: $state
pass: $pass
found: { $($args)* }
attrs: { $($more)* }
}
};
(
peel: $peel:ident
state: $state:tt
pass: { $($pass:tt)* }
found: $found:tt
attrs: { #[$($other:tt)*] $($more:tt)* }
) => {
$crate::_private_split_reactor_attrs! {
peel: $peel
state: $state
pass: { $($pass)* #[$($other)*] }
found: $found
attrs: { $($more)* }
}
};
(
peel: module
state: $state:tt
pass: $pass:tt
found: $found:tt
attrs: { }
) => {
$crate::_private_define_modules! {
@after_split
state: $state
pass: $pass
found: $found
}
};
(
peel: event
state: $state:tt
pass: $pass:tt
found: $found:tt
attrs: { }
) => {
$crate::_private_define_events! {
@after_split
state: $state
pass: $pass
found: $found
}
};
}