trait_DoubleEndedIterator
trait_DoubleEndedIterator (양방향 이터레이터 트레이트)
양끝에서 모두 반복할 수 있는 이터레이터 트레이트예요.
출처: Rust 공식 문서
본문
앞에서와 뒤에서 모두 요소를 산출할 수 있는 이터레이터 트레이트예요. next_back 메서드를 제공하며, rev(), rfold 등 역방향 연산을 지원해요.
pub trait DoubleEndedIterator: Iterator { // Required method fn next_back (&mut self) -> Option <Self:: Item >; // Provided methods fn next_chunk_back <const N: usize >( &mut self, ) -> Result <[Self:: Item ; N ], IntoIter <Self:: Item , N>> where Self: Sized { ... } fn advance_back_by (&mut self, n: usize ) -> Result < () , NonZero < usize >> { ... } fn nth_back (&mut self, n: usize ) -> Option <Self:: Item > { ... } fn try_rfold <B, F, R>(&mut self, init: B, f: F) -> R where Self: Sized , F: FnMut (B, Self:: Item ) -> R, R: Try <Output = B> { ... } fn rfold <B, F>(self, init: B, f: F) -> B where Self: Sized , F: FnMut (B, Self:: Item ) -> B { ... } fn rfind <P>(&mut self, predicate: P) -> Option <Self:: Item > where Self: Sized , P: FnMut (&Self:: Item ) -> bool { ... } }