Function konst::slice::split_last [−][src]
pub const fn split_last<T>(slice: &[T]) -> Option<(&T, &[T])>
Expand description
A const equivalent of
<[T]>::split_last
Example
use konst::slice; const fn find_last_even(mut slice: &[u32]) -> Option<usize> { let mut ret = 0u32; while let Some((last, rem)) = slice::split_last(slice) { if *last % 2 == 0 { return Some(rem.len()); } // advances the slice slice = rem; } None } assert_eq!(find_last_even(&[3, 5]), None); assert_eq!(find_last_even(&[3, 5, 8, 13, 21]), Some(2)); assert_eq!(find_last_even(&[3, 5, 8, 13, 21, 34, 55]), Some(5)); assert_eq!(find_last_even(&[3, 5, 8, 13, 21, 34, 55, 89, 144]), Some(8));