|
IceShard 1
A personal game engine project, with development focused on 2D/2.5D games.
|
Go to the source code of this file.
Namespaces | |
| namespace | ice |
| SPDX-License-Identifier: MIT. | |
| namespace | ice::detail |
Functions | |
| template<typename Type, typename Fn> | |
| auto | ice::accumulate_over (ice::Span< Type > objects, Fn &&fn) noexcept -> ice::u32 |
| template<typename T, typename U = T> requires (std::convertible_to<T, U>) | |
| constexpr auto | ice::lower_bound (ice::Span< T > values, U const &value) noexcept -> ice::u32 |
| template<typename T, typename Comp, typename U = T> requires (std::convertible_to<T, U>) | |
| constexpr auto | ice::lower_bound (ice::Span< T > values, U const &value, Comp &&comp) noexcept -> ice::u32 |
| template<typename T, typename U = T> requires (std::convertible_to<T, U>) | |
| constexpr auto | ice::upper_bound (ice::Span< T > values, U const &value) noexcept -> ice::u32 |
| template<typename T, typename Comp, typename U = T> requires (std::convertible_to<T, U>) | |
| constexpr auto | ice::upper_bound (ice::Span< T > values, U const &value, Comp &&comp) noexcept -> ice::u32 |
| template<typename T, typename U = T> requires (std::convertible_to<T, U>) | |
| constexpr bool | ice::binary_search (ice::Span< T > values, U const &value, ice::u32 &out_index) noexcept |
| template<typename T, typename Comp, typename U = T> requires (std::convertible_to<T, U>) | |
| constexpr bool | ice::binary_search (ice::Span< T > values, U const &value, Comp &&comp, ice::u32 &out_index) noexcept |
| template<typename T, typename U = T> requires (std::convertible_to<T, U>) | |
| constexpr bool | ice::search (ice::Span< T > values, U const &value, ice::u32 &out_index) noexcept |
| template<typename T, typename Comp, typename U = T> | |
| constexpr bool | ice::search (ice::Span< T > values, U const &value, Comp &&comp, ice::u32 &out_index) noexcept |
| template<typename T> | |
| void | ice::sort (ice::Span< T > span) noexcept |
| template<typename T, typename Pred> | |
| void | ice::sort (ice::Span< T > span, Pred &&pred) noexcept |
| template<typename K, typename V, typename Pred> | |
| void | ice::sort (ice::Span< K > keys, ice::Span< V > values, Pred &&pred) noexcept |
| template<typename T> | |
| constexpr auto | ice::constexpr_sort_stdarray (T const &arrarr, ice::u32 start_offset=0) noexcept -> T |
| template<typename K, typename Pred> | |
| void | ice::sort_indices (ice::Span< K > keys, ice::Span< ice::u32 > indices, Pred &&pred) noexcept |
| template<typename Node, typename Pred> | |
| auto | ice::sort_linked_list (Node *left_list, ice::u32 size, Pred &&pred) noexcept -> Node * |
| template<typename T, typename Comp, typename... U> | |
| constexpr bool | ice::search_with (ice::Span< T > values, Comp &&comp, ice::u32 &out_index, U const &... params) noexcept |
| template<typename K, typename V, typename Pred> | |
| auto | ice::detail::qsort_partition (ice::Span< K > keys, ice::Span< V > &values, Pred &&pred, ice::i32 left, ice::i32 right) noexcept -> ice::i32 |
| template<typename Pred, typename Key, typename... Values> | |
| auto | ice::detail::qsort_partition_many (Pred &&pred, ice::i32 left, ice::i32 right, ice::Span< Key > keys, ice::Span< Values >... values) noexcept -> ice::i32 |
| template<typename K, typename Pred> | |
| auto | ice::detail::qsort_partition_indices (ice::Span< K > keys, ice::Span< ice::u32 > &indices, Pred &&pred, ice::i32 left, ice::i32 right) noexcept -> ice::i32 |
| template<typename K, typename V, typename Pred> | |
| void | ice::detail::qsort (ice::Span< K > keys, ice::Span< V > values, Pred &&pred, ice::i32 left, ice::i32 right) noexcept |
| template<typename Pred, typename Key, typename... Values> | |
| void | ice::detail::qsort_many (Pred &&pred, ice::i32 left, ice::i32 right, ice::Span< Key > keys, ice::Span< Values >... values) noexcept |
| template<typename K, typename Pred> | |
| void | ice::detail::qsort_indices (ice::Span< K > keys, ice::Span< ice::u32 > indices, Pred &&pred, ice::i32 left, ice::i32 right) noexcept |
| template<typename Key, typename Pred, typename... Values> requires ice::concepts::ComparisonFunction<Pred, Key, Key> | |
| void | ice::sort_many (ice::Span< Key > keys, Pred &&pred, ice::Span< Values >... values) noexcept |