Lines Matching refs:last
48 last: Option<Box<T>>,
56 last: None,
63 self.inner.len() == 0 && self.last.is_none()
71 self.inner.len() + if self.last.is_some() { 1 } else { 0 }
84 /// Borrows the last element in this sequence.
85 pub fn last(&self) -> Option<&T> {
89 /// Mutably borrows the last element in this sequence.
99 last: self.last.as_ref().map(Box::as_ref).into_iter(),
110 last: self.last.as_mut().map(Box::as_mut).into_iter(),
120 last: self.last.as_ref().map(Box::as_ref).into_iter(),
129 last: self.last.as_mut().map(Box::as_mut).into_iter(),
138 last: self.last.map(|t| *t).into_iter(),
160 self.last = Some(Box::new(value));
172 self.last.is_some(),
176 let last = self.last.take().unwrap();
177 self.inner.push((*last, punctuation));
180 /// Removes the last punctuated pair from this sequence, or `None` if the
183 if self.last.is_some() {
184 self.last.take().map(|t| Pair::End(*t))
193 if self.last.is_some() {
197 self.last = Some(Box::new(t));
205 self.last.is_none() && !self.is_empty()
213 self.last.is_none()
256 self.last = None;
369 last: self.last.clone(),
375 self.last.clone_from(&other.last);
396 let Punctuated { inner, last } = self;
397 *inner == other.inner && *last == other.last
409 let Punctuated { inner, last } = self;
411 last.hash(state);
424 if let Some(last) = &self.last {
425 list.entry(last);
485 punctuated.last = Some(Box::new(a));
499 elements.extend(self.last.map(|t| *t));
538 last: option::IntoIter<&'a T>,
548 .or_else(|| self.last.next().map(Pair::End))
558 self.last
567 self.inner.len() + self.last.len()
576 last: self.last.clone(),
588 last: option::IntoIter<&'a mut T>,
598 .or_else(|| self.last.next().map(Pair::End))
608 self.last
617 self.inner.len() + self.last.len()
628 last: option::IntoIter<T>,
638 .or_else(|| self.last.next().map(Pair::End))
648 self.last
657 self.inner.len() + self.last.len()
669 last: self.last.clone(),
733 last: option::IntoIter<&'a T>,
790 .or_else(|| self.last.next())
796 self.last
804 self.inner.len() + self.last.len()
813 last: self.last.clone(),
848 last: option::IntoIter<&'a mut T>,
896 .or_else(|| self.last.next())
902 self.last
910 self.inner.len() + self.last.len()
1052 match &self.last {
1065 match &mut self.last {