salsa/tests/compile-fail/tracked_struct_incompatibles.rs
CheaterCodes 13a2bd7461
Changed return_ref syntax to returns(as_ref) and returns(cloned) (#772)
* Changed `return_ref` syntax to `returns(as_ref)` and `returns(cloned)`

* Implement

* renamed module for return_mode

* Rename macro, fix docs, add tests, validate return modes

* Cargo fmt

---------

Co-authored-by: Micha Reiser <micha@reiser.io>
2025-05-09 07:28:54 +00:00

31 lines
490 B
Rust

#[salsa::tracked(returns(ref))]
struct TrackedWithRetRef {
field: u32,
}
#[salsa::tracked(specify)]
struct TrackedSructWithSpecify {
field: u32,
}
#[salsa::tracked(no_eq)]
struct TrackedStructWithNoEq {
field: u32,
}
#[salsa::tracked(db = Db)]
struct TrackedStructWithDb {
field: u32,
}
#[salsa::tracked(recover_fn = recover)]
struct TrackedStructWithRecover {
field: u32,
}
#[salsa::tracked(lru = 12)]
struct TrackedStructWithLru {
field: u32,
}
fn main() {}