Skip to main content

Crate ambisync_macros

Crate ambisync_macros 

Source
Expand description

Proc-macro implementation for the ambisync crate.

Do not depend on this crate directly; use ambisync, which re-exports the macros together with the runtime helpers.

Macros§

scoped
Function-like form of scope: wraps a sequence of items and carries shared defaults in a leading #![defaults(...)] inner attribute.

Attribute Macros§

ambisync
Emit an async and a sync variant of the annotated item.
paired
Add a mechanically derived synchronous sibling for every async method in a mixed trait.
scope
Apply shared defaults to every #[ambisync]/#[ambisync::test]-annotated item inside an inline module. For a file module (mod foo;), use scoped! inside the file instead.
test
Emit a sync #[test] and a cfg-gated async test (default #[tokio::test], override either variant with sync(test_attr = #[...]) / async(test_attr = #[...])) from one async-written test fn.