3.6.0
|
|
Freundlich's C++ toolkit |
Functions for std::array
.
More...
Typedefs | |
template<typename Array > | |
using | size = typename fcppt::container::array::detail::size< Array >::type |
Gets the size of an array. More... | |
Functions | |
template<typename Array1 , typename Array2 > | |
std::array< fcppt::type_traits::value_type< fcppt::type_traits::remove_cv_ref_t< Array1 > >, fcppt::container::array::size< fcppt::type_traits::remove_cv_ref_t< Array1 > >::value+fcppt::container::array::size< fcppt::type_traits::remove_cv_ref_t< Array2 > >::value > | append (Array1 &&_array1, Array2 &&_array2) |
Appends two arrays. More... | |
template<typename Function , typename Array1 , typename... Arrays> | |
auto | apply (Function const &_function, Array1 &&_array1, Arrays &&... _arrays) -> std::array< 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::container::array::size< fcppt::type_traits::remove_cv_ref_t< Array1 > >::value > |
Applies a function to each tuple of elements of multiple arrays and returns an array containing the results. More... | |
template<std::size_t Size, typename Source > | |
fcppt::optional::object< std::array< fcppt::type_traits::value_type< fcppt::type_traits::remove_cv_ref_t< Source > >, Size >> | from_range (Source &&_source) |
Creates a std::array out of a range. More... | |
template<typename Array , typename Function > | |
Array | init (Function const &_function) |
Constructs an array by calling a function with static indices. More... | |
template<typename Array > | |
Array | init_const (fcppt::type_traits::value_type< Array > const &_value) |
Constructs an array from a value. More... | |
template<typename Array , typename Function > | |
Array | init_move (Function const &_function) |
Constructs an array by calling a function for every element. More... | |
template<typename Array1 , typename... Arrays> | |
std::array< fcppt::type_traits::value_type< fcppt::type_traits::remove_cv_ref_t< Array1 > >, fcppt::metal::from_number< std::size_t, ::metal::accumulate< ::metal::bind< ::metal::lambda< ::metal::add >, ::metal::bind< ::metal::lambda< fcppt::metal::to_number >, ::metal::bind< ::metal::lambda< fcppt::container::array::size >, ::metal::_2 > >, ::metal::_1 >, fcppt::metal::to_number< fcppt::container::array::size< fcppt::type_traits::remove_cv_ref_t< Array1 > > >, ::metal::list< fcppt::type_traits::remove_cv_ref_t< Arrays >... > > >::value > | join (Array1 &&_array1, Arrays &&... _arrays) |
Appends multiple arrays. More... | |
template<typename... Args> | |
std::array< ::metal::front< ::metal::list< fcppt::type_traits::remove_cv_ref_t< Args >... > >, sizeof...(Args)> | make (Args &&... _args) |
Make an array out of a parameter pack. More... | |
template<typename Array , typename Function > | |
auto | map (Array &&_source, Function const &_function) -> std::array< decltype(_function(fcppt::move_if_rvalue< Array >(std::declval< fcppt::container::to_reference_type< std::remove_reference_t< Array > > >()))), fcppt::container::array::size< fcppt::type_traits::remove_cv_ref_t< Array > >::value > |
Applies a function to every element of an array and returns an array of the results. More... | |
template<typename Source , typename NewElement > | |
std::array< fcppt::type_traits::value_type< fcppt::type_traits::remove_cv_ref_t< Source > >, fcppt::container::array::size< fcppt::type_traits::remove_cv_ref_t< Source > >::value+1U > | push_back (Source &&_source, NewElement &&_new_element) |
Pushes a new element to the back of an array. More... | |
Functions for std::array
.