Skip to content

Commit 1d1523b

Browse files
authored
bug [salsa-macros]: Improve debug name of tracked methods (#755)
1 parent 778b9bc commit 1d1523b

File tree

2 files changed

+18
-1
lines changed

2 files changed

+18
-1
lines changed

components/salsa-macros/src/tracked_impl.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ impl Macro {
8787
};
8888

8989
let InnerTrait = self.hygiene.ident("InnerTrait");
90-
let inner_fn_name = self.hygiene.ident("inner_fn_name");
90+
let inner_fn_name = self.hygiene.ident(&fn_item.sig.ident.to_string());
9191

9292
let MethodArguments {
9393
self_token,

tests/tracked_method.rs

+17
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,11 @@
22
//! compiles and executes successfully.
33
#![allow(warnings)]
44

5+
use common::LogDatabase as _;
6+
use expect_test::expect;
7+
8+
mod common;
9+
510
trait TrackedTrait {
611
fn tracked_trait_fn(self, db: &dyn salsa::Database) -> u32;
712
}
@@ -40,3 +45,15 @@ fn execute() {
4045
// assert_eq!(*object.tracked_fn_ref(&db), 66);
4146
assert_eq!(object.tracked_trait_fn(&db), 88);
4247
}
48+
49+
#[test]
50+
fn debug_name() {
51+
let mut db = common::ExecuteValidateLoggerDatabase::default();
52+
let object = MyInput::new(&mut db, 22);
53+
54+
assert_eq!(object.tracked_trait_fn(&db), 88);
55+
db.assert_logs(expect![[r#"
56+
[
57+
"salsa_event(WillExecute { database_key: tracked_trait_fn_(Id(0)) })",
58+
]"#]]);
59+
}

0 commit comments

Comments
 (0)