michangarrito/apps/backend/node_modules/react-native/ReactCommon/react/utils/OnScopeExit.h
rckrdmrd 97f407c661 [MIGRATION-V2] feat: Migrar michangarrito a estructura v2
- Prefijo v2: MCH
- TRACEABILITY-MASTER.yml creado
- Listo para integracion como submodulo

Workspace: v2.0.0 | SIMCO: v4.0.0
2026-01-10 11:28:54 -06:00

37 lines
740 B
C++

/*
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
#pragma once
#include <utility>
namespace facebook::react {
template <typename Lambda>
class OnScopeExit {
public:
explicit OnScopeExit(const Lambda &&lambda) noexcept : lambda_(std::move(lambda)) {}
// Non-movable
OnScopeExit(const OnScopeExit &) = delete;
OnScopeExit(OnScopeExit &&) = delete;
// Non-copyable
OnScopeExit &operator=(const OnScopeExit &) = delete;
OnScopeExit &operator=(OnScopeExit &&) = delete;
~OnScopeExit() noexcept
{
lambda_();
}
private:
Lambda lambda_;
};
} // namespace facebook::react