1 #ifndef jb_testing_resize_if_application_hpp 2 #define jb_testing_resize_if_application_hpp 22 static constexpr
auto check(T*) ->
typename std::is_void<
23 decltype(std::declval<T>().resize(std::declval<std::size_t>()))>
::type {
24 return std::true_type();
28 static constexpr std::false_type
check(...) {
29 return std::false_type();
33 using type = decltype(check<C>(
nullptr));
34 static constexpr
bool value = type::value;
45 template <
typename timeseries>
58 template <
typename timeseries>
60 timeseries& ts, std::size_t newsize, std::false_type) {
71 template <
typename timeseries>
80 #endif // jb_testing_resize_if_application_hpp static constexpr auto check(T *) -> typename std::is_void< decltype(std::declval< T >().resize(std::declval< std::size_t >()))>::type
static constexpr std::false_type check(...)
void resize_if_applicable(timeseries &ts, std::size_t newsize, std::true_type)
Resize a timeseries to a newsize.
static constexpr bool value
Type trait to evaluate if a collection of numbers (e.g.
decltype(check< C >(nullptr)) type
The top-level namespace for the JayBeams library.