25 #ifndef CARGO_IS_UNION_HPP
26 #define CARGO_IS_UNION_HPP
33 template <
typename T,
typename F>
36 static std::true_type
check(
typename F::template checker__<C>* =0);
39 static std::false_type
check(...);
41 static const bool value = std::is_same<decltype(check<T>(0)), std::true_type>
::value;
44 template <
typename T,
typename F>
45 struct has_member :
public std::integral_constant<bool, has_member_impl<T, F>::value> {};
53 const X& (T::*)()
const = &T::as,
54 X& (T::*)(
const X& src) = &T::set,
55 bool (T::*)() = &T::isSet
69 #endif // CARGO_IS_UNION_HPP
static std::true_type check(typename F::template checker__< C > *=0)
Definition: is-union.hpp:60
Internal configuration helper.
Definition: is-union.hpp:50
static const bool value
Definition: is-union.hpp:41
Helper for compile-time checking against existance of template method 'accept'.
Definition: is-visitable.hpp:49
Definition: is-union.hpp:34
Definition: is-union.hpp:45
Definition: is-union.hpp:57