Constructors
Declared in <absl/functional/function_ref.h>
Construct from nontype_t
template<
auto F,
typename = EnableIfCompatible<decltype(F)>>
FunctionRef(nontype_t<F> arg) noexcept;
» more...
Construct from F
template<
typename F,
typename = EnableIfCompatible<F const&>>
FunctionRef(F const& f) noexcept;
» more...
Construct from F
template<
typename F,
typename = EnableIfCompatible<F&>>
FunctionRef(F&& f) noexcept;
» more...
Construct from F
template<
typename F,
typename = EnableIfCompatible<F*>,
absl::functional_internal::EnableIf<std::is_function_v<F>> = 0>
FunctionRef(F* f) noexcept;
» more...
template<
auto F,
typename Obj,
typename = EnableIfCompatible<decltype(F), Obj*>>
FunctionRef(
nontype_t<F>,
Obj* obj) noexcept;
» more...
template<
auto F,
typename Obj,
typename = EnableIfCompatible<decltype(F), Obj const*>>
FunctionRef(
nontype_t<F> arg,
Obj const* obj) noexcept;
» more...
template<
auto F,
typename Obj,
typename = EnableIfCompatible<decltype(F), std::remove_reference_t<Obj>&>,
absl::functional_internal::EnableIf<! std::is_rvalue_reference_v<Obj &&>> = 0>
FunctionRef(
nontype_t<F> arg,
Obj&& obj) noexcept;
» more...
template<
auto F,
typename Obj,
typename = EnableIfCompatible<decltype(F), std::remove_reference_t<Obj>&>,
absl::functional_internal::EnableIf<!std::is_rvalue_reference_v<Obj &&>> = 0>
FunctionRef(
nontype_t<F> arg,
Obj&& obj) noexcept;
» more...