class Peekable
Declaration
template <class InnerSizedIter>
class Peekable { /* full declaration omitted */ };
Description
An iterator with a `peek()` that returns an optional reference to the next element. This type is returned from `Iterator::peekable()`.
Declared at: sus/iter/adaptors/peekable.h:34
Templates
- InnerSizedIter
Method Overview
- public Peekable<InnerSizedIter>(Peekable<InnerSizedIter> &&)
- public constexpr Peekable<InnerSizedIter> clone() const noexcept
- public constexpr sus::num::usize exact_size_hint() const noexcept
- public constexpr Option<sus::iter::Peekable::Item> next() noexcept
- public constexpr Option<sus::iter::Peekable::Item> next_back() noexcept
- public template <class pred:auto>constexpr Option<sus::iter::Peekable::Item> next_if(::sus::fn::FnOnce<bool (const int &)> auto pred) noexcept
- public constexpr Option<sus::iter::Peekable::Item> next_if_eq(const int & expected) noexcept
- public constexpr int peek() noexcept
- public constexpr Option<sus::iter::Peekable::Item &> peek_mut() noexcept
- public constexpr sus::iter::SizeHint size_hint() const noexcept
- public constexpr ::sus::iter::__private::TrustedLenMarker trusted_len() const noexcept
Methods
¶Peekable<InnerSizedIter>(
Peekable<InnerSizedIter>&&)
Peekable<InnerSizedIter>(
Peekable<InnerSizedIter>&&)
Declared at: sus/iter/adaptors/peekable.h:41
Parameters
- Peekable<InnerSizedIter>&&
¶constexpr Peekable<InnerSizedIter> clone()
const noexcept
constexpr Peekable<InnerSizedIter> clone()
const noexcept
Description
sus::mem::Clone implementation
Declared at: sus/iter/adaptors/peekable.h:45
¶constexpr sus::num::usize exact_size_hint()
const noexcept
constexpr sus::num::usize exact_size_hint()
const noexcept
Description
sus::iter::ExactSizeIterator trait.
Declared at: sus/iter/adaptors/peekable.h:143
¶constexpr Option<sus::iter::Peekable::Item>
next() noexcept
constexpr Option<sus::iter::Peekable::Item>
next() noexcept
Description
sus::iter::Iterator trait.
Declared at: sus/iter/adaptors/peekable.h:99
¶constexpr Option<sus::iter::Peekable::Item>
next_back() noexcept
constexpr Option<sus::iter::Peekable::Item>
next_back() noexcept
Description
sus::iter::DoubleEndedIterator trait.
Declared at: sus/iter/adaptors/peekable.h:123
¶template <class pred : auto>
constexpr Option<sus::iter::Peekable::Item>
next_if(::sus::fn::FnOnce<bool(const int&)> auto
pred) noexcept
template <class pred : auto>
constexpr Option<sus::iter::Peekable::Item>
next_if(::sus::fn::FnOnce<bool(const int&)> auto
pred) noexcept
Declared at: sus/iter/adaptors/peekable.h:76
Templates
- pred:auto
Parameters
- ::sus::fn::FnOnce<bool(const int&)> auto pred
¶constexpr Option<sus::iter::Peekable::Item>
next_if_eq(const int& expected) noexcept
constexpr Option<sus::iter::Peekable::Item>
next_if_eq(const int& expected) noexcept
Declared at: sus/iter/adaptors/peekable.h:91
Parameters
- const int& expected
¶constexpr int peek() noexcept
constexpr int peek() noexcept
Declared at: sus/iter/adaptors/peekable.h:57
¶constexpr Option<sus::iter::Peekable::Item&>
peek_mut() noexcept
constexpr Option<sus::iter::Peekable::Item&>
peek_mut() noexcept
Description
Returns a mutable reference to the `next()` value without advancing the iterator. Like `next()`, if there is a value, it is wrapped in a `Some(T)`. But if the iteration is over, `None` is returned.
Declared at: sus/iter/adaptors/peekable.h:67
¶constexpr sus::iter::SizeHint size_hint()
const noexcept
constexpr sus::iter::SizeHint size_hint()
const noexcept
Description
sus::iter::Iterator trait.
Declared at: sus/iter/adaptors/peekable.h:104
¶constexpr ::sus::iter::__private::TrustedLenMarker
trusted_len() const noexcept
constexpr ::sus::iter::__private::TrustedLenMarker
trusted_len() const noexcept
Description
sus::iter::TrustedLen trait.
Declared at: sus/iter/adaptors/peekable.h:161