VCCC  2024.05
VisualCamp Common C++ library
vtype_convert.hpp File Reference
#include <algorithm>
#include "vccc/__type_support/convert_to.hpp"
#include "vccc/__type_support/cast.hpp"
#include "vccc/type_traits.hpp"

Go to the source code of this file.

Namespaces

 vccc
 

Functions

template<typename NewType , template< typename, int... > class CVType, typename OldType , int ... CVParams, std::enable_if_t<!std::is_same< NewType, OldType >::value, int > = 0>
decltype(auto) vtype_convert (const CVType< OldType, CVParams... > &cv_type)
 returns similar opencv type, but the value_type is different More...
 
template<typename NewType , typename Func , template< typename... > class Container, typename OldType , typename ... Params, std::enable_if_t< is_range< Container< OldType, Params... >>::value, int > = 0>
decltype(auto) vtype_convert (const Container< OldType, Params... > &container, Func func)
 vtype_convert on container types with custom unary operation More...
 
template<typename NewType , template< typename... > class Container, typename ... Params, typename UnaryOperation , std::enable_if_t< is_range< Container< NewType, Params... >>::value, int > = 0>
decltype(auto) vtype_convert (const Container< NewType, Params... > &container, UnaryOperation func)
 
template<typename NewType , template< typename... > class Container, typename OldType , typename ... Params, std::enable_if_t< is_range< Container< OldType, Params... >>::value, int > = 0>
decltype(auto) vtype_convert (const Container< OldType, Params... > &container)
 returns similar container type, but the value_type is different More...
 
template<typename NewType , template< typename... > class Container, typename ... Params, std::enable_if_t< is_range< Container< NewType, Params... >>::value, int > = 0>
decltype(auto) vtype_convert (const Container< NewType, Params... > &container)
 
template<typename NewType , template< typename... > class Container, typename ... Params, std::enable_if_t< is_range< Container< NewType, Params... >>::value, int > = 0>
decltype(auto) vtype_convert (Container< NewType, Params... > &&container)
 
template<typename NewType , typename OldType , std::size_t n, typename UnaryOperation , std::enable_if_t<!std::is_same< NewType, OldType >::value, int > = 0>
constexpr decltype(auto) vtype_convert (const std::array< OldType, n > &container, UnaryOperation func)
 
template<typename NewType , std::size_t n, typename UnaryOperation >
constexpr decltype(auto) vtype_convert (const std::array< NewType, n > &container, UnaryOperation func)
 
template<typename NewType , std::size_t n, typename UnaryOperation >
constexpr decltype(auto) vtype_convert (std::array< NewType, n > &&container, UnaryOperation func)
 
template<typename NewType , typename OldType , std::size_t n, std::enable_if_t<!std::is_same< NewType, OldType >::value, int > = 0>
constexpr decltype(auto) vtype_convert (const std::array< OldType, n > &container)
 
template<typename NewType , std::size_t n>
constexpr decltype(auto) vtype_convert (const std::array< NewType, n > &container)
 
template<typename NewType , std::size_t n>
constexpr decltype(auto) vtype_convert (std::array< NewType, n > &&container)