BOOST_HANA_NAMESPACE_BEGIN
+ //! @cond
template <typename R>
- struct one_t {
+ constexpr decltype(auto) one_t<R>::operator()() const {
#ifndef BOOST_HANA_CONFIG_DISABLE_CONCEPT_CHECKS
static_assert(hana::Ring<R>::value,
"hana::one<R>() requires 'R' to be a Ring");
#endif
- constexpr decltype(auto) operator()() const {
- using One = BOOST_HANA_DISPATCH_IF(one_impl<R>,
- hana::Ring<R>::value
- );
+ using One = BOOST_HANA_DISPATCH_IF(one_impl<R>,
+ hana::Ring<R>::value
+ );
- return One::apply();
- }
- };
+ return One::apply();
+ }
+ //! @endcond
template <typename R, bool condition>
struct one_impl<R, when<condition>> : default_ {