38 static_assert (same_as<T, value_type>);
40 static_assert (same_as<RANGE_TYPE, RangeType>);
51 template <IIterableOfTo<RANGE_TYPE> RANGES_OF_T>
53 template <IIterableOfTo<T> TS>
55 template <IInputIterator<RANGE_TYPE> ITERATOR_OF_RANGE_OF_T, sentinel_for<remove_cvref_t<ITERATOR_OF_RANGE_OF_T>> ITERATOR_OF_RANGE_OF_T2>
57 template <IInputIterator<T> ITERATOR_OF_T, sentinel_for<remove_cvref_t<ITERATOR_OF_T>> ITERATOR_OF_T2>
66 nonvirtual
void Add (
const value_type& elt);
77 nonvirtual optional<value_type> GetNext (value_type elt)
const;
82 nonvirtual optional<value_type> GetPrevious (value_type elt)
const;
103 value_type fSeedPosition;
105 FindHints (value_type seedPosition,
bool forwardFirst);
113 nonvirtual optional<value_type>
Find (
const function<
bool (value_type)>& that)
const;
114 nonvirtual optional<value_type>
Find (
const function<
bool (value_type)>& that,
const FindHints& hints)
const;
121 nonvirtual optional<value_type>
FindLastThat (
const function<
bool (value_type)>& testF)
const;
122 nonvirtual optional<value_type>
FindLastThat (
const function<
bool (value_type)>& testF,
const FindHints& hints)
const;
125 nonvirtual optional<value_type> ScanTil_ (
const function<
bool (value_type)>& testF,
126 const function<optional<value_type> (value_type)>& iterNext, value_type seedPosition)
const;
127 nonvirtual optional<value_type> ScanFindAny_ (
const function<
bool (value_type)>& testF, value_type seedPosition,
bool forwardFirst)
const;