summaryrefslogtreecommitdiffstats
path: root/tests/rustdoc/deref/deref-slice-core.rs
blob: cccf273a820283afbcd848eb50b8bc7192bc8556 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
// https://github.com/rust-lang/rust/issues/95325
//
// Show methods reachable from Deref of primitive.
#![no_std]

use core::ops::Deref;

// @has 'deref_slice_core/struct.MyArray.html'
// @has '-' '//*[@id="deref-methods-%5BT%5D"]' 'Methods from Deref<Target = [T]>'
// @has '-' '//*[@class="impl-items"]//*[@id="method.len"]' 'pub fn len(&self)'

pub struct MyArray<T> {
    array: [T; 10],
}

impl<T> Deref for MyArray<T> {
    type Target = [T];

    fn deref(&self) -> &Self::Target {
        &self.array
    }
}