Browse Source

Unnecessary 'explicit' removed (fixes #111).

main
offa 7 years ago
parent
commit
992579ea19
1 changed files with 2 additions and 2 deletions
  1. +2
    -2
      include/detail/wrapper.h

+ 2
- 2
include/detail/wrapper.h View File

public: public:


template<class TT, class G, std::enable_if_t<std::is_constructible_v<T, TT>, int> = 0> template<class TT, class G, std::enable_if_t<std::is_constructible_v<T, TT>, int> = 0>
explicit Wrapper(TT&& value, G&& g) noexcept(noexcept(Wrapper{value})) : Wrapper(std::forward<TT>(value))
Wrapper(TT&& value, G&& g) noexcept(noexcept(Wrapper{value})) : Wrapper(std::forward<TT>(value))
{ {
g.release(); g.release();
} }
public: public:


template<class TT, class G, std::enable_if_t<std::is_convertible_v<TT, T&>, int> = 0> template<class TT, class G, std::enable_if_t<std::is_convertible_v<TT, T&>, int> = 0>
explicit Wrapper(TT&& value, G&& g) noexcept(noexcept(static_cast<T&>(value))) : m_value(static_cast<T&>(value))
Wrapper(TT&& value, G&& g) noexcept(noexcept(static_cast<T&>(value))) : m_value(static_cast<T&>(value))
{ {
g.release(); g.release();
} }

Loading…
Cancel
Save