]>
Commit | Line | Data |
---|---|---|
54a0048b SL |
1 | Tests that specialization is working correctly: |
2 | ||
3 | - Dispatch | |
4 | - [On methods](specialization-basics.rs), includes: | |
5 | - Specialization via adding a trait bound | |
6 | - Including both remote and local traits | |
7 | - Specialization via pure structure (e.g. `(T, U)` vs `(T, T)`) | |
8 | - Specialization via concrete types vs unknown types | |
9 | - In top level of the trait reference | |
10 | - Embedded within another type (`Vec<T>` vs `Vec<i32>`) | |
c295e0f8 | 11 | - [Specialization based on super trait relationships](specialization-supertraits.rs) |
54a0048b SL |
12 | - [On assoc fns](specialization-assoc-fns.rs) |
13 | - [Ensure that impl order doesn't matter](specialization-out-of-order.rs) | |
14 | ||
15 | - Item inheritance | |
16 | - [Correct default cascading for methods](specialization-default-methods.rs) | |
17 | - Inheritance works across impls with varying generics | |
18 | - [With projections](specialization-translate-projections.rs) | |
19 | - [With projections that involve input types](specialization-translate-projections-with-params.rs) | |
20 | ||
21 | - Normalization issues | |
22 | - [Non-default assoc types can be projected](specialization-projection.rs) | |
23 | - Including non-specialized cases | |
24 | - Including specialized cases | |
25 | - [Specialized Impls can happen on projections](specialization-on-projection.rs) | |
26 | - [Projections and aliases play well together](specialization-projection-alias.rs) | |
27 | - [Projections involving specialization allowed in the trait ref for impls, and overlap can still be determined](specialization-overlap-projection.rs) | |
28 | - Only works for the simple case where the most specialized impl directly | |
29 | provides a non-`default` associated type | |
30 | ||
31 | - Across crates | |
32 | - [For traits defined in upstream crate](specialization-allowed-cross-crate.rs) | |
33 | - [Full method dispatch tests, drawing from upstream crate](specialization-cross-crate.rs) | |
34 | - Including *additional* local specializations | |
35 | - [Full method dispatch tests, *without* turning on specialization in local crate](specialization-cross-crate-no-gate.rs) | |
36 | - [Test that defaults cascade correctly from upstream crates](specialization-cross-crate-defaults.rs) | |
37 | - Including *additional* local use of defaults |