[habr] Так ли страшен Rust, как его малюют

3 лайка

Хорошо. Тяжело в учении, легко в бою :nerd_face:

fn search<F>(hash: u64, is_match: F, compare_hashes: bool)  
   -> bool
  where for<'b> F: FnMut(&'b K) -> bool

where for такого раньше не встречал и в rustbook не нашёл

это же эквивалентно

fn search<'b, F: 'b>(hash: u64, is_match: F, compare_hashes: bool)  
   -> bool
  where F: FnMut(&'b K) -> bool

возможно ли здесь вообще избавится от where ?

всё выяснил

fn search<'b, F: 'b + FnMut(&'b F) -> bool>(hash: u64, is_match: F, compare_hashes: bool) -> bool {
    true
}

На всякий, кинусь ссылками про такой for<'a>:

2 лайка

Тенкс, весьма полезно.

От информации по ссылкам вопросов возникает ещё больше.

Самое чистое и понятное объяснение higher-ranked trait bound я нашел тут https://stackoverflow.com/questions/35592750/how-does-for-syntax-differ-from-a-regular-lifetime-bound

2 лайка