#[macro_export]
macro_rules! region_cached {
() => {};
($(#[$attr:meta])* $vis:vis static $NAME:ident: $t:ty = $initial_value:expr; $($rest:tt)*) => (
$crate::region_cached!($(#[$attr])* $vis static $NAME: $t = $initial_value);
$crate::region_cached!($($rest)*);
);
($(#[$attr:meta])* $vis:vis static $NAME:ident: $t:ty = $initial_value:expr) => {
$crate::__private::linked::thread_local_rc! {
$(#[$attr])* $vis static $NAME: $crate::RegionCached<$t> =
$crate::RegionCached::new($initial_value);
}
};
}