OpenCV  4.0.0
Open Source Computer Vision
Classes | Public Member Functions | Static Public Member Functions | Protected Attributes | Friends | List of all members
cv::util::variant< Ts > Class Template Reference

#include "variant.hpp"

Public Member Functions

 variant () noexcept
 
 variant (const variant &other)
 
 variant (variant &&other) noexcept
 
template<typename T >
 variant (const T &t)
 
template<typename T >
 variant (T &&t, typename detail::are_different< variant, T, int >::type=0)
 
 ~variant ()
 
std::size_t index () const noexcept
 
variantoperator= (const variant &rhs)
 
variantoperator= (variant &&rhs) noexcept
 
template<class T >
detail::are_different< variant, T, variant & >::type operator= (T &&t) noexcept
 
template<typename... Ts>
variant< Ts... > & operator= (const variant< Ts... > &rhs)
 
template<typename... Ts>
variant< Ts... > & operator= (variant< Ts... > &&rhs) noexcept
 
void swap (variant &rhs) noexcept
 

Static Public Member Functions

template<typename T >
static constexpr std::size_t index_of ()
 

Protected Attributes

Memory memory
 

Friends

template<typename T , typename... Us>
T & get (variant< Us... > &v)
 
template<typename T , typename... Us>
const T & get (const variant< Us... > &v)
 
template<typename... Us>
bool operator== (const variant< Us... > &lhs, const variant< Us... > &rhs)
 

Constructor & Destructor Documentation

§ variant() [1/5]

template<typename... Ts>
cv::util::variant< Ts >::variant ( )
noexcept

§ variant() [2/5]

template<typename... Ts>
cv::util::variant< Ts >::variant ( const variant< Ts > &  other)

§ variant() [3/5]

template<typename... Ts>
cv::util::variant< Ts >::variant ( variant< Ts > &&  other)
noexcept

§ variant() [4/5]

template<typename... Ts>
template<class T >
cv::util::variant< Ts >::variant ( const T &  t)
explicit

§ variant() [5/5]

template<typename... Ts>
template<class T >
cv::util::variant< Ts >::variant ( T &&  t,
typename detail::are_different< variant< Ts >, T, int >::type  = 0 
)
explicit

§ ~variant()

template<typename... Ts>
cv::util::variant< Ts >::~variant ( )

Member Function Documentation

§ index()

template<typename... Ts>
std::size_t cv::util::variant< Ts >::index ( ) const
noexcept

§ index_of()

template<typename... Ts>
template<typename T >
constexpr std::size_t cv::util::variant< Ts >::index_of ( )
static

§ operator=() [1/5]

template<typename... Ts>
variant& cv::util::variant< Ts >::operator= ( const variant< Ts > &  rhs)

§ operator=() [2/5]

template<typename... Ts>
variant& cv::util::variant< Ts >::operator= ( variant< Ts > &&  rhs)
noexcept

§ operator=() [3/5]

template<typename... Ts>
template<class T >
detail::are_different< variant< Ts... >, T, variant< Ts... > & >::type cv::util::variant< Ts >::operator= ( T &&  t)
noexcept

§ operator=() [4/5]

template<typename... Ts>
template<typename... Ts>
variant<Ts...>& cv::util::variant< Ts >::operator= ( const variant< Ts... > &  rhs)

§ operator=() [5/5]

template<typename... Ts>
template<typename... Ts>
variant<Ts...>& cv::util::variant< Ts >::operator= ( variant< Ts... > &&  rhs)
noexcept

§ swap()

template<typename... Ts>
void cv::util::variant< Ts >::swap ( variant< Ts > &  rhs)
noexcept

Friends And Related Function Documentation

§ get [1/2]

template<typename... Ts>
template<typename T , typename... Us>
T& get ( variant< Us... > &  v)
friend

§ get [2/2]

template<typename... Ts>
template<typename T , typename... Us>
const T& get ( const variant< Us... > &  v)
friend

§ operator==

template<typename... Ts>
template<typename... Us>
bool operator== ( const variant< Us... > &  lhs,
const variant< Us... > &  rhs 
)
friend

Member Data Documentation

§ memory

template<typename... Ts>
Memory cv::util::variant< Ts >::memory
protected

The documentation for this class was generated from the following file: