Cut down on macro nonsense

- InertAtomic replaced atomic_inert! for improved tooling support
- atomic_defaults! is easier to type out than to explain in a docstring
- Changed rustfmt config to better support tiny functions such as as_any
This commit is contained in:
2023-09-15 12:37:10 +01:00
parent 3c0056c2db
commit 0bcf10659b
73 changed files with 418 additions and 654 deletions

View File

@@ -107,6 +107,7 @@ macro_rules! write_fn_step {
$( $arg: $typ, )*
expr_inst: $crate::interpreted::ExprInst,
}
impl $crate::utils::ddispatch::Responder for $name {}
$crate::atomic_redirect!($name, expr_inst);
$crate::atomic_impl!($name);
$crate::externfn_impl!(
@@ -136,6 +137,7 @@ macro_rules! write_fn_step {
expr_inst: $crate::interpreted::ExprInst,
}
$crate::atomic_redirect!($name, expr_inst);
impl $crate::utils::ddispatch::Responder for $name {}
$crate::atomic_impl!(
$name,
|Self{ $($arg, )* expr_inst }: &Self, _| {
@@ -157,6 +159,6 @@ macro_rules! write_fn_step {
}
};
(@CONV $locxname:expr) => {
($locxname).try_into()?
($locxname).downcast()?
};
}