macro_rules! axis_extension_impl_for_commitment_axis {
($struct_ident:ident) => { ... };
(
@ generic $struct_ty:ty, [$($generic_params:tt)*] $(, where
[$($where_clauses:tt)*])?
) => { ... };
}Expand description
Wiki ADR-030 companion macro: instantiate AxisExtension
for a concrete struct implementing this axis trait. The
macro emits an impl AxisExtension for <StructIdent> block
that delegates dispatch_kernel to the axis-trait methods
per KERNEL_* id. The orphan-rule-conformant per-struct
impl mechanism replacing the blanket
impl<T: <axis>> AxisExtension for T (which would violate
Rust’s orphan rule from any crate that does not define
AxisExtension).