]>
Commit | Line | Data |
---|---|---|
dc9dc135 XL |
1 | // ignore-tidy-linelength |
2 | ||
48663c56 | 3 | #![feature(const_generics)] |
48663c56 | 4 | |
dc9dc135 | 5 | #![crate_name = "foo"] |
48663c56 | 6 | |
e74abb32 | 7 | #[derive(PartialEq, Eq)] |
48663c56 XL |
8 | pub enum Order { |
9 | Sorted, | |
10 | Unsorted, | |
11 | } | |
12 | ||
13 | // @has foo/struct.VSet.html '//pre[@class="rust struct"]' 'pub struct VSet<T, const ORDER: Order>' | |
14 | // @has foo/struct.VSet.html '//h3[@id="impl-Send"]/code' 'impl<const ORDER: Order, T> Send for VSet<T, ORDER>' | |
15 | // @has foo/struct.VSet.html '//h3[@id="impl-Sync"]/code' 'impl<const ORDER: Order, T> Sync for VSet<T, ORDER>' | |
16 | pub struct VSet<T, const ORDER: Order> { | |
17 | inner: Vec<T>, | |
18 | } | |
19 | ||
dfeec247 | 20 | // @has foo/struct.VSet.html '//h3[@id="impl"]/code' 'impl<T> VSet<T, {Order::Sorted}>' |
48663c56 XL |
21 | impl <T> VSet<T, {Order::Sorted}> { |
22 | pub fn new() -> Self { | |
23 | Self { inner: Vec::new() } | |
24 | } | |
25 | } | |
26 | ||
dfeec247 | 27 | // @has foo/struct.VSet.html '//h3[@id="impl-1"]/code' 'impl<T> VSet<T, {Order::Unsorted}>' |
48663c56 XL |
28 | impl <T> VSet<T, {Order::Unsorted}> { |
29 | pub fn new() -> Self { | |
30 | Self { inner: Vec::new() } | |
31 | } | |
32 | } | |
dfeec247 XL |
33 | |
34 | pub struct Escape<const S: &'static str>; | |
35 | ||
36 | // @has foo/struct.Escape.html '//h3[@id="impl"]/code' 'impl Escape<{ r#"<script>alert("Escape");</script>"# }>' | |
37 | impl Escape<{ r#"<script>alert("Escape");</script>"# }> { | |
38 | pub fn f() {} | |
39 | } |