|
Templa 0.0.1-alpha
C++ Metaprogramming Utilities
|
Computes a compile-time unique sequence from a pack of values. More...
#include <algorithms.hpp>
Public Types | |
| using | identity_type = typename templa::internal::uniform_element_identity<Es...> |
| Type containing the uniform array of input values. | |
| using | old_array_type = typename identity_type::uniform_type |
| The type of the original uniform array. | |
| Public Types inherited from templa::internal::uniform_element_identity< Es... > | |
| using | uniform_type |
| Type alias for the uniform std::array of elements. | |
| using | value_type |
| Value type of the uniform_type. | |
Static Public Attributes | |
| static constexpr auto | unique_sequence |
| The resulting array with unique elements from the input pack. | |
| Static Public Attributes inherited from templa::internal::uniform_element_identity< Es... > | |
| static constexpr std::size_t | size |
| Number of elements. | |
| static constexpr bool | valid |
| Check if all elements have the same decayed type and are comparable. | |
| static constexpr uniform_type | identity_value |
| Static array holding the elements. | |
Computes a compile-time unique sequence from a pack of values.
Inherits from templa::internal::uniform_element_identity to obtain a uniform array representation of the input pack and eliminates duplicates in the order they appear.
| Es | A parameter pack of compile-time constant values. |
|
staticconstexpr |
The resulting array with unique elements from the input pack.
The algorithm preserves the order of first occurrences and excludes duplicates using exists_until from the internal utilities.