absl::FunctionRef<R const(Args...)>::FunctionRef

Constructors

Synopses

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...