|
CAF 0.17.6
|
Allows specializing the sum_type_access trait for any type that simply wraps a variant and exposes it with a get_data() member function.
More...
#include <default_sum_type_access.hpp>
Public Types | |
| using | types = typename T::types |
| using | type0 = typename detail::tl_head< types >::type |
Static Public Member Functions | |
| template<class U , int Pos> | |
| static bool | is (const T &x, sum_type_token< U, Pos > token) |
| template<class U , int Pos> | |
| static U & | get (T &x, sum_type_token< U, Pos > token) |
| template<class U , int Pos> | |
| static const U & | get (const T &x, sum_type_token< U, Pos > token) |
| template<class U , int Pos> | |
| static U * | get_if (T *x, sum_type_token< U, Pos > token) |
| template<class U , int Pos> | |
| static const U * | get_if (const T *x, sum_type_token< U, Pos > token) |
| template<class Result , class Visitor , class... Ts> | |
| static Result | apply (T &x, Visitor &&visitor, Ts &&... xs) |
| template<class Result , class Visitor , class... Ts> | |
| static Result | apply (const T &x, Visitor &&visitor, Ts &&... xs) |
Static Public Attributes | |
| static constexpr bool | specialized = true |
Allows specializing the sum_type_access trait for any type that simply wraps a variant and exposes it with a get_data() member function.