mrdocs::reference_converts_from_temporary_v

Synopsis

Declared in <mrdocs/Support/Concepts.hpp>
template<
    class To,
    class From>
concept reference_converts_from_temporary_v = std::is_reference_v<To>
          && ((!std::is_reference_v<From>
               && std::is_convertible_v<
                   std::remove_cvref_t<From>*,
                   std::remove_cvref_t<To>*>)
              || (std::is_lvalue_reference_v<To>
                  && std::is_const_v<std::remove_reference_t<To>>
                  && std::is_convertible_v<From, const std::remove_cvref_t<To>&&>
                  && !std::is_convertible_v<From, std::remove_cvref_t<To>&>) );

Created with MrDocs