Lines Matching refs:Iter
17 template <typename Iter, typename C = skstd::monostate>
19 using Captured = decltype(*std::declval<Iter>());
42 constexpr Iterator(ptrdiff_t index, Iter it) : fIndex{index}, fIt{it} { }
52 Iter fIt;
56 constexpr SkEnumerate(Iter begin, Iter end) : SkEnumerate{0, begin, end} {}
91 constexpr SkEnumerate(ptrdiff_t beginIndex, Iter begin, Iter end)
98 Iter fBegin;
99 Iter fEnd;
102 template <typename C, typename Iter = decltype(std::begin(std::declval<C>()))>
103 inline constexpr SkEnumerate<Iter> SkMakeEnumerate(C& c) {
104 return SkEnumerate<Iter>{std::begin(c), std::end(c)};
106 template <typename C, typename Iter = decltype(std::begin(std::declval<C>()))>
107 inline constexpr SkEnumerate<Iter, C> SkMakeEnumerate(C&& c) {
108 return SkEnumerate<Iter, C>{std::forward<C>(c)};
111 template <class T, std::size_t N, typename Iter = decltype(std::begin(std::declval<T(&)[N]>()))>
112 inline constexpr SkEnumerate<Iter> SkMakeEnumerate(T (&a)[N]) {
113 return SkEnumerate<Iter>{std::begin(a), std::end(a)};