Lines Matching full:array
14 array synopsis
19 struct array
36 void swap(array& a) noexcept(is_nothrow_swappable_v<T>); // constexpr in C++20
75 array(T, U...) -> array<T, 1 + sizeof...(U)>; // C++17
78 bool operator==(const array<T,N>& x, const array<T,N>& y); // constexpr in C++20
80 bool operator!=(const array<T,N>& x, const array<T,N>& y); // removed in C++20
82 bool operator<(const array<T,N>& x, const array<T,N>& y); // removed in C++20
84 bool operator>(const array<T,N>& x, const array<T,N>& y); // removed in C++20
86 bool operator<=(const array<T,N>& x, const array<T,N>& y); // removed in C++20
88 bool operator>=(const array<T,N>& x, const array<T,N>& y); // removed in C++20
91 operator<=>(const array<T, N>& x, const array<T, N>& y); // since C++20
94 void swap(array<T,N>& x, array<T,N>& y) noexcept(noexcept(x.swap(y))); // constexpr in C++20
97 constexpr array<remove_cv_t<T>, N> to_array(T (&a)[N]); // C++20
99 constexpr array<remove_cv_t<T>, N> to_array(T (&&a)[N]); // C++20
103 template <class T, size_t N> struct tuple_size<array<T, N>>;
104 template <size_t I, class T, size_t N> struct tuple_element<I, array<T, N>>;
105 template <size_t I, class T, size_t N> T& get(array<T, N>&) noexcept; // constexpr in…
106 template <size_t I, class T, size_t N> const T& get(const array<T, N>&) noexcept; // constexpr in…
107 template <size_t I, class T, size_t N> T&& get(array<T, N>&&) noexcept; // constexpr in…
108 template <size_t I, class T, size_t N> const T&& get(const array<T, N>&&) noexcept; // constexpr in…
121 #include <__fwd/array.h>
151 // [array.syn]
169 struct _LIBCPP_TEMPLATE_VIS array {
170 …rivially_relocatable = __conditional_t<__libcpp_is_trivially_relocatable<_Tp>::value, array, void>;
173 using __self = array;
198 …_LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 void swap(array& __a) _NOEXCEPT_(__is_nothrow_…
239 _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(__n < _Size, "out-of-bounds access in std::array<T, N>");
243 _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(__n < _Size, "out-of-bounds access in std::array<T, N>");
249 __throw_out_of_range("array::at");
255 __throw_out_of_range("array::at");
271 struct _LIBCPP_TEMPLATE_VIS array<_Tp, 0> {
273 typedef array __self;
298 static_assert(!is_const<_Tp>::value, "cannot fill zero-sized array of type 'const T'");
301 _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 void swap(array&) _NOEXCEPT {
302 static_assert(!is_const<_Tp>::value, "cannot swap zero-sized array of type 'const T'");
342 …IBCPP_ASSERT_VALID_ELEMENT_ACCESS(false, "cannot call array<T, 0>::operator[] on a zero-sized arra…
347 …IBCPP_ASSERT_VALID_ELEMENT_ACCESS(false, "cannot call array<T, 0>::operator[] on a zero-sized arra…
352 __throw_out_of_range("array<T, 0>::at");
357 __throw_out_of_range("array<T, 0>::at");
362 …LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(false, "cannot call array<T, 0>::front() on a zero-sized array"…
367 …LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(false, "cannot call array<T, 0>::front() on a zero-sized array"…
372 …_LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(false, "cannot call array<T, 0>::back() on a zero-sized array"…
377 …_LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(false, "cannot call array<T, 0>::back() on a zero-sized array"…
384 array(_Tp, _Args...) -> array<_Tp, 1 + sizeof...(_Args)>;
389 operator==(const array<_Tp, _Size>& __x, const array<_Tp, _Size>& __y) {
396 inline _LIBCPP_HIDE_FROM_ABI bool operator!=(const array<_Tp, _Size>& __x, const array<_Tp, _Size>&…
401 inline _LIBCPP_HIDE_FROM_ABI bool operator<(const array<_Tp, _Size>& __x, const array<_Tp, _Size>& …
406 inline _LIBCPP_HIDE_FROM_ABI bool operator>(const array<_Tp, _Size>& __x, const array<_Tp, _Size>& …
411 inline _LIBCPP_HIDE_FROM_ABI bool operator<=(const array<_Tp, _Size>& __x, const array<_Tp, _Size>&…
416 inline _LIBCPP_HIDE_FROM_ABI bool operator>=(const array<_Tp, _Size>& __x, const array<_Tp, _Size>&…
424 operator<=>(const array<_Tp, _Size>& __x, const array<_Tp, _Size>& __y) {
432 inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX20 void swap(array<_Tp, _Size>& __x, array<…
438 struct _LIBCPP_TEMPLATE_VIS tuple_size<array<_Tp, _Size> > : public integral_constant<size_t, _Size…
441 struct _LIBCPP_TEMPLATE_VIS tuple_element<_Ip, array<_Tp, _Size> > {
442 static_assert(_Ip < _Size, "Index out of bounds in std::tuple_element<> (std::array)");
447 inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 _Tp& get(array<_Tp, _Size>& __a) _NOEXCE…
448 static_assert(_Ip < _Size, "Index out of bounds in std::get<> (std::array)");
453 inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 const _Tp& get(const array<_Tp, _Size>& …
454 static_assert(_Ip < _Size, "Index out of bounds in std::get<> (const std::array)");
459 inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 _Tp&& get(array<_Tp, _Size>&& __a) _NOEX…
460 static_assert(_Ip < _Size, "Index out of bounds in std::get<> (std::array &&)");
465 inline _LIBCPP_HIDE_FROM_ABI _LIBCPP_CONSTEXPR_SINCE_CXX14 const _Tp&& get(const array<_Tp, _Size>&…
466 static_assert(_Ip < _Size, "Index out of bounds in std::get<> (const std::array &&)");
473 _LIBCPP_HIDE_FROM_ABI constexpr array<remove_cv_t<_Tp>, _Size>
479 _LIBCPP_HIDE_FROM_ABI constexpr array<remove_cv_t<_Tp>, _Size>
485 _LIBCPP_HIDE_FROM_ABI constexpr array<remove_cv_t<_Tp>, _Size>
487 …static_assert(!is_array_v<_Tp>, "[array.creation]/1: to_array does not accept multidimensional arr…
488 …static_assert(is_constructible_v<_Tp, _Tp&>, "[array.creation]/1: to_array requires copy construct…
493 _LIBCPP_HIDE_FROM_ABI constexpr array<remove_cv_t<_Tp>, _Size>
495 …static_assert(!is_array_v<_Tp>, "[array.creation]/4: to_array does not accept multidimensional arr…
496 …static_assert(is_move_constructible_v<_Tp>, "[array.creation]/4: to_array requires move constructi…