Lines Matching refs:noexcept

164 // Furthermore, all constructors and methods are marked noexcept due to the lack
187 constexpr span() noexcept : data_(nullptr), size_(0) {
191 constexpr span(T* data, size_t size) noexcept : data_(data), size_(size) {
197 constexpr span(T* begin, T* end) noexcept : span(begin, end - begin) {
205 constexpr span(T (&array)[N]) noexcept : span(std::data(array), N) {}
211 constexpr span(std::array<value_type, N>& array) noexcept
220 constexpr span(const std::array<value_type, N>& array) noexcept
227 constexpr span(Container& container) noexcept
233 span(const Container& container) noexcept
236 constexpr span(const span& other) noexcept = default;
249 constexpr span& operator=(const span& other) noexcept = default;
250 ~span() noexcept = default;
254 constexpr span<T, Count> first() const noexcept {
262 constexpr span<T, Count> last() const noexcept {
275 subspan() const noexcept {
287 constexpr span<T, dynamic_extent> first(size_t count) const noexcept {
293 constexpr span<T, dynamic_extent> last(size_t count) const noexcept {
301 size_t count = dynamic_extent) const noexcept {
309 constexpr size_t size() const noexcept { return size_; }
310 constexpr size_t size_bytes() const noexcept { return size() * sizeof(T); }
311 constexpr bool empty() const noexcept { return size() == 0; }
314 constexpr T& operator[](size_t idx) const noexcept {
320 constexpr T& operator()(size_t idx) const noexcept {
326 constexpr T* data() const noexcept { return data_; }
329 constexpr iterator begin() const noexcept { return data(); }
330 constexpr iterator end() const noexcept { return data() + size(); }
332 constexpr const_iterator cbegin() const noexcept { return begin(); }
333 constexpr const_iterator cend() const noexcept { return end(); }
335 constexpr reverse_iterator rbegin() const noexcept {
338 constexpr reverse_iterator rend() const noexcept {
342 constexpr const_reverse_iterator crbegin() const noexcept {
345 constexpr const_reverse_iterator crend() const noexcept {
362 constexpr bool operator==(span<T, X> lhs, span<U, Y> rhs) noexcept {
367 constexpr bool operator!=(span<T, X> lhs, span<U, Y> rhs) noexcept {
372 constexpr bool operator<(span<T, X> lhs, span<U, Y> rhs) noexcept {
378 constexpr bool operator<=(span<T, X> lhs, span<U, Y> rhs) noexcept {
383 constexpr bool operator>(span<T, X> lhs, span<U, Y> rhs) noexcept {
388 constexpr bool operator>=(span<T, X> lhs, span<U, Y> rhs) noexcept {
395 as_bytes(span<T, X> s) noexcept {
403 as_writable_bytes(span<T, X> s) noexcept {
409 constexpr span<T> make_span(T* data, size_t size) noexcept {
414 constexpr span<T> make_span(T* begin, T* end) noexcept {
419 constexpr span<T, N> make_span(T (&array)[N]) noexcept {
424 constexpr span<T, N> make_span(std::array<T, N>& array) noexcept {
429 constexpr span<const T, N> make_span(const std::array<T, N>& array) noexcept {
436 constexpr span<T> make_span(Container& container) noexcept {
444 constexpr span<T> make_span(const Container& container) noexcept {
449 constexpr span<T, X> make_span(const span<T, X>& span) noexcept {