Ссылаясь на типы полей кортежей - PullRequest
4 голосов
/ 10 апреля 2020

Есть ли способ ссылаться на типы полей кортежа без перепросмотра? Что-то вроде этого:

pub struct Foo(i16, u64);
impl Foo {
    pub fn get_bar(&self) -> Self::0 { self.0 }
    pub fn get_baz(&self) -> Self::1 { self.1 }
}

fn main() {
    let foo = Foo(123, 456);
    println!("bar: {}", foo.get_bar());
    println!("baz: {}", foo.get_baz());
}

(Это не работает, потому что Self::0 - это не вещь. Но, возможно, это так, и я просто не знаю, как это называется.)

...