|
template<typename Array1 , typename Array2 , typename = std::enable_if_t<std::conjunction_v< fcppt::array::is_object<std::remove_cvref_t<Array1>>, fcppt::array::is_object<std::remove_cvref_t<Array2>>, std::is_same< fcppt::array::value_type<std::remove_cvref_t<Array1>>, fcppt::array::value_type<std::remove_cvref_t<Array2>>>>>> |
fcppt::array::object< fcppt::array::value_type< std::remove_cvref_t< Array1 > >, fcppt::array::size< std::remove_cvref_t< Array1 > >::value+fcppt::array::size< std::remove_cvref_t< Array2 > >::value > | append (Array1 &&_array1, Array2 &&_array2) |
| Appends two arrays. More...
|
|
template<typename Function , typename Array1 , typename... Arrays, typename = std::enable_if_t<std::conjunction_v< fcppt::array::is_object<std::remove_cvref_t<Array1>>, fcppt::array::is_object<std::remove_cvref_t<Arrays>>..., std::is_same< fcppt::array::size<std::remove_cvref_t<Array1>>, fcppt::array::size<std::remove_cvref_t<Arrays>>>...>>> |
auto | apply (Function const &_function, Array1 &&_array1, Arrays &&..._arrays) -> fcppt::array::object< decltype(_function(fcppt::move_if_rvalue< Array1 >(std::declval< fcppt::container::to_reference_type< std::remove_reference_t< Array1 > > >()), fcppt::move_if_rvalue< Arrays >(std::declval< fcppt::container::to_reference_type< std::remove_reference_t< Arrays > > >())...)), fcppt::array::size< std::remove_cvref_t< Array1 > >::value > |
| Applies a function to each tuple of elements of multiple arrays and returns an array containing the results. More...
|
|
template<typename T , std::size_t Size> |
bool | operator== (fcppt::array::object< T, Size > const &a, fcppt::array::object< T, Size > const &b) |
| Compares two arrays for equality. More...
|
|
template<std::size_t Size, typename Source > |
fcppt::optional::object< fcppt::array::object< fcppt::type_traits::value_type< std::remove_cvref_t< Source > >, Size > > | from_range (Source &&_source) |
| Creates an fcppt::array::object out of a range. More...
|
|
template<std::size_t I, typename T , std::size_t Size, typename = std::enable_if_t<std::less<>{}(I, Size)>> |
constexpr T & | get (fcppt::array::object< T, Size > &_value) noexcept |
| Returns the I'th element of a nonconst array. More...
|
|
template<std::size_t I, typename T , std::size_t Size, typename = std::enable_if_t<std::less<>{}(I, Size)>> |
constexpr T const & | get (fcppt::array::object< T, Size > const &_value) noexcept |
| Returns the I'th element of a const array. More...
|
|
template<typename Array , typename Function , typename = std::enable_if_t<fcppt::array::is_object<Array>::value>> |
Array | init (Function const &_function) |
| Constructs an array by calling a function with static indices. More...
|
|
template<typename Array1 , typename... Arrays, typename = std::enable_if_t<std::conjunction_v< fcppt::array::is_object<std::remove_cvref_t<Array1>>, fcppt::array::is_object<std::remove_cvref_t<Arrays>>..., std::is_same< fcppt::array::value_type<std::remove_cvref_t<Array1>>, fcppt::array::value_type<std::remove_cvref_t<Arrays>>>...>>> |
fcppt::array::object< fcppt::array::value_type< std::remove_cvref_t< Array1 > >, fcppt::mpl::list::fold< fcppt::mpl::list::object< std::remove_cvref_t< Arrays >... >, fcppt::mpl::bind< fcppt::mpl::lambda< fcppt::mpl::add >, fcppt::mpl::bind< fcppt::mpl::lambda< fcppt::array::size >, fcppt::mpl::arg< 1 > >, fcppt::mpl::arg< 2 > >, fcppt::array::size< std::remove_cvref_t< Array1 > > >::value > | join (Array1 &&_array1, Arrays &&..._arrays) |
| Appends multiple arrays. More...
|
|
template<typename Arg1 , typename... Args, typename = std::enable_if_t<std::conjunction_v<std::is_same< std::remove_cvref_t<Arg1>, std::remove_cvref_t<Args>>...>>> |
fcppt::array::object< std::remove_cvref_t< Arg1 >, sizeof...(Args)+1U > | make (Arg1 &&_arg1, Args &&..._args) |
| Make an array out of a parameter pack. More...
|
|
template<typename Array , typename Function , typename = std::enable_if_t< fcppt::array::is_object<std::remove_cvref_t<Array>>::value>> |
auto | map (Array &&_source, Function const &_function) -> fcppt::array::object< decltype(_function(fcppt::move_if_rvalue< Array >(std::declval< fcppt::container::to_reference_type< std::remove_reference_t< Array > > >()))), fcppt::array::size< std::remove_cvref_t< Array > >::value > |
| Applies a function to every element of an array and returns an array of the results. More...
|
|
template<typename Ch , typename Traits , typename Type , std::size_t Size> |
std::basic_ostream< Ch, Traits > & | operator<< (std::basic_ostream< Ch, Traits > &_stream, fcppt::array::object< Type, Size > const &_array) |
| Outputs an array to a stream. More...
|
|
template<typename Source , typename NewElement , typename = std::enable_if_t<std::conjunction_v< fcppt::array::is_object<std::remove_cvref_t<Source>>, std::is_same< std::remove_cvref_t<NewElement>, fcppt::array::value_type<std::remove_cvref_t<Source>>>>>> |
fcppt::array::object< fcppt::type_traits::value_type< std::remove_cvref_t< Source > >, fcppt::array::size< std::remove_cvref_t< Source > >::value+1U > | push_back (Source &&_source, NewElement &&_new_element) |
| Pushes a new element to the back of an array. More...
|
|