LibGC+Everywhere: Factor out a LibGC from LibJS

Resulting in a massive rename across almost everywhere! Alongside the
namespace change, we now have the following names:

 * JS::NonnullGCPtr -> GC::Ref
 * JS::GCPtr -> GC::Ptr
 * JS::HeapFunction -> GC::Function
 * JS::CellImpl -> GC::Cell
 * JS::Handle -> GC::Root
This commit is contained in:
Shannon Booth 2024-11-15 04:01:23 +13:00 committed by Andreas Kling
parent ce23efc5f6
commit f87041bf3a
Notes: github-actions[bot] 2024-11-15 13:50:17 +00:00
1722 changed files with 9939 additions and 9906 deletions

View file

@ -8,8 +8,8 @@
#include <AK/HashMap.h>
#include <AK/String.h>
#include <LibJS/Heap/GCPtr.h>
#include <LibJS/Heap/Handle.h>
#include <LibGC/Ptr.h>
#include <LibGC/Root.h>
#include <LibURL/Forward.h>
#include <LibWeb/Forward.h>
@ -17,8 +17,8 @@ namespace Web::FileAPI {
// https://w3c.github.io/FileAPI/#blob-url-entry
struct BlobURLEntry {
JS::Handle<Blob> object; // FIXME: This could also be a MediaSource after we implement MSE.
JS::Handle<HTML::EnvironmentSettingsObject> environment;
GC::Root<Blob> object; // FIXME: This could also be a MediaSource after we implement MSE.
GC::Root<HTML::EnvironmentSettingsObject> environment;
};
// https://w3c.github.io/FileAPI/#BlobURLStore
@ -26,10 +26,10 @@ using BlobURLStore = HashMap<String, BlobURLEntry>;
BlobURLStore& blob_url_store();
ErrorOr<String> generate_new_blob_url();
ErrorOr<String> add_entry_to_blob_url_store(JS::NonnullGCPtr<Blob> object);
ErrorOr<String> add_entry_to_blob_url_store(GC::Ref<Blob> object);
ErrorOr<void> remove_entry_from_blob_url_store(StringView url);
Optional<BlobURLEntry> resolve_a_blob_url(URL::URL const&);
void run_unloading_cleanup_steps(JS::NonnullGCPtr<DOM::Document>);
void run_unloading_cleanup_steps(GC::Ref<DOM::Document>);
}