5 #ifndef VCCC_CONCEPTS_IMPLICIT_EXPRESSION_CHECK_HPP_
6 #define VCCC_CONCEPTS_IMPLICIT_EXPRESSION_CHECK_HPP_
13 template<
template<
typename,
typename,
typename...>
class Check,
typename Left,
typename Right>
14 struct implicit_expression_check_impl
18 Check<Left, const Right&>,
19 Check<Left, const Right&&>
47 template<
template<
typename,
typename...>
class Check,
typename Operand,
typename...>
50 template<
template<
typename,
typename,
typename...>
class Check,
typename Left,
typename Right>
53 template<
template<
typename,
typename,
typename...>
class Check,
typename Left,
typename Right>
55 : detail::implicit_expression_check_impl<Check, Left, Right> {};
57 template<
template<
typename,
typename,
typename...>
class Check,
typename Left,
typename Right>
60 detail::implicit_expression_check_impl<Check, Left&, Right>,
61 detail::implicit_expression_check_impl<Check, Left&&, Right>,
62 detail::implicit_expression_check_impl<Check, const Left&, Right>,
63 detail::implicit_expression_check_impl<Check, const Left&&, Right>
66 template<
template<
typename,
typename...>
class Check,
typename Operand>
69 template<
template<
typename,
typename...>
class Check,
typename Operand>
73 Check<const Operand&>,
74 Check<const Operand&&>
Definition: directory.h:12
Definition: conjunction.hpp:22
Definition: implicit_expression_check.hpp:48