| 1625 | |
| 1626 | template <typename T> |
| 1627 | inline decltype(auto) deref(T&& item) { |
| 1628 | using Tu = meta::unqualified_t<T>; |
| 1629 | if constexpr (meta::is_pointer_like_v<Tu>) { |
| 1630 | return *std::forward<T>(item); |
| 1631 | } |
| 1632 | else { |
| 1633 | return std::forward<T>(item); |
| 1634 | } |
| 1635 | } |
| 1636 | |
| 1637 | template <typename T> |
| 1638 | inline decltype(auto) deref_move_only(T&& item) { |
no outgoing calls
no test coverage detected