about summary refs log tree commit diff
path: root/src/tools/rust-analyzer/crates/query-group-macro/tests/arity.rs
blob: f1b29612a173fa4240950eb532ae07303311dfba (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
use query_group_macro::query_group;

#[query_group]
pub trait ArityDb: salsa::Database {
    #[salsa::invoke_interned(one)]
    fn one(&self, a: ()) -> String;

    #[salsa::invoke_interned(two)]
    fn two(&self, a: (), b: ()) -> String;

    #[salsa::invoke_interned(three)]
    fn three(&self, a: (), b: (), c: ()) -> String;

    #[salsa::invoke_interned(none)]
    fn none(&self) -> String;
}

fn one(_db: &dyn ArityDb, _a: ()) -> String {
    String::new()
}

fn two(_db: &dyn ArityDb, _a: (), _b: ()) -> String {
    String::new()
}

fn three(_db: &dyn ArityDb, _a: (), _b: (), _c: ()) -> String {
    String::new()
}

fn none(_db: &dyn ArityDb) -> String {
    String::new()
}