// // reference.h // stream // // Created by Sam Jaffe on 3/29/23. // #pragma once #include namespace stream::ranges::views { inline auto deref() { return transform([](auto const & ptr) -> decltype(auto) { return *ptr; }); } inline auto as_const() { return transform([](auto & ref) -> auto const & { return ref; }); } inline auto as_rvalue() { return transform([](auto & ref) -> auto && { return ref; }); } }