Lines Matching refs:Span
29 template <typename ElementType> class Span : public SpanBase {
48 Span() : Data(nullptr), Size(0) {} in Span() function
52 Span(std::nullptr_t) : Data(nullptr), Size(0) {} in Span() function
55 Span(pointer Ptr, index_type Count) : Data(Ptr), Size(Count) { in Span() function
62 Span(pointer FirstElem, pointer LastElem) in Span() function
70 template <typename T, size_t N> Span(T (&Arr)[N]) : Data(Arr), Size(N) {} in Span() function
75 Span(const std::array<typename std::remove_const<element_type>::type, N> &Arr) in Span() function
85 Span(Container &Cont,
102 Span(Container &&Cont,
112 Span(const Span &) noexcept = default;
113 Span(Span &&) noexcept;
119 Span(const Span<OtherElementType> &Other) in Span() function
126 Span(Span<OtherElementType> &&Other) : Data(Other.Data), Size(Other.Size) {} in Span() function
128 ~Span() = default;
130 Span &operator=(const Span &) noexcept = default;
131 Span &operator=(Span &&) noexcept;
139 Span<element_type> first(index_type Count) const { in first()
143 return Span<element_type>(data(), Count); in first()
147 Span<element_type> last(index_type Count) const { in last()
151 return Span<element_type>(Count == 0 ? data() : data() + (size() - Count), in last()
159 Span<element_type> subspan(index_type Offset,
166 return Span<element_type>(
208 template <typename OtherElementType> friend class Span;
215 Span<ElementType>::Span(Span &&) noexcept = default;
217 Span<ElementType> &Span<ElementType>::operator=(Span &&) noexcept = default;