#[test]Expand description
Both front doors (design-doc §6.1, D46). Registers at link time either
async fn name(ctx: RustdvCtx) -> Result<(), TestError>— the port of@cocotb.test(), decorating a coroutine function; orstruct Name;/type Name = ..;implementingComponent + Default— the port of@pyuvm.test(), decorating a class.
Both expand to the same erased shim, so there is one registry and one execution path behind the two syntaxes.