// SPDX-FileCopyrightText: 2023 Yury Gubich // SPDX-License-Identifier: GPL-3.0-or-later #pragma once #include class FinalAction { public: FinalAction(const std::function& action); ~FinalAction(); FinalAction() = delete; FinalAction(const FinalAction&) = delete; FinalAction(FinalAction&&) = delete; FinalAction& operator = (const FinalAction&) = delete; FinalAction& operator = (FinalAction&&) = delete; private: std::function action; };