:relfileprefix: ../../../
[#EC05528198EA87FCCFB1FF9472304396154D4EB5-scope_success]

= Overload set scope_success::scope_success

== Members




[source,cpp,subs="verbatim,macros,-callouts"]
----
template<
    typename F,
    typename = enable_if<detail::conjunction<std::is_constructible<base_type, F, bool>, detail::is_not_like_scope_success<F>>::value>::type>
scope_success(
    F&& func,
    bool active = true) noexcept(std::is_nothrow_constructible<base_type, F, bool>::value);
  xref:boost/scope/scope_success-0ec/2constructor-0b.adoc[pass:c,q,m[*_» more..._*]]
----




[source,cpp,subs="verbatim,macros,-callouts"]
----
template<
    typename F,
    typename C,
    typename = enable_if<std::is_constructible<base_type, F, C, bool>::value>::type>
scope_success(
    F&& func,
    C&& cond,
    bool active = true) noexcept(std::is_nothrow_constructible<base_type, F, C, bool>::value);
  xref:boost/scope/scope_success-0ec/2constructor-0d.adoc[pass:c,q,m[*_» more..._*]]
----




[source,cpp,subs="verbatim,macros,-callouts"]
----
template<
    bool Requires = std::is_move_constructible<base_type>::value,
    typename = enable_if<Requires>::type>
scope_success(xref:boost/scope/scope_success-0ec.adoc[scope_success]&& that) noexcept(std::is_nothrow_move_constructible<base_type>::value);
  xref:boost/scope/scope_success-0ec/2constructor-027.adoc[pass:c,q,m[*_» more..._*]]
----




[source,cpp,subs="verbatim,macros,-callouts"]
----
scope_success(const xref:boost/scope/scope_success-0ec.adoc[scope_success]&) = delete;
  xref:boost/scope/scope_success-0ec/2constructor-02c.adoc[pass:c,q,m[*_» more..._*]]
----

