15#ifndef LLVM_ADT_SCOPEEXIT_H
16#define LLVM_ADT_SCOPEEXIT_H
23 Callable ExitFunction;
27 template <
typename Fp>
31 : ExitFunction(
std::
move(Rhs.ExitFunction)), Engaged(Rhs.Engaged) {
scope_exit & operator=(const scope_exit &)=delete
scope_exit(const scope_exit &)=delete
scope_exit(scope_exit &&Rhs)
scope_exit & operator=(scope_exit &&)=delete
This is an optimization pass for GlobalISel generic memory operations.
scope_exit(Callable) -> scope_exit< Callable >
auto make_scope_exit(Callable &&F)
OutputIt move(R &&Range, OutputIt Out)
Provide wrappers to std::move which take ranges instead of having to pass begin/end explicitly.
Implement std::hash so that hash_code can be used in STL containers.