Given a cvref-qualified capture type, what capture reference type is it convertible to? The input value category affects the output reference type exactly as you'd expect for types NOT wrapped by capture. But, additionally, this knows to pick the correct wrapper: - co_cleanup_capture inputs become co_cleanup_capture<SomeRef> - after_cleanup_ref_* inputs become after_cleanup_capture<SomeRef> - everything else becomes just capture<SomeRef>
Declared in <folly/coro/safe/Captures.h>
template<typename Captures>
using capture_ref_conversion_t = std::remove_cvref_t<Captures>::ref_like_t<Captures>;