1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
/* * Copyright (c) 2020, Andreas Kling <kling@serenityos.org> * * SPDX-License-Identifier: BSD-2-Clause */ #pragma once #include <LibJS/Heap/Heap.h> namespace JS { class DeferGC { public: explicit DeferGC(Heap& heap) : m_heap(heap) { m_heap.defer_gc({}); } ~DeferGC() { m_heap.undefer_gc({}); } private: Heap& m_heap; }; }