| Noah Lev | ee58c06 | 2021-11-26 15:03:16 -0800 | [diff] [blame] | 1 | #![allow(incomplete_features)] |
| Boxy | d0c11bf | 2024-07-14 13:38:51 +0100 | [diff] [blame] | 2 | #![feature(adt_const_params, unsized_const_params)] |
| varkor | 7f9dc73 | 2019-05-28 22:53:36 +0100 | [diff] [blame] | 3 | #![crate_name = "foo"] |
| 4 | |
| Oli Scherer | 4512f21 | 2023-10-31 13:58:03 +0000 | [diff] [blame] | 5 | use std::marker::ConstParamTy; |
| 6 | |
| 7 | #[derive(PartialEq, Eq, ConstParamTy)] |
| Guillaume Gomez | 2caeaf5 | 2019-05-12 16:53:39 +0200 | [diff] [blame] | 8 | pub enum Order { |
| 9 | Sorted, |
| 10 | Unsorted, |
| 11 | } |
| 12 | |
| Guillaume Gomez | 1b67035 | 2024-06-21 14:03:08 +0200 | [diff] [blame] | 13 | //@ has foo/struct.VSet.html '//pre[@class="rust item-decl"]' 'pub struct VSet<T, const ORDER: Order>' |
| 14 | //@ has foo/struct.VSet.html '//*[@id="impl-Send-for-VSet%3CT,+ORDER%3E"]/h3[@class="code-header"]' 'impl<T, const ORDER: Order> Send for VSet<T, ORDER>' |
| 15 | //@ has foo/struct.VSet.html '//*[@id="impl-Sync-for-VSet%3CT,+ORDER%3E"]/h3[@class="code-header"]' 'impl<T, const ORDER: Order> Sync for VSet<T, ORDER>' |
| Guillaume Gomez | 2caeaf5 | 2019-05-12 16:53:39 +0200 | [diff] [blame] | 16 | pub struct VSet<T, const ORDER: Order> { |
| 17 | inner: Vec<T>, |
| 18 | } |
| 19 | |
| Guillaume Gomez | 1b67035 | 2024-06-21 14:03:08 +0200 | [diff] [blame] | 20 | //@ has foo/struct.VSet.html '//*[@id="impl-VSet%3CT,+%7B+Order::Sorted+%7D%3E"]/h3[@class="code-header"]' 'impl<T> VSet<T, { Order::Sorted }>' |
| Noah Lev | ee58c06 | 2021-11-26 15:03:16 -0800 | [diff] [blame] | 21 | impl<T> VSet<T, { Order::Sorted }> { |
| Guillaume Gomez | 2caeaf5 | 2019-05-12 16:53:39 +0200 | [diff] [blame] | 22 | pub fn new() -> Self { |
| 23 | Self { inner: Vec::new() } |
| 24 | } |
| 25 | } |
| 26 | |
| Guillaume Gomez | 1b67035 | 2024-06-21 14:03:08 +0200 | [diff] [blame] | 27 | //@ has foo/struct.VSet.html '//*[@id="impl-VSet%3CT,+%7B+Order::Unsorted+%7D%3E"]/h3[@class="code-header"]' 'impl<T> VSet<T, { Order::Unsorted }>' |
| Noah Lev | ee58c06 | 2021-11-26 15:03:16 -0800 | [diff] [blame] | 28 | impl<T> VSet<T, { Order::Unsorted }> { |
| Guillaume Gomez | 2caeaf5 | 2019-05-12 16:53:39 +0200 | [diff] [blame] | 29 | pub fn new() -> Self { |
| 30 | Self { inner: Vec::new() } |
| 31 | } |
| 32 | } |
| Oliver Middleton | e2305d0 | 2020-01-05 23:19:42 +0000 | [diff] [blame] | 33 | |
| 34 | pub struct Escape<const S: &'static str>; |
| 35 | |
| Guillaume Gomez | 1b67035 | 2024-06-21 14:03:08 +0200 | [diff] [blame] | 36 | //@ has foo/struct.Escape.html '//*[@id="impl-Escape%3C%22%3Cscript%3Ealert(%5C%22Escape%5C%22);%3C/script%3E%22%3E"]/h3[@class="code-header"]' 'impl Escape<r#"<script>alert("Escape");</script>"#>' |
| Noah Lev | ee58c06 | 2021-11-26 15:03:16 -0800 | [diff] [blame] | 37 | impl Escape<r#"<script>alert("Escape");</script>"#> { |
| Oliver Middleton | e2305d0 | 2020-01-05 23:19:42 +0000 | [diff] [blame] | 38 | pub fn f() {} |
| 39 | } |