метод iter для строки со ссылкой на время жизни - PullRequest
0 голосов
/ 27 июня 2019

У меня есть следующий код:

#[derive(Debug, PartialEq, Eq, Copy, Clone)]
pub struct Trip<'a> {
    pub cod: &'a str,
}

#[derive(Debug, Clone, Copy)]
pub struct ami<'a> {
    pub tlc: &'a str,
}

impl<'a> Trip<'a> {
    fn new(road: &'a str) -> Trip {
        assert_eq!(
            3,
            road.trim().len(),
            "Triplet doesn't have three Nucleotides"
        );
        let trip = road[0..].iter().flat_map(|s| s.chars()).collect();
        Triplet { cod: trip }
    }
}

Я столкнулся со следующей ошибкой:

error[E0599]: no method named `iter` found for type `str` in the current scope
  --> src/gcode/gcode.rs:20:30
   |
20 |         let trip = [0..].iter()
   |                              ^^^^

Насколько я понимаю, связанная с new функция получает ссылку на время жизниstr в качестве входного параметра и выводит структуру Trip с полем cod.В этом процессе ввод потребляется итератором.

Я должен получать ошибки об аннулировании времени жизни, но я не получаю метод для str в текущей области?

Почему это?

...