# WASM compatibility and/or async ## result ## async ```rust #[salsa::tracked] async fn foo(db: &dyn crate::Db) { } #[salsa::tracked] impl Foo { #[salsa::tracked] async fn foo(self, db: &dyn crate::Db) { } } #[salsa::tracked] struct Foo { bar: Field, } ``` * cancellation (probably very nice!) * cyclic recovery (could work?) * parallelism