summaryrefslogtreecommitdiffstats
path: root/tests/ui/const-generics/type-dependent/non-local.rs
blob: b755de30b9ce9fafdbe910c47245c7061b873f48 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
// aux-build:type_dependent_lib.rs
// run-pass
extern crate type_dependent_lib;

use type_dependent_lib::*;

fn main() {
    let s = Struct::<42>::new();
    assert_eq!(s.same_ty::<7>(), (42, 7));
    assert_eq!(s.different_ty::<19>(), (42, 19));
    assert_eq!(Struct::<1337>::new().different_ty::<96>(), (1337, 96));
    assert_eq!(
        Struct::<18>::new()
            .we_have_to_go_deeper::<19>()
            .containing_ty::<Option<u32>, 3>(),
        (27, 3),
    );

    let s = Struct::<7>::new();
    assert_eq!(s.foo::<18>(), 18);
}