Структуры / Методы

struct ArrayAssistant<'a> {
    data: &'a [i32]
}

impl ArrayAssistant<'_>
{
    fn get_first_last(&self) -> (i32i32) {
        let mut first = -1;
        let mut last = -1;
        let len = self.data.len();
        if len > 0 {
            first = self.data[0];
            last = self.data[len - 1];
        }
        (first, last)
    }
}

let ar = [235];
let assistant  = ArrayAssistant{ data: &ar };
let result = assistant.get_first_last();
//result.first is 2
//result.last is 5

println!("first is {:?}", result.0);
println!("last is {:?}", result.1);