[tbb-commits] [tor-browser] 67/73: Bug 1777574, automate CC zone handling, r=mccr8 a=RyanVM
gitolite role
git at cupani.torproject.org
Wed Sep 21 20:18:00 UTC 2022
This is an automated email from the git hooks/post-receive script.
richard pushed a commit to branch geckoview-102.3.0esr-12.0-1
in repository tor-browser.
commit 7a4366e13b36f3012b90eef6b871a0eb393ef05b
Author: Olli Pettay <Olli.Pettay at helsinki.fi>
AuthorDate: Tue Sep 6 22:04:25 2022 +0000
Bug 1777574, automate CC zone handling, r=mccr8 a=RyanVM
Differential Revision: https://phabricator.services.mozilla.com/D156605
---
accessible/aom/AccessibleNode.h | 2 +-
devtools/shared/heapsnapshot/DominatorTree.h | 2 +-
devtools/shared/heapsnapshot/HeapSnapshot.h | 2 +-
docshell/base/BrowsingContextGroup.h | 2 +-
docshell/base/WindowContext.cpp | 4 +-
docshell/base/WindowContext.h | 2 +-
docshell/shistory/ChildSHistory.cpp | 4 +-
docshell/shistory/ChildSHistory.h | 2 +-
dom/animation/AnimationEffect.cpp | 4 +-
dom/animation/AnimationEffect.h | 2 +-
dom/animation/AnimationTimeline.cpp | 4 +-
dom/animation/AnimationTimeline.h | 2 +-
dom/animation/CSSPseudoElement.h | 2 +-
dom/base/AbstractRange.cpp | 4 +-
dom/base/AbstractRange.h | 2 +-
dom/base/Attr.cpp | 4 +-
dom/base/Attr.h | 2 +-
dom/base/BarProps.h | 2 +-
dom/base/CharacterData.cpp | 6 +-
dom/base/CharacterData.h | 4 +-
dom/base/Crypto.h | 2 +-
dom/base/CustomElementRegistry.cpp | 2 +-
dom/base/DOMImplementation.h | 2 +-
dom/base/DOMIntersectionObserver.h | 2 +-
dom/base/DOMMatrix.h | 2 +-
dom/base/DOMParser.h | 2 +-
dom/base/DOMPoint.h | 2 +-
dom/base/DOMQuad.h | 2 +-
dom/base/DOMRect.h | 4 +-
dom/base/DOMStringList.h | 2 +-
dom/base/External.h | 2 +-
dom/base/FormData.cpp | 4 +-
dom/base/FormData.h | 2 +-
dom/base/FragmentOrElement.cpp | 6 +-
dom/base/FragmentOrElement.h | 2 +-
dom/base/IdleDeadline.h | 2 +-
dom/base/IntlUtils.h | 2 +-
dom/base/Location.h | 2 +-
dom/base/Navigator.cpp | 4 +-
dom/base/Navigator.h | 2 +-
dom/base/PlacesWeakCallbackWrapper.h | 2 +-
dom/base/ResizeObserver.cpp | 4 +-
dom/base/ResizeObserver.h | 6 +-
dom/base/ScreenLuminance.h | 2 +-
dom/base/Selection.cpp | 3 +-
dom/base/Selection.h | 2 +-
dom/base/StructuredCloneTester.h | 2 +-
dom/base/StyleSheetList.h | 2 +-
dom/base/SubtleCrypto.h | 2 +-
dom/base/TimeoutHandler.cpp | 2 +-
dom/base/nsChildContentList.h | 2 +-
dom/base/nsContentList.cpp | 3 +-
dom/base/nsContentList.h | 2 +-
dom/base/nsDOMAttributeMap.cpp | 4 +-
dom/base/nsDOMAttributeMap.h | 2 +-
dom/base/nsDOMCaretPosition.h | 2 +-
dom/base/nsDOMMutationObserver.h | 2 +-
dom/base/nsDOMTokenList.h | 2 +-
dom/base/nsFrameLoader.h | 2 +-
dom/base/nsHistory.h | 2 +-
dom/base/nsJSEnvironment.cpp | 2 +-
dom/base/nsMimeTypeArray.h | 4 +-
dom/base/nsPluginArray.h | 4 +-
dom/base/nsWindowRoot.cpp | 4 +-
dom/base/nsWindowRoot.h | 2 +-
dom/base/nsWrapperCache.h | 186 ++++++++++++++++++---
dom/bindings/CallbackObject.cpp | 2 +-
dom/bindings/Codegen.py | 5 +-
dom/bindings/SimpleGlobalObject.cpp | 4 +-
dom/bindings/SimpleGlobalObject.h | 3 +-
dom/bindings/nsScriptErrorWithStack.cpp | 2 +-
dom/bindings/test/TestInterfaceIterableDouble.h | 2 +-
.../test/TestInterfaceIterableDoubleUnion.h | 2 +-
dom/bindings/test/TestInterfaceIterableSingle.h | 2 +-
dom/bindings/test/TestInterfaceMaplike.h | 2 +-
dom/bindings/test/TestInterfaceMaplikeJSObject.h | 2 +-
dom/bindings/test/TestInterfaceMaplikeObject.h | 2 +-
dom/bindings/test/TestInterfaceObservableArray.h | 2 +-
dom/bindings/test/TestInterfaceSetlike.h | 2 +-
dom/bindings/test/TestInterfaceSetlikeNode.h | 2 +-
dom/bindings/test/TestTrialInterface.h | 2 +-
.../test/WrapperCachedNonISupportsTestInterface.h | 2 +-
dom/cache/Cache.h | 2 +-
dom/cache/CacheStorage.h | 2 +-
dom/canvas/CanvasGradient.h | 2 +-
dom/canvas/CanvasPath.h | 2 +-
dom/canvas/CanvasPattern.h | 2 +-
dom/canvas/CanvasRenderingContext2D.cpp | 4 +-
dom/canvas/CanvasRenderingContext2D.h | 2 +-
dom/canvas/ClientWebGLContext.h | 26 +--
dom/canvas/ClientWebGLExtensions.h | 2 +-
dom/canvas/ImageBitmap.h | 2 +-
dom/canvas/ImageBitmapRenderingContext.h | 2 +-
dom/canvas/OffscreenCanvasRenderingContext2D.cpp | 11 +-
dom/canvas/XRWebGLLayer.h | 2 +-
dom/clients/api/Client.h | 2 +-
dom/clients/api/Clients.h | 2 +-
dom/console/Console.cpp | 2 +-
dom/console/ConsoleInstance.h | 2 +-
dom/credentialmanagement/Credential.h | 2 +-
dom/credentialmanagement/CredentialsContainer.h | 2 +-
dom/crypto/CryptoKey.h | 2 +-
dom/debugger/DebuggerNotification.h | 2 +-
dom/debugger/DebuggerNotificationObserver.h | 2 +-
dom/events/ClipboardItem.h | 2 +-
dom/events/CustomEvent.cpp | 2 +-
dom/events/DOMEventTargetHelper.cpp | 6 +-
dom/events/DOMEventTargetHelper.h | 2 +-
dom/events/DataTransfer.cpp | 3 +-
dom/events/DataTransfer.h | 2 +-
dom/events/DataTransferItem.h | 2 +-
dom/events/DataTransferItemList.h | 2 +-
dom/events/DeviceMotionEvent.h | 4 +-
dom/events/Event.cpp | 6 +-
dom/events/Event.h | 2 +-
dom/events/ImageCaptureError.h | 2 +-
dom/events/MessageEvent.cpp | 2 +-
dom/events/PaintRequest.h | 4 +-
dom/events/TextClause.h | 2 +-
dom/events/Touch.h | 2 +-
dom/events/TouchEvent.h | 2 +-
dom/fetch/Headers.h | 2 +-
dom/fetch/Request.cpp | 7 +-
dom/fetch/Request.h | 4 +-
dom/file/FileList.h | 2 +-
dom/filesystem/Directory.cpp | 4 +-
dom/filesystem/Directory.h | 2 +-
dom/filesystem/compat/FileSystem.h | 2 +-
dom/filesystem/compat/FileSystemDirectoryReader.h | 2 +-
dom/filesystem/compat/FileSystemEntry.h | 2 +-
dom/flex/Flex.h | 2 +-
dom/flex/FlexItemValues.h | 2 +-
dom/flex/FlexLineValues.h | 2 +-
dom/fs/FileSystemDirectoryIterator.h | 2 +-
dom/fs/FileSystemHandle.h | 2 +-
dom/fs/FileSystemSyncAccessHandle.h | 2 +-
dom/gamepad/Gamepad.h | 2 +-
dom/gamepad/GamepadButton.h | 2 +-
dom/gamepad/GamepadHapticActuator.h | 2 +-
dom/gamepad/GamepadLightIndicator.h | 2 +-
dom/geolocation/Geolocation.h | 2 +-
dom/geolocation/GeolocationCoordinates.h | 2 +-
dom/geolocation/GeolocationPosition.h | 2 +-
dom/geolocation/GeolocationPositionError.h | 2 +-
dom/grid/Grid.h | 2 +-
dom/grid/GridArea.h | 2 +-
dom/grid/GridDimension.h | 2 +-
dom/grid/GridLine.h | 2 +-
dom/grid/GridLines.h | 2 +-
dom/grid/GridTrack.h | 2 +-
dom/grid/GridTracks.h | 2 +-
dom/html/ElementInternals.cpp | 4 +-
dom/html/ElementInternals.h | 4 +-
dom/html/HTMLAllCollection.h | 2 +-
dom/html/HTMLCanvasElement.h | 2 +-
dom/html/HTMLOptionsCollection.h | 4 +-
dom/html/HTMLTableElement.cpp | 4 +-
dom/html/MediaError.h | 2 +-
dom/html/TimeRanges.h | 2 +-
dom/html/ValidityState.h | 2 +-
dom/html/nsDOMStringMap.cpp | 4 +-
dom/html/nsDOMStringMap.h | 2 +-
dom/indexedDB/IDBCursor.cpp | 4 +-
dom/indexedDB/IDBIndex.cpp | 2 +-
dom/indexedDB/IDBKeyRange.cpp | 2 +-
dom/indexedDB/IDBObjectStore.cpp | 2 +-
dom/indexedDB/IDBRequest.cpp | 2 +-
dom/ipc/WindowGlobalChild.h | 2 +-
dom/ipc/jsactor/JSActor.cpp | 4 +-
dom/ipc/jsactor/JSActor.h | 2 +-
dom/ipc/jsactor/JSProcessActorChild.cpp | 3 -
dom/ipc/jsactor/JSProcessActorChild.h | 3 +-
dom/ipc/jsactor/JSProcessActorParent.cpp | 3 -
dom/ipc/jsactor/JSProcessActorParent.h | 3 +-
dom/ipc/jsactor/JSWindowActorChild.cpp | 3 -
dom/ipc/jsactor/JSWindowActorChild.h | 3 +-
dom/ipc/jsactor/JSWindowActorParent.cpp | 3 -
dom/ipc/jsactor/JSWindowActorParent.h | 3 +-
dom/locks/Lock.h | 2 +-
dom/locks/LockManager.h | 2 +-
dom/media/GetUserMediaRequest.h | 2 +-
dom/media/MediaDeviceInfo.h | 2 +-
dom/media/MediaStreamError.h | 2 +-
dom/media/VideoPlaybackQuality.h | 2 +-
dom/media/eme/MediaKeyStatusMap.h | 2 +-
dom/media/eme/MediaKeySystemAccess.h | 2 +-
dom/media/eme/MediaKeys.cpp | 3 +-
dom/media/eme/MediaKeys.h | 2 +-
dom/media/mediacapabilities/MediaCapabilities.h | 2 +-
dom/media/mediasession/MediaMetadata.h | 2 +-
dom/media/mediasession/MediaSession.cpp | 3 +-
dom/media/mediasession/MediaSession.h | 2 +-
dom/media/webaudio/AudioListener.h | 2 +-
dom/media/webaudio/AudioParam.cpp | 4 +-
dom/media/webaudio/AudioParam.h | 2 +-
dom/media/webaudio/AudioParamMap.h | 2 +-
dom/media/webaudio/AudioWorkletProcessor.h | 2 +-
dom/media/webaudio/PeriodicWave.h | 2 +-
dom/media/webrtc/RTCCertificate.h | 2 +-
dom/media/webrtc/RTCIdentityProviderRegistrar.h | 2 +-
dom/media/webrtc/jsapi/PeerConnectionImpl.cpp | 3 +-
dom/media/webrtc/jsapi/PeerConnectionImpl.h | 2 +-
dom/media/webrtc/jsapi/RTCRtpReceiver.h | 2 +-
dom/media/webrtc/jsapi/RTCRtpSender.h | 2 +-
dom/media/webrtc/jsapi/RTCRtpTransceiver.cpp | 3 +-
dom/media/webrtc/jsapi/RTCRtpTransceiver.h | 2 +-
dom/media/webrtc/jsapi/RTCStatsReport.h | 2 +-
dom/media/webspeech/recognition/SpeechGrammar.h | 2 +-
.../webspeech/recognition/SpeechGrammarList.h | 2 +-
.../recognition/SpeechRecognitionAlternative.h | 2 +-
.../recognition/SpeechRecognitionResult.h | 2 +-
.../recognition/SpeechRecognitionResultList.h | 2 +-
dom/media/webspeech/synth/SpeechSynthesisVoice.h | 2 +-
dom/media/webvtt/TextTrackCueList.h | 2 +-
dom/media/webvtt/TextTrackRegion.h | 2 +-
dom/messagechannel/MessageChannel.h | 2 +-
dom/midi/MIDIInputMap.h | 2 +-
dom/midi/MIDIOutputMap.h | 2 +-
dom/payments/PaymentAddress.h | 2 +-
dom/performance/EventCounts.h | 2 +-
dom/performance/PerformanceEntry.h | 2 +-
dom/performance/PerformanceNavigation.h | 2 +-
dom/performance/PerformanceObserver.cpp | 3 +-
dom/performance/PerformanceObserver.h | 2 +-
dom/performance/PerformanceObserverEntryList.h | 2 +-
dom/performance/PerformanceServerTiming.h | 2 +-
dom/performance/PerformanceTiming.h | 2 +-
dom/permission/Permissions.h | 2 +-
dom/promise/Promise.cpp | 4 +-
dom/push/PushManager.h | 2 +-
dom/push/PushSubscription.h | 2 +-
dom/quota/StorageManager.h | 2 +-
dom/reporting/Report.h | 2 +-
dom/reporting/ReportBody.h | 2 +-
dom/reporting/ReportingObserver.cpp | 3 +-
dom/reporting/ReportingObserver.h | 2 +-
dom/reporting/TestingDeprecatedInterface.h | 2 +-
dom/security/featurepolicy/FeaturePolicy.h | 2 +-
dom/security/sanitizer/Sanitizer.h | 2 +-
dom/serviceworkers/NavigationPreloadManager.h | 2 +-
dom/serviceworkers/ServiceWorkerEvents.cpp | 2 +-
dom/serviceworkers/ServiceWorkerEvents.h | 2 +-
dom/storage/Storage.h | 2 +-
dom/streams/ByteLengthQueuingStrategy.h | 2 +-
dom/streams/CountQueuingStrategy.h | 4 +-
dom/streams/ReadableStreamBYOBReader.h | 2 +-
dom/streams/ReadableStreamDefaultReader.h | 2 +-
dom/streams/TransformStream.h | 2 +-
dom/streams/TransformStreamDefaultController.h | 2 +-
dom/svg/SVGMatrix.h | 2 +-
dom/system/IOUtils.h | 2 +-
dom/u2f/U2F.cpp | 3 +-
dom/u2f/U2F.h | 4 +-
dom/url/URL.h | 2 +-
dom/url/URLSearchParams.h | 2 +-
dom/vr/VRDisplay.h | 4 +-
dom/vr/XRFrame.h | 2 +-
dom/vr/XRInputSource.h | 2 +-
dom/vr/XRInputSourceArray.h | 2 +-
dom/vr/XRPose.h | 2 +-
dom/vr/XRRenderState.h | 2 +-
dom/vr/XRViewport.h | 2 +-
dom/webgpu/Buffer.h | 3 +-
dom/webgpu/CanvasContext.h | 2 +-
dom/webgpu/ObjectModel.h | 14 +-
dom/webscheduling/WebTaskScheduler.h | 2 +-
dom/workers/WorkerLocation.h | 2 +-
dom/workers/WorkerNavigator.h | 2 +-
dom/worklet/Worklet.cpp | 4 +-
dom/worklet/Worklet.h | 2 +-
dom/worklet/WorkletGlobalScope.cpp | 4 +-
dom/worklet/WorkletGlobalScope.h | 3 +-
dom/xhr/XMLHttpRequestMainThread.cpp | 2 +-
dom/xslt/xpath/XPathResult.cpp | 3 +-
dom/xslt/xpath/XPathResult.h | 2 +-
dom/xslt/xslt/txMozillaXSLTProcessor.h | 4 +-
gfx/layers/apz/util/CheckerboardReportService.h | 2 +-
intl/l10n/FileSource.h | 2 +-
intl/l10n/FluentBundle.h | 4 +-
intl/l10n/FluentResource.h | 2 +-
intl/l10n/L10nRegistry.h | 6 +-
intl/l10n/Localization.h | 4 +-
js/loader/ModuleLoadRequest.cpp | 2 +-
js/xpconnect/loader/PrecompiledScript.h | 2 +-
js/xpconnect/src/Sandbox.cpp | 4 +-
js/xpconnect/src/SandboxPrivate.h | 4 +-
layout/style/CSSKeyframeRule.cpp | 4 +-
layout/style/CSSRuleList.h | 2 +-
layout/style/MediaList.h | 2 +-
layout/style/Rule.h | 2 +-
layout/style/StyleSheet.cpp | 4 +-
layout/style/StyleSheet.h | 2 +-
layout/style/nsComputedDOMStyle.cpp | 4 +-
layout/style/nsComputedDOMStyle.h | 2 +-
layout/style/nsDOMCSSAttrDeclaration.h | 2 +-
layout/xul/tree/nsTreeColumns.cpp | 3 +-
layout/xul/tree/nsTreeColumns.h | 4 +-
layout/xul/tree/nsTreeContentView.h | 4 +-
storage/mozStorageAsyncStatementParams.h | 2 +-
storage/mozStorageStatementParams.h | 2 +-
storage/mozStorageStatementRow.h | 2 +-
toolkit/components/extensions/DocumentObserver.h | 2 +-
toolkit/components/extensions/MatchPattern.h | 4 +-
.../extensions/WebExtensionContentScript.h | 2 +-
toolkit/components/extensions/WebExtensionPolicy.h | 2 +-
.../extensions/webidl-api/ExtensionAlarms.h | 2 +-
.../extensions/webidl-api/ExtensionMockAPI.h | 2 +-
.../extensions/webidl-api/ExtensionPort.cpp | 4 +-
.../extensions/webidl-api/ExtensionPort.h | 2 +-
.../extensions/webidl-api/ExtensionRuntime.h | 2 +-
.../extensions/webidl-api/ExtensionTest.h | 2 +-
.../extensions/webrequest/ChannelWrapper.cpp | 4 -
.../extensions/webrequest/ChannelWrapper.h | 3 +-
toolkit/components/glean/bindings/Category.h | 2 +-
toolkit/components/glean/bindings/Glean.h | 2 +-
toolkit/components/glean/bindings/GleanPings.h | 2 +-
.../components/glean/bindings/private/Labeled.h | 2 +-
.../components/sessionstore/SessionStoreFormData.h | 2 +-
.../sessionstore/SessionStoreScrollData.h | 2 +-
xpcom/base/CycleCollectedJSRuntime.cpp | 14 +-
xpcom/base/nsCycleCollectionParticipant.h | 64 ++++---
xpcom/base/nsCycleCollector.cpp | 2 +-
xpcom/tests/gtest/TestJSHolderMap.cpp | 3 +-
323 files changed, 577 insertions(+), 525 deletions(-)
diff --git a/accessible/aom/AccessibleNode.h b/accessible/aom/AccessibleNode.h
index aec918828079b..e9b328b13d54c 100644
--- a/accessible/aom/AccessibleNode.h
+++ b/accessible/aom/AccessibleNode.h
@@ -101,7 +101,7 @@ class AccessibleNode : public nsISupports, public nsWrapperCache {
explicit AccessibleNode(nsINode* aNode);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS;
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(AccessibleNode);
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(AccessibleNode);
JSObject* WrapObject(JSContext* aCx, JS::Handle<JSObject*> aGivenProto) final;
dom::ParentObject GetParentObject() const;
diff --git a/devtools/shared/heapsnapshot/DominatorTree.h b/devtools/shared/heapsnapshot/DominatorTree.h
index e8e06ee076a1e..fb3275cf23a22 100644
--- a/devtools/shared/heapsnapshot/DominatorTree.h
+++ b/devtools/shared/heapsnapshot/DominatorTree.h
@@ -38,7 +38,7 @@ class DominatorTree final : public nsISupports, public nsWrapperCache {
};
NS_DECL_CYCLE_COLLECTING_ISUPPORTS;
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(DominatorTree);
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(DominatorTree);
nsISupports* GetParentObject() const { return mParent; }
diff --git a/devtools/shared/heapsnapshot/HeapSnapshot.h b/devtools/shared/heapsnapshot/HeapSnapshot.h
index b4aa316f4cee0..d7bbc5455320f 100644
--- a/devtools/shared/heapsnapshot/HeapSnapshot.h
+++ b/devtools/shared/heapsnapshot/HeapSnapshot.h
@@ -119,7 +119,7 @@ class HeapSnapshot final : public nsISupports, public nsWrapperCache {
nsAString& outSnapshotId);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(HeapSnapshot)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(HeapSnapshot)
MOZ_DECLARE_REFCOUNTED_TYPENAME(HeapSnapshot)
nsISupports* GetParentObject() const { return mParent; }
diff --git a/docshell/base/BrowsingContextGroup.h b/docshell/base/BrowsingContextGroup.h
index 6e4dedaafc431..2ad92273f857b 100644
--- a/docshell/base/BrowsingContextGroup.h
+++ b/docshell/base/BrowsingContextGroup.h
@@ -38,7 +38,7 @@ class DocGroup;
class BrowsingContextGroup final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(BrowsingContextGroup)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(BrowsingContextGroup)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(BrowsingContextGroup)
// Interact with the list of synced contexts. This controls the lifecycle of
// the BrowsingContextGroup and contexts loaded within them.
diff --git a/docshell/base/WindowContext.cpp b/docshell/base/WindowContext.cpp
index 29eb2d32f3462..2c31c24fda04b 100644
--- a/docshell/base/WindowContext.cpp
+++ b/docshell/base/WindowContext.cpp
@@ -567,7 +567,7 @@ NS_INTERFACE_MAP_END
NS_IMPL_CYCLE_COLLECTING_ADDREF(WindowContext)
NS_IMPL_CYCLE_COLLECTING_RELEASE(WindowContext)
-NS_IMPL_CYCLE_COLLECTION_CLASS(WindowContext)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(WindowContext)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(WindowContext)
if (gWindowContexts) {
@@ -584,8 +584,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(WindowContext)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mChildren)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(WindowContext)
-
} // namespace dom
namespace ipc {
diff --git a/docshell/base/WindowContext.h b/docshell/base/WindowContext.h
index 469de6f4eb8ec..ebacffc2f7b5f 100644
--- a/docshell/base/WindowContext.h
+++ b/docshell/base/WindowContext.h
@@ -103,7 +103,7 @@ class WindowContext : public nsISupports, public nsWrapperCache {
MOZ_DECL_SYNCED_CONTEXT(WindowContext, MOZ_EACH_WC_FIELD)
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(WindowContext)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(WindowContext)
public:
static already_AddRefed<WindowContext> GetById(uint64_t aInnerWindowId);
diff --git a/docshell/shistory/ChildSHistory.cpp b/docshell/shistory/ChildSHistory.cpp
index b42e57bb06324..d455305081b5f 100644
--- a/docshell/shistory/ChildSHistory.cpp
+++ b/docshell/shistory/ChildSHistory.cpp
@@ -264,7 +264,7 @@ NS_INTERFACE_MAP_END
NS_IMPL_CYCLE_COLLECTING_ADDREF(ChildSHistory)
NS_IMPL_CYCLE_COLLECTING_RELEASE(ChildSHistory)
-NS_IMPL_CYCLE_COLLECTION_CLASS(ChildSHistory)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(ChildSHistory)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(ChildSHistory)
if (tmp->mHistory) {
@@ -278,8 +278,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(ChildSHistory)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mBrowsingContext, mHistory)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(ChildSHistory)
-
JSObject* ChildSHistory::WrapObject(JSContext* cx,
JS::Handle<JSObject*> aGivenProto) {
return ChildSHistory_Binding::Wrap(cx, this, aGivenProto);
diff --git a/docshell/shistory/ChildSHistory.h b/docshell/shistory/ChildSHistory.h
index eed0871621d9c..031c91c7daf1c 100644
--- a/docshell/shistory/ChildSHistory.h
+++ b/docshell/shistory/ChildSHistory.h
@@ -37,7 +37,7 @@ class BrowsingContext;
class ChildSHistory : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(ChildSHistory)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(ChildSHistory)
nsISupports* GetParentObject() const;
JSObject* WrapObject(JSContext* cx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/dom/animation/AnimationEffect.cpp b/dom/animation/AnimationEffect.cpp
index 3ed190121845d..5d2b7e057f30d 100644
--- a/dom/animation/AnimationEffect.cpp
+++ b/dom/animation/AnimationEffect.cpp
@@ -16,7 +16,7 @@
namespace mozilla::dom {
-NS_IMPL_CYCLE_COLLECTION_CLASS(AnimationEffect)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(AnimationEffect)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(AnimationEffect)
NS_IMPL_CYCLE_COLLECTION_UNLINK(mDocument, mAnimation)
NS_IMPL_CYCLE_COLLECTION_UNLINK_PRESERVED_WRAPPER
@@ -26,8 +26,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(AnimationEffect)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mDocument, mAnimation)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(AnimationEffect)
-
NS_IMPL_CYCLE_COLLECTING_ADDREF(AnimationEffect)
NS_IMPL_CYCLE_COLLECTING_RELEASE(AnimationEffect)
diff --git a/dom/animation/AnimationEffect.h b/dom/animation/AnimationEffect.h
index 0986650f11834..020f491a58fab 100644
--- a/dom/animation/AnimationEffect.h
+++ b/dom/animation/AnimationEffect.h
@@ -30,7 +30,7 @@ class Document;
class AnimationEffect : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(AnimationEffect)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(AnimationEffect)
AnimationEffect(Document* aDocument, TimingParams&& aTiming);
diff --git a/dom/animation/AnimationTimeline.cpp b/dom/animation/AnimationTimeline.cpp
index 4a95d7ec4d2b6..ec5129e0b2584 100644
--- a/dom/animation/AnimationTimeline.cpp
+++ b/dom/animation/AnimationTimeline.cpp
@@ -12,7 +12,7 @@ namespace mozilla::dom {
AnimationTimeline::~AnimationTimeline() { mAnimationOrder.clear(); }
-NS_IMPL_CYCLE_COLLECTION_CLASS(AnimationTimeline)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(AnimationTimeline)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(AnimationTimeline)
tmp->mAnimationOrder.clear();
@@ -24,8 +24,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(AnimationTimeline)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mWindow, mAnimations)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(AnimationTimeline)
-
NS_IMPL_CYCLE_COLLECTING_ADDREF(AnimationTimeline)
NS_IMPL_CYCLE_COLLECTING_RELEASE(AnimationTimeline)
diff --git a/dom/animation/AnimationTimeline.h b/dom/animation/AnimationTimeline.h
index f2af12ca93300..f0c6cc67cf4b3 100644
--- a/dom/animation/AnimationTimeline.h
+++ b/dom/animation/AnimationTimeline.h
@@ -38,7 +38,7 @@ class AnimationTimeline : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(AnimationTimeline)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(AnimationTimeline)
nsIGlobalObject* GetParentObject() const { return mWindow; }
diff --git a/dom/animation/CSSPseudoElement.h b/dom/animation/CSSPseudoElement.h
index 1ba2d18a630e5..4b5fbc917c325 100644
--- a/dom/animation/CSSPseudoElement.h
+++ b/dom/animation/CSSPseudoElement.h
@@ -23,7 +23,7 @@ class UnrestrictedDoubleOrKeyframeAnimationOptions;
class CSSPseudoElement final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(CSSPseudoElement)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(CSSPseudoElement)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(CSSPseudoElement)
protected:
virtual ~CSSPseudoElement();
diff --git a/dom/base/AbstractRange.cpp b/dom/base/AbstractRange.cpp
index fad2d73b51c9c..ca9e8274b5d91 100644
--- a/dom/base/AbstractRange.cpp
+++ b/dom/base/AbstractRange.cpp
@@ -58,7 +58,7 @@ NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(AbstractRange)
NS_INTERFACE_MAP_ENTRY(nsISupports)
NS_INTERFACE_MAP_END
-NS_IMPL_CYCLE_COLLECTION_CLASS(AbstractRange)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(AbstractRange)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(AbstractRange)
NS_IMPL_CYCLE_COLLECTION_UNLINK(mOwner);
@@ -73,8 +73,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(AbstractRange)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mEnd)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(AbstractRange)
-
// NOTE: If you need to change default value of members of AbstractRange,
// update nsRange::Create(nsINode* aNode) and ClearForReuse() too.
AbstractRange::AbstractRange(nsINode* aNode)
diff --git a/dom/base/AbstractRange.h b/dom/base/AbstractRange.h
index 8160b6ca1827b..146b8965cfef5 100644
--- a/dom/base/AbstractRange.h
+++ b/dom/base/AbstractRange.h
@@ -42,7 +42,7 @@ class AbstractRange : public nsISupports, public nsWrapperCache {
static void Shutdown();
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(AbstractRange)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(AbstractRange)
const RangeBoundary& StartRef() const { return mStart; }
const RangeBoundary& EndRef() const { return mEnd; }
diff --git a/dom/base/Attr.cpp b/dom/base/Attr.cpp
index f8d2f52562eb1..a0ec3ec5b838c 100644
--- a/dom/base/Attr.cpp
+++ b/dom/base/Attr.cpp
@@ -43,7 +43,7 @@ Attr::Attr(nsDOMAttributeMap* aAttrMap,
// to drop our reference when it goes away.
}
-NS_IMPL_CYCLE_COLLECTION_CLASS(Attr)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Attr)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(Attr)
if (!nsINode::Traverse(tmp, cb)) {
@@ -52,8 +52,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(Attr)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mAttrMap)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(Attr)
-
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(Attr)
nsINode::Unlink(tmp);
NS_IMPL_CYCLE_COLLECTION_UNLINK(mAttrMap)
diff --git a/dom/base/Attr.h b/dom/base/Attr.h
index dfac0c727a4d5..fa4347d8fbba8 100644
--- a/dom/base/Attr.h
+++ b/dom/base/Attr.h
@@ -74,7 +74,7 @@ class Attr final : public nsINode {
static void Initialize();
static void Shutdown();
- NS_DECL_CYCLE_COLLECTION_SKIPPABLE_SCRIPT_HOLDER_CLASS(Attr)
+ NS_DECL_CYCLE_COLLECTION_SKIPPABLE_WRAPPERCACHE_CLASS(Attr)
// WebIDL
virtual JSObject* WrapNode(JSContext* aCx,
diff --git a/dom/base/BarProps.h b/dom/base/BarProps.h
index a788ca1c76fa2..f7c4c8b95a9ef 100644
--- a/dom/base/BarProps.h
+++ b/dom/base/BarProps.h
@@ -35,7 +35,7 @@ class BarProp : public nsISupports, public nsWrapperCache {
explicit BarProp(nsGlobalWindowInner* aWindow);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(BarProp)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(BarProp)
nsPIDOMWindowInner* GetParentObject() const;
diff --git a/dom/base/CharacterData.cpp b/dom/base/CharacterData.cpp
index 7f547fec9639b..29ff4f9761d10 100644
--- a/dom/base/CharacterData.cpp
+++ b/dom/base/CharacterData.cpp
@@ -66,9 +66,9 @@ Element* CharacterData::GetNameSpaceElement() {
return Element::FromNodeOrNull(GetParentNode());
}
-NS_IMPL_CYCLE_COLLECTION_CLASS(CharacterData)
-
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(CharacterData)
+// Note, _INHERITED macro isn't used here since nsINode implementations are
+// rather special.
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(CharacterData)
NS_IMPL_CYCLE_COLLECTION_CAN_SKIP_BEGIN(CharacterData)
return Element::CanSkip(tmp, aRemovingAllowed);
diff --git a/dom/base/CharacterData.h b/dom/base/CharacterData.h
index 4b6c2d2c17bd4..4f125953ef366 100644
--- a/dom/base/CharacterData.h
+++ b/dom/base/CharacterData.h
@@ -190,8 +190,8 @@ class CharacterData : public nsIContent {
//----------------------------------------
- NS_DECL_CYCLE_COLLECTION_SKIPPABLE_SCRIPT_HOLDER_CLASS_INHERITED(
- CharacterData, nsIContent)
+ NS_DECL_CYCLE_COLLECTION_SKIPPABLE_WRAPPERCACHE_CLASS_INHERITED(CharacterData,
+ nsIContent)
/**
* Compare two CharacterData nodes for text equality.
diff --git a/dom/base/Crypto.h b/dom/base/Crypto.h
index bc0d65bb8bceb..02282324c0ac5 100644
--- a/dom/base/Crypto.h
+++ b/dom/base/Crypto.h
@@ -27,7 +27,7 @@ class Crypto final : public nsISupports, public nsWrapperCache {
explicit Crypto(nsIGlobalObject* aParent);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(Crypto)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Crypto)
void GetRandomValues(JSContext* aCx, const ArrayBufferView& aArray,
JS::MutableHandle<JSObject*> aRetval, ErrorResult& aRv);
diff --git a/dom/base/CustomElementRegistry.cpp b/dom/base/CustomElementRegistry.cpp
index e29f792d75d16..bdfd6df907644 100644
--- a/dom/base/CustomElementRegistry.cpp
+++ b/dom/base/CustomElementRegistry.cpp
@@ -389,7 +389,7 @@ class MOZ_RAII AutoConstructionStackEntry final {
} // namespace
-NS_IMPL_CYCLE_COLLECTION_MULTI_ZONE_JSHOLDER_CLASS(CustomElementRegistry)
+NS_IMPL_CYCLE_COLLECTION_CLASS(CustomElementRegistry)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(CustomElementRegistry)
tmp->mConstructors.clear();
diff --git a/dom/base/DOMImplementation.h b/dom/base/DOMImplementation.h
index d33f54b829609..b42538741bdf1 100644
--- a/dom/base/DOMImplementation.h
+++ b/dom/base/DOMImplementation.h
@@ -34,7 +34,7 @@ class DOMImplementation final : public nsISupports, public nsWrapperCache {
nsIURI* aDocumentURI, nsIURI* aBaseURI);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(DOMImplementation)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(DOMImplementation)
Document* GetParentObject() const { return mOwner; }
diff --git a/dom/base/DOMIntersectionObserver.h b/dom/base/DOMIntersectionObserver.h
index 0e4fb985b0ae1..4b16a7e3a2da6 100644
--- a/dom/base/DOMIntersectionObserver.h
+++ b/dom/base/DOMIntersectionObserver.h
@@ -39,7 +39,7 @@ class DOMIntersectionObserverEntry final : public nsISupports,
mTarget(aTarget),
mIntersectionRatio(aIntersectionRatio) {}
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(DOMIntersectionObserverEntry)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(DOMIntersectionObserverEntry)
nsISupports* GetParentObject() const { return mOwner; }
diff --git a/dom/base/DOMMatrix.h b/dom/base/DOMMatrix.h
index 9138999326840..19eb6f8ae4297 100644
--- a/dom/base/DOMMatrix.h
+++ b/dom/base/DOMMatrix.h
@@ -67,7 +67,7 @@ class DOMMatrixReadOnly : public nsWrapperCache {
}
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(DOMMatrixReadOnly)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(DOMMatrixReadOnly)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(DOMMatrixReadOnly)
nsISupports* GetParentObject() const { return mParent; }
virtual JSObject* WrapObject(JSContext* cx,
diff --git a/dom/base/DOMParser.h b/dom/base/DOMParser.h
index cd59b4c4b39ca..efb4270ac83a5 100644
--- a/dom/base/DOMParser.h
+++ b/dom/base/DOMParser.h
@@ -28,7 +28,7 @@ class DOMParser final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(DOMParser)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(DOMParser)
// WebIDL API
static already_AddRefed<DOMParser> Constructor(const GlobalObject& aOwner,
diff --git a/dom/base/DOMPoint.h b/dom/base/DOMPoint.h
index 7107a1e0d0485..d49c8fd441561 100644
--- a/dom/base/DOMPoint.h
+++ b/dom/base/DOMPoint.h
@@ -43,7 +43,7 @@ class DOMPointReadOnly : public nsWrapperCache {
const GlobalObject& aGlobal, double aX, double aY, double aZ, double aW);
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(DOMPointReadOnly)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(DOMPointReadOnly)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(DOMPointReadOnly)
double X() const { return mX; }
double Y() const { return mY; }
diff --git a/dom/base/DOMQuad.h b/dom/base/DOMQuad.h
index fb0245b1096b7..f6ca36f602ca9 100644
--- a/dom/base/DOMQuad.h
+++ b/dom/base/DOMQuad.h
@@ -41,7 +41,7 @@ class DOMQuad final : public nsWrapperCache {
explicit DOMQuad(nsISupports* aParent);
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(DOMQuad)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(DOMQuad)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(DOMQuad)
nsISupports* GetParentObject() const { return mParent; }
virtual JSObject* WrapObject(JSContext* aCx,
diff --git a/dom/base/DOMRect.h b/dom/base/DOMRect.h
index 2af66eff28a47..8cacd9a1dce8f 100644
--- a/dom/base/DOMRect.h
+++ b/dom/base/DOMRect.h
@@ -40,7 +40,7 @@ class DOMRectReadOnly : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(DOMRectReadOnly)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(DOMRectReadOnly)
explicit DOMRectReadOnly(nsISupports* aParent, double aX = 0, double aY = 0,
double aWidth = 0, double aHeight = 0)
@@ -150,7 +150,7 @@ class DOMRectList final : public nsISupports, public nsWrapperCache {
explicit DOMRectList(nsISupports* aParent) : mParent(aParent) {}
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(DOMRectList)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(DOMRectList)
virtual JSObject* WrapObject(JSContext* cx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/dom/base/DOMStringList.h b/dom/base/DOMStringList.h
index 1c3bf8f684e1d..89bb9fc418cce 100644
--- a/dom/base/DOMStringList.h
+++ b/dom/base/DOMStringList.h
@@ -20,7 +20,7 @@ class DOMStringList : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(DOMStringList)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(DOMStringList)
virtual JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/dom/base/External.h b/dom/base/External.h
index 256ea40faf92a..9ddda47785d81 100644
--- a/dom/base/External.h
+++ b/dom/base/External.h
@@ -17,7 +17,7 @@ namespace mozilla::dom {
class External : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(External)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(External)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(External)
explicit External(nsISupports* aParent) : mParent(aParent) {}
diff --git a/dom/base/FormData.cpp b/dom/base/FormData.cpp
index d980bee7feb11..44e6f62b0ee2d 100644
--- a/dom/base/FormData.cpp
+++ b/dom/base/FormData.cpp
@@ -69,7 +69,7 @@ already_AddRefed<File> GetBlobForFormDataStorage(
// -------------------------------------------------------------------------
// nsISupports
-NS_IMPL_CYCLE_COLLECTION_CLASS(FormData)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(FormData)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(FormData)
NS_IMPL_CYCLE_COLLECTION_UNLINK(mOwner)
@@ -93,8 +93,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(FormData)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(FormData)
-
NS_IMPL_CYCLE_COLLECTING_ADDREF(FormData)
NS_IMPL_CYCLE_COLLECTING_RELEASE(FormData)
diff --git a/dom/base/FormData.h b/dom/base/FormData.h
index 25841cfceb091..8ce21095b04d3 100644
--- a/dom/base/FormData.h
+++ b/dom/base/FormData.h
@@ -57,7 +57,7 @@ class FormData final : public nsISupports,
already_AddRefed<FormData> Clone();
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(FormData)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(FormData)
// nsWrapperCache
virtual JSObject* WrapObject(JSContext* aCx,
diff --git a/dom/base/FragmentOrElement.cpp b/dom/base/FragmentOrElement.cpp
index d2a156c725508..868fa97b97aa3 100644
--- a/dom/base/FragmentOrElement.cpp
+++ b/dom/base/FragmentOrElement.cpp
@@ -1252,7 +1252,9 @@ ContentUnbinder* ContentUnbinder::sContentUnbinder = nullptr;
void FragmentOrElement::ClearContentUnbinder() { ContentUnbinder::UnbindAll(); }
-NS_IMPL_CYCLE_COLLECTION_CLASS(FragmentOrElement)
+// Note, _INHERITED macro isn't used here since nsINode implementations are
+// rather special.
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(FragmentOrElement)
// We purposefully don't UNLINK_BEGIN_INHERITED here.
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(FragmentOrElement)
@@ -1310,8 +1312,6 @@ NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(FragmentOrElement)
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(FragmentOrElement)
-
void FragmentOrElement::MarkNodeChildren(nsINode* aNode) {
JSObject* o = GetJSObjectChild(aNode);
if (o) {
diff --git a/dom/base/FragmentOrElement.h b/dom/base/FragmentOrElement.h
index 512e7022826e3..9ad84ae7d3eb1 100644
--- a/dom/base/FragmentOrElement.h
+++ b/dom/base/FragmentOrElement.h
@@ -116,7 +116,7 @@ class FragmentOrElement : public nsIContent {
static void FireNodeInserted(Document* aDoc, nsINode* aParent,
nsTArray<nsCOMPtr<nsIContent> >& aNodes);
- NS_DECL_CYCLE_COLLECTION_SKIPPABLE_SCRIPT_HOLDER_CLASS_INHERITED(
+ NS_DECL_CYCLE_COLLECTION_SKIPPABLE_WRAPPERCACHE_CLASS_INHERITED(
FragmentOrElement, nsIContent)
/**
diff --git a/dom/base/IdleDeadline.h b/dom/base/IdleDeadline.h
index 3fd66791720ce..2ce06e489d55d 100644
--- a/dom/base/IdleDeadline.h
+++ b/dom/base/IdleDeadline.h
@@ -38,7 +38,7 @@ class IdleDeadline final : public nsISupports, public nsWrapperCache {
bool DidTimeout() const;
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(IdleDeadline)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(IdleDeadline)
private:
~IdleDeadline();
diff --git a/dom/base/IntlUtils.h b/dom/base/IntlUtils.h
index ee51667b1e14e..51531e614041b 100644
--- a/dom/base/IntlUtils.h
+++ b/dom/base/IntlUtils.h
@@ -23,7 +23,7 @@ class IntlUtils final : public nsISupports, public nsWrapperCache {
explicit IntlUtils(nsPIDOMWindowInner* aWindow);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(IntlUtils)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(IntlUtils)
nsPIDOMWindowInner* GetParentObject() const { return mWindow; }
diff --git a/dom/base/Location.h b/dom/base/Location.h
index ee6a8f3c73470..5fb92beb04171 100644
--- a/dom/base/Location.h
+++ b/dom/base/Location.h
@@ -35,7 +35,7 @@ class Location final : public nsISupports,
Location(nsPIDOMWindowInner* aWindow, BrowsingContext* aBrowsingContext);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(Location)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Location)
// WebIDL API:
void Assign(const nsAString& aUrl, nsIPrincipal& aSubjectPrincipal,
diff --git a/dom/base/Navigator.cpp b/dom/base/Navigator.cpp
index b7da9e6a03bd5..a604ea30b8bad 100644
--- a/dom/base/Navigator.cpp
+++ b/dom/base/Navigator.cpp
@@ -131,7 +131,7 @@ NS_INTERFACE_MAP_END
NS_IMPL_CYCLE_COLLECTING_ADDREF(Navigator)
NS_IMPL_CYCLE_COLLECTING_RELEASE(Navigator)
-NS_IMPL_CYCLE_COLLECTION_CLASS(Navigator)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Navigator)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(Navigator)
tmp->Invalidate();
@@ -166,8 +166,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(Navigator)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mXRSystem)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(Navigator)
-
void Navigator::Invalidate() {
// Don't clear mWindow here so we know we've got a non-null mWindow
// until we're unlinked.
diff --git a/dom/base/Navigator.h b/dom/base/Navigator.h
index 2a16e5e184279..36367443440e8 100644
--- a/dom/base/Navigator.h
+++ b/dom/base/Navigator.h
@@ -91,7 +91,7 @@ class Navigator final : public nsISupports, public nsWrapperCache {
explicit Navigator(nsPIDOMWindowInner* aInnerWindow);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(Navigator)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Navigator)
void Invalidate();
nsPIDOMWindowInner* GetWindow() const { return mWindow; }
diff --git a/dom/base/PlacesWeakCallbackWrapper.h b/dom/base/PlacesWeakCallbackWrapper.h
index 2bb5ae82668c6..0b20276fc4516 100644
--- a/dom/base/PlacesWeakCallbackWrapper.h
+++ b/dom/base/PlacesWeakCallbackWrapper.h
@@ -18,7 +18,7 @@ class PlacesWeakCallbackWrapper final : public nsWrapperCache,
public SupportsWeakPtr {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(PlacesWeakCallbackWrapper)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(PlacesWeakCallbackWrapper)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(PlacesWeakCallbackWrapper)
explicit PlacesWeakCallbackWrapper(nsISupports* aParent,
PlacesEventCallback& aCallback);
diff --git a/dom/base/ResizeObserver.cpp b/dom/base/ResizeObserver.cpp
index 72c08b1d72a96..542d77fab3059 100644
--- a/dom/base/ResizeObserver.cpp
+++ b/dom/base/ResizeObserver.cpp
@@ -183,9 +183,7 @@ void ResizeObservation::UpdateLastReportedSize(const gfx::Size& aSize) {
}
// Only needed for refcounted objects.
-NS_IMPL_CYCLE_COLLECTION_CLASS(ResizeObserver)
-
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(ResizeObserver)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(ResizeObserver)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(ResizeObserver)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mOwner, mDocument, mCallback,
diff --git a/dom/base/ResizeObserver.h b/dom/base/ResizeObserver.h
index a4f3e0ab8f151..12923f11a1f08 100644
--- a/dom/base/ResizeObserver.h
+++ b/dom/base/ResizeObserver.h
@@ -117,7 +117,7 @@ class ResizeObservation final : public LinkedListElement<ResizeObservation> {
class ResizeObserver final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(ResizeObserver)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(ResizeObserver)
ResizeObserver(nsCOMPtr<nsPIDOMWindowInner>&& aOwner, Document* aDocument,
ResizeObserverCallback& aCb)
@@ -208,7 +208,7 @@ class ResizeObserver final : public nsISupports, public nsWrapperCache {
class ResizeObserverEntry final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(ResizeObserverEntry)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(ResizeObserverEntry)
ResizeObserverEntry(nsISupports* aOwner, Element& aTarget,
const gfx::Size& aBorderBoxSize,
@@ -269,7 +269,7 @@ class ResizeObserverEntry final : public nsISupports, public nsWrapperCache {
class ResizeObserverSize final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(ResizeObserverSize)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(ResizeObserverSize)
ResizeObserverSize(nsISupports* aOwner, const gfx::Size& aSize,
const WritingMode aWM)
diff --git a/dom/base/ScreenLuminance.h b/dom/base/ScreenLuminance.h
index b4ec422a69911..5595fd734bead 100644
--- a/dom/base/ScreenLuminance.h
+++ b/dom/base/ScreenLuminance.h
@@ -19,7 +19,7 @@ class ScreenLuminance final : public nsWrapperCache {
public:
// Ref counting and cycle collection
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(ScreenLuminance)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(ScreenLuminance)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(ScreenLuminance)
// WebIDL methods
double Min() const { return mMin; }
diff --git a/dom/base/Selection.cpp b/dom/base/Selection.cpp
index 1ac576944cd74..eb95ffdb22fab 100644
--- a/dom/base/Selection.cpp
+++ b/dom/base/Selection.cpp
@@ -612,7 +612,7 @@ DocGroup* Selection::GetDocGroup() const {
return doc ? doc->GetDocGroup() : nullptr;
}
-NS_IMPL_CYCLE_COLLECTION_CLASS(Selection)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Selection)
MOZ_CAN_RUN_SCRIPT_BOUNDARY
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(Selection)
@@ -643,7 +643,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(Selection)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mSelectionChangeEventDispatcher)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mSelectionListeners)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(Selection)
// QueryInterface implementation for Selection
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(Selection)
diff --git a/dom/base/Selection.h b/dom/base/Selection.h
index ec558be4634f7..f2eec06da060b 100644
--- a/dom/base/Selection.h
+++ b/dom/base/Selection.h
@@ -72,7 +72,7 @@ class Selection final : public nsSupportsWeakReference,
nsFrameSelection* aFrameSelection);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(Selection)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Selection)
/**
* Match this up with EndbatchChanges. will stop ui updates while multiple
diff --git a/dom/base/StructuredCloneTester.h b/dom/base/StructuredCloneTester.h
index b939296971d30..d85371d86ce2b 100644
--- a/dom/base/StructuredCloneTester.h
+++ b/dom/base/StructuredCloneTester.h
@@ -27,7 +27,7 @@ class GlobalObject;
class StructuredCloneTester final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(StructuredCloneTester)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(StructuredCloneTester)
static already_AddRefed<StructuredCloneTester> Constructor(
const GlobalObject& aGlobal, const bool aSerializable,
diff --git a/dom/base/StyleSheetList.h b/dom/base/StyleSheetList.h
index 0db025da31e77..7b097599b1dbf 100644
--- a/dom/base/StyleSheetList.h
+++ b/dom/base/StyleSheetList.h
@@ -23,7 +23,7 @@ class StyleSheetList final : public nsStubMutationObserver,
public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(StyleSheetList)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(StyleSheetList)
NS_DECL_NSIMUTATIONOBSERVER_NODEWILLBEDESTROYED
diff --git a/dom/base/SubtleCrypto.h b/dom/base/SubtleCrypto.h
index 3bb36d48dc5f1..a4d93420c8405 100644
--- a/dom/base/SubtleCrypto.h
+++ b/dom/base/SubtleCrypto.h
@@ -25,7 +25,7 @@ class SubtleCrypto final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(SubtleCrypto)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(SubtleCrypto)
public:
explicit SubtleCrypto(nsIGlobalObject* aParent);
diff --git a/dom/base/TimeoutHandler.cpp b/dom/base/TimeoutHandler.cpp
index 5430feeb89a9d..ddf2b6abd7a10 100644
--- a/dom/base/TimeoutHandler.cpp
+++ b/dom/base/TimeoutHandler.cpp
@@ -103,7 +103,7 @@ CallbackTimeoutHandler::CallbackTimeoutHandler(
mArgs = std::move(aArguments);
}
-NS_IMPL_CYCLE_COLLECTION_MULTI_ZONE_JSHOLDER_CLASS(CallbackTimeoutHandler)
+NS_IMPL_CYCLE_COLLECTION_CLASS(CallbackTimeoutHandler)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(CallbackTimeoutHandler)
NS_IMPL_CYCLE_COLLECTION_UNLINK(mGlobal)
diff --git a/dom/base/nsChildContentList.h b/dom/base/nsChildContentList.h
index 52b4c7721ee8c..af43253cbf546 100644
--- a/dom/base/nsChildContentList.h
+++ b/dom/base/nsChildContentList.h
@@ -26,7 +26,7 @@ class nsAttrChildContentList : public nsINodeList {
explicit nsAttrChildContentList(nsINode* aNode) : mNode(aNode) {}
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SKIPPABLE_SCRIPT_HOLDER_CLASS(nsAttrChildContentList)
+ NS_DECL_CYCLE_COLLECTION_SKIPPABLE_WRAPPERCACHE_CLASS(nsAttrChildContentList)
// nsWrapperCache
virtual JSObject* WrapObject(JSContext* cx,
diff --git a/dom/base/nsContentList.cpp b/dom/base/nsContentList.cpp
index d453db41b1ff6..689aeeb2b8c1a 100644
--- a/dom/base/nsContentList.cpp
+++ b/dom/base/nsContentList.cpp
@@ -41,7 +41,7 @@ using namespace mozilla::dom;
nsBaseContentList::~nsBaseContentList() = default;
-NS_IMPL_CYCLE_COLLECTION_CLASS(nsBaseContentList)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(nsBaseContentList)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(nsBaseContentList)
NS_IMPL_CYCLE_COLLECTION_UNLINK(mElements)
NS_IMPL_CYCLE_COLLECTION_UNLINK_PRESERVED_WRAPPER
@@ -50,7 +50,6 @@ NS_IMPL_CYCLE_COLLECTION_UNLINK_END
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(nsBaseContentList)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mElements)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(nsBaseContentList)
NS_IMPL_CYCLE_COLLECTION_CAN_SKIP_BEGIN(nsBaseContentList)
if (nsCCUncollectableMarker::sGeneration && tmp->HasKnownLiveWrapper()) {
diff --git a/dom/base/nsContentList.h b/dom/base/nsContentList.h
index 6c5c5f6b313b4..208996b546931 100644
--- a/dom/base/nsContentList.h
+++ b/dom/base/nsContentList.h
@@ -47,7 +47,7 @@ class nsBaseContentList : public nsINodeList {
uint32_t Length() override { return mElements.Length(); }
- NS_DECL_CYCLE_COLLECTION_SKIPPABLE_SCRIPT_HOLDER_CLASS(nsBaseContentList)
+ NS_DECL_CYCLE_COLLECTION_SKIPPABLE_WRAPPERCACHE_CLASS(nsBaseContentList)
void AppendElement(nsIContent* aContent) {
MOZ_ASSERT(aContent);
diff --git a/dom/base/nsDOMAttributeMap.cpp b/dom/base/nsDOMAttributeMap.cpp
index d84cd8dd053a9..5eba4c981d390 100644
--- a/dom/base/nsDOMAttributeMap.cpp
+++ b/dom/base/nsDOMAttributeMap.cpp
@@ -45,7 +45,7 @@ void nsDOMAttributeMap::DropReference() {
mContent = nullptr;
}
-NS_IMPL_CYCLE_COLLECTION_CLASS(nsDOMAttributeMap)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(nsDOMAttributeMap)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(nsDOMAttributeMap)
tmp->DropReference();
@@ -60,8 +60,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(nsDOMAttributeMap)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mContent)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(nsDOMAttributeMap)
-
NS_IMPL_CYCLE_COLLECTION_CAN_SKIP_BEGIN(nsDOMAttributeMap)
if (tmp->HasKnownLiveWrapper()) {
if (tmp->mContent) {
diff --git a/dom/base/nsDOMAttributeMap.h b/dom/base/nsDOMAttributeMap.h
index 04d2857034e86..5ed1e96544ab7 100644
--- a/dom/base/nsDOMAttributeMap.h
+++ b/dom/base/nsDOMAttributeMap.h
@@ -97,7 +97,7 @@ class nsDOMAttributeMap final : public nsISupports, public nsWrapperCache {
explicit nsDOMAttributeMap(Element* aContent);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SKIPPABLE_SCRIPT_HOLDER_CLASS(nsDOMAttributeMap)
+ NS_DECL_CYCLE_COLLECTION_SKIPPABLE_WRAPPERCACHE_CLASS(nsDOMAttributeMap)
void DropReference();
diff --git a/dom/base/nsDOMCaretPosition.h b/dom/base/nsDOMCaretPosition.h
index 36a2f28d4007b..8ede967edda6f 100644
--- a/dom/base/nsDOMCaretPosition.h
+++ b/dom/base/nsDOMCaretPosition.h
@@ -29,7 +29,7 @@ class nsDOMCaretPosition : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(nsDOMCaretPosition)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(nsDOMCaretPosition)
nsDOMCaretPosition(nsINode* aNode, uint32_t aOffset);
diff --git a/dom/base/nsDOMMutationObserver.h b/dom/base/nsDOMMutationObserver.h
index e41e19e77b54c..a8e8b155510a8 100644
--- a/dom/base/nsDOMMutationObserver.h
+++ b/dom/base/nsDOMMutationObserver.h
@@ -57,7 +57,7 @@ class nsDOMMutationRecord final : public nsISupports, public nsWrapperCache {
}
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(nsDOMMutationRecord)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(nsDOMMutationRecord)
void GetType(mozilla::dom::DOMString& aRetVal) const {
aRetVal.SetKnownLiveAtom(mType, mozilla::dom::DOMString::eNullNotExpected);
diff --git a/dom/base/nsDOMTokenList.h b/dom/base/nsDOMTokenList.h
index 37687125535ad..cd768ba0e781e 100644
--- a/dom/base/nsDOMTokenList.h
+++ b/dom/base/nsDOMTokenList.h
@@ -41,7 +41,7 @@ class nsDOMTokenList : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(nsDOMTokenList)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(nsDOMTokenList)
nsDOMTokenList(Element* aElement, nsAtom* aAttrAtom,
const mozilla::dom::DOMTokenListSupportedTokenArray = nullptr);
diff --git a/dom/base/nsFrameLoader.h b/dom/base/nsFrameLoader.h
index 244699c1618a7..042f77d214d51 100644
--- a/dom/base/nsFrameLoader.h
+++ b/dom/base/nsFrameLoader.h
@@ -129,7 +129,7 @@ class nsFrameLoader final : public nsStubMutationObserver,
NS_DECLARE_STATIC_IID_ACCESSOR(NS_FRAMELOADER_IID)
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(nsFrameLoader)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(nsFrameLoader)
NS_DECL_NSIMUTATIONOBSERVER_ATTRIBUTECHANGED
nsresult CheckForRecursiveLoad(nsIURI* aURI);
diff --git a/dom/base/nsHistory.h b/dom/base/nsHistory.h
index 80bac869f3614..157052fe44cef 100644
--- a/dom/base/nsHistory.h
+++ b/dom/base/nsHistory.h
@@ -29,7 +29,7 @@ class ErrorResult;
class nsHistory final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(nsHistory)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(nsHistory)
public:
explicit nsHistory(nsPIDOMWindowInner* aInnerWindow);
diff --git a/dom/base/nsJSEnvironment.cpp b/dom/base/nsJSEnvironment.cpp
index cefdbb67a3319..fe0b660b113c7 100644
--- a/dom/base/nsJSEnvironment.cpp
+++ b/dom/base/nsJSEnvironment.cpp
@@ -2247,7 +2247,7 @@ void nsJSArgArray::ReleaseJSObjects() {
}
// QueryInterface implementation for nsJSArgArray
-NS_IMPL_CYCLE_COLLECTION_MULTI_ZONE_JSHOLDER_CLASS(nsJSArgArray)
+NS_IMPL_CYCLE_COLLECTION_CLASS(nsJSArgArray)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(nsJSArgArray)
tmp->ReleaseJSObjects();
diff --git a/dom/base/nsMimeTypeArray.h b/dom/base/nsMimeTypeArray.h
index cdd587db35eac..aaeedba3ae262 100644
--- a/dom/base/nsMimeTypeArray.h
+++ b/dom/base/nsMimeTypeArray.h
@@ -28,7 +28,7 @@ class nsMimeTypeArray final : public nsISupports, public nsWrapperCache {
const mozilla::Array<RefPtr<nsMimeType>, 2>& aMimeTypes);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(nsMimeTypeArray)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(nsMimeTypeArray)
nsPIDOMWindowInner* GetParentObject() const;
virtual JSObject* WrapObject(JSContext* aCx,
@@ -69,7 +69,7 @@ class nsMimeTypeArray final : public nsISupports, public nsWrapperCache {
class nsMimeType final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(nsMimeType)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(nsMimeType)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(nsMimeType)
nsMimeType(nsPluginElement* aPluginElement, const nsAString& aName);
diff --git a/dom/base/nsPluginArray.h b/dom/base/nsPluginArray.h
index a029bb2b99878..1a9e12b787e86 100644
--- a/dom/base/nsPluginArray.h
+++ b/dom/base/nsPluginArray.h
@@ -28,7 +28,7 @@ class nsPluginArray final : public nsSupportsWeakReference,
public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(nsPluginArray)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(nsPluginArray)
explicit nsPluginArray(nsPIDOMWindowInner* aWindow);
nsPIDOMWindowInner* GetParentObject() const;
@@ -75,7 +75,7 @@ class nsPluginArray final : public nsSupportsWeakReference,
class nsPluginElement final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(nsPluginElement)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(nsPluginElement)
explicit nsPluginElement(nsPluginArray* aPluginArray,
nsPIDOMWindowInner* aWindow, const nsAString& aName);
diff --git a/dom/base/nsWindowRoot.cpp b/dom/base/nsWindowRoot.cpp
index 3914d33c8fcb1..177dd10e1ddb7 100644
--- a/dom/base/nsWindowRoot.cpp
+++ b/dom/base/nsWindowRoot.cpp
@@ -52,7 +52,7 @@ nsWindowRoot::~nsWindowRoot() {
JSActorService::UnregisterChromeEventTarget(this);
}
-NS_IMPL_CYCLE_COLLECTION_CLASS(nsWindowRoot)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(nsWindowRoot)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(nsWindowRoot)
JSActorService::UnregisterChromeEventTarget(tmp);
@@ -69,8 +69,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(nsWindowRoot)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mParent)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(nsWindowRoot)
-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(nsWindowRoot)
NS_WRAPPERCACHE_INTERFACE_MAP_ENTRY
NS_INTERFACE_MAP_ENTRY(nsISupports)
diff --git a/dom/base/nsWindowRoot.h b/dom/base/nsWindowRoot.h
index b412834bfadd4..1fe9c8fb9bc00 100644
--- a/dom/base/nsWindowRoot.h
+++ b/dom/base/nsWindowRoot.h
@@ -64,7 +64,7 @@ class nsWindowRoot final : public nsPIWindowRoot {
JSObject* WrapObject(JSContext*, JS::Handle<JSObject*> aGivenProto) override;
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(nsWindowRoot)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(nsWindowRoot)
void AddBrowser(nsIRemoteTab* aBrowser) override;
void RemoveBrowser(nsIRemoteTab* aBrowser) override;
diff --git a/dom/base/nsWrapperCache.h b/dom/base/nsWrapperCache.h
index fd27230294c75..d7232470d9580 100644
--- a/dom/base/nsWrapperCache.h
+++ b/dom/base/nsWrapperCache.h
@@ -16,6 +16,7 @@
#include "js/TypeDecls.h"
#include "nsISupports.h"
#include "nsISupportsUtils.h"
+#include <type_traits>
namespace mozilla::dom {
class ContentProcessMessageManager;
@@ -422,6 +423,123 @@ NS_DEFINE_STATIC_IID_ACCESSOR(nsWrapperCache, NS_WRAPPERCACHE_IID)
else
// Cycle collector macros for wrapper caches.
+//
+// The NS_DECL_*WRAPPERCACHE_* macros make it easier to mark classes as holding
+// just a single pointer to a JS value. That information is then used for
+// certain GC optimizations.
+
+#define NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS_AMBIGUOUS(_class, _base) \
+ class NS_CYCLE_COLLECTION_INNERCLASS \
+ : public nsXPCOMCycleCollectionParticipant { \
+ public: \
+ constexpr explicit NS_CYCLE_COLLECTION_INNERCLASS(Flags aFlags = 0) \
+ : nsXPCOMCycleCollectionParticipant(aFlags | \
+ FlagMaybeSingleZoneJSHolder) {} \
+ \
+ private: \
+ NS_DECL_CYCLE_COLLECTION_CLASS_BODY(_class, _base) \
+ NS_IMETHOD_(void) \
+ Trace(void* p, const TraceCallbacks& cb, void* closure) override; \
+ NS_IMETHOD_(void) \
+ TraceWrapper(void* aPtr, const TraceCallbacks& aCb, void* aClosure) final; \
+ NS_IMPL_GET_XPCOM_CYCLE_COLLECTION_PARTICIPANT(_class) \
+ }; \
+ NS_CHECK_FOR_RIGHT_PARTICIPANT_IMPL(_class) \
+ static NS_CYCLE_COLLECTION_INNERCLASS NS_CYCLE_COLLECTION_INNERNAME; \
+ NOT_INHERITED_CANT_OVERRIDE
+
+#define NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(_class) \
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS_AMBIGUOUS(_class, _class)
+
+#define NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS_INHERITED(_class, \
+ _base_class) \
+ class NS_CYCLE_COLLECTION_INNERCLASS \
+ : public NS_CYCLE_COLLECTION_CLASSNAME(_base_class) { \
+ public: \
+ constexpr explicit NS_CYCLE_COLLECTION_INNERCLASS(Flags aFlags) \
+ : NS_CYCLE_COLLECTION_CLASSNAME(_base_class)( \
+ aFlags | FlagMaybeSingleZoneJSHolder) {} \
+ \
+ private: \
+ NS_DECL_CYCLE_COLLECTION_CLASS_INHERITED_BODY(_class, _base_class) \
+ NS_IMETHOD_(void) \
+ Trace(void* p, const TraceCallbacks& cb, void* closure) override; \
+ NS_IMETHOD_(void) \
+ TraceWrapper(void* aPtr, const TraceCallbacks& aCb, void* aClosure) final; \
+ NS_IMPL_GET_XPCOM_CYCLE_COLLECTION_PARTICIPANT(_class) \
+ }; \
+ NS_CHECK_FOR_RIGHT_PARTICIPANT_IMPL_INHERITED(_class) \
+ static NS_CYCLE_COLLECTION_INNERCLASS NS_CYCLE_COLLECTION_INNERNAME;
+
+#define NS_DECL_CYCLE_COLLECTION_SKIPPABLE_WRAPPERCACHE_CLASS_AMBIGUOUS( \
+ _class, _base) \
+ class NS_CYCLE_COLLECTION_INNERCLASS \
+ : public nsXPCOMCycleCollectionParticipant { \
+ public: \
+ constexpr explicit NS_CYCLE_COLLECTION_INNERCLASS(Flags aFlags) \
+ : nsXPCOMCycleCollectionParticipant(aFlags | FlagMightSkip | \
+ FlagMaybeSingleZoneJSHolder) {} \
+ \
+ private: \
+ NS_DECL_CYCLE_COLLECTION_CLASS_BODY(_class, _base) \
+ NS_IMETHOD_(void) \
+ Trace(void* p, const TraceCallbacks& cb, void* closure) override; \
+ NS_IMETHOD_(void) \
+ TraceWrapper(void* aPtr, const TraceCallbacks& aCb, void* aClosure) final; \
+ NS_IMETHOD_(bool) CanSkipReal(void* p, bool aRemovingAllowed) override; \
+ NS_IMETHOD_(bool) CanSkipInCCReal(void* p) override; \
+ NS_IMETHOD_(bool) CanSkipThisReal(void* p) override; \
+ NS_IMPL_GET_XPCOM_CYCLE_COLLECTION_PARTICIPANT(_class) \
+ }; \
+ NS_CHECK_FOR_RIGHT_PARTICIPANT_IMPL(_class) \
+ static NS_CYCLE_COLLECTION_INNERCLASS NS_CYCLE_COLLECTION_INNERNAME; \
+ NOT_INHERITED_CANT_OVERRIDE
+
+#define NS_DECL_CYCLE_COLLECTION_SKIPPABLE_WRAPPERCACHE_CLASS(_class) \
+ NS_DECL_CYCLE_COLLECTION_SKIPPABLE_WRAPPERCACHE_CLASS_AMBIGUOUS(_class, \
+ _class)
+
+#define NS_DECL_CYCLE_COLLECTION_SKIPPABLE_WRAPPERCACHE_CLASS_INHERITED( \
+ _class, _base_class) \
+ class NS_CYCLE_COLLECTION_INNERCLASS \
+ : public NS_CYCLE_COLLECTION_CLASSNAME(_base_class) { \
+ public: \
+ constexpr explicit NS_CYCLE_COLLECTION_INNERCLASS(Flags aFlags = 0) \
+ : NS_CYCLE_COLLECTION_CLASSNAME(_base_class)( \
+ aFlags | FlagMightSkip | FlagMaybeSingleZoneJSHolder) {} \
+ \
+ private: \
+ NS_DECL_CYCLE_COLLECTION_CLASS_BODY(_class, _base_class) \
+ NS_IMETHOD_(void) \
+ Trace(void* p, const TraceCallbacks& cb, void* closure) override; \
+ NS_IMETHOD_(void) \
+ TraceWrapper(void* aPtr, const TraceCallbacks& aCb, void* aClosure) final; \
+ NS_IMETHOD_(bool) CanSkipReal(void* p, bool aRemovingAllowed) override; \
+ NS_IMETHOD_(bool) CanSkipInCCReal(void* p) override; \
+ NS_IMETHOD_(bool) CanSkipThisReal(void* p) override; \
+ NS_IMPL_GET_XPCOM_CYCLE_COLLECTION_PARTICIPANT(_class) \
+ }; \
+ NS_CHECK_FOR_RIGHT_PARTICIPANT_IMPL_INHERITED(_class) \
+ static NS_CYCLE_COLLECTION_INNERCLASS NS_CYCLE_COLLECTION_INNERNAME;
+
+#define NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(_class) \
+ void DeleteCycleCollectable(void) { delete this; } \
+ class NS_CYCLE_COLLECTION_INNERCLASS : public nsScriptObjectTracer { \
+ public: \
+ constexpr explicit NS_CYCLE_COLLECTION_INNERCLASS(Flags aFlags = 0) \
+ : nsScriptObjectTracer(aFlags | FlagMaybeSingleZoneJSHolder) {} \
+ \
+ private: \
+ NS_DECL_CYCLE_COLLECTION_NATIVE_CLASS_BODY(_class) \
+ NS_IMETHOD_(void) \
+ Trace(void* p, const TraceCallbacks& cb, void* closure) override; \
+ NS_IMETHOD_(void) \
+ TraceWrapper(void* aPtr, const TraceCallbacks& aCb, void* aClosure) final; \
+ static constexpr nsScriptObjectTracer* GetParticipant() { \
+ return &_class::NS_CYCLE_COLLECTION_INNERNAME; \
+ } \
+ }; \
+ static NS_CYCLE_COLLECTION_INNERCLASS NS_CYCLE_COLLECTION_INNERNAME;
#define NS_IMPL_CYCLE_COLLECTION_TRACE_PRESERVED_WRAPPER \
tmp->TraceWrapper(aCallbacks, aClosure);
@@ -429,33 +547,39 @@ NS_DEFINE_STATIC_IID_ACCESSOR(nsWrapperCache, NS_WRAPPERCACHE_IID)
#define NS_IMPL_CYCLE_COLLECTION_UNLINK_PRESERVED_WRAPPER \
tmp->ReleaseWrapper(p);
-#define NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(_class) \
- NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN(_class) \
- NS_IMPL_CYCLE_COLLECTION_TRACE_PRESERVED_WRAPPER \
- NS_IMPL_CYCLE_COLLECTION_TRACE_END
+#define NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(_class) \
+ static_assert(std::is_base_of<nsWrapperCache, _class>::value, \
+ "Class should inherit nsWrapperCache"); \
+ NS_IMPL_CYCLE_COLLECTION_SINGLE_ZONE_SCRIPT_HOLDER_CLASS(_class) \
+ NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN(_class) \
+ TraceWrapper(p, aCallbacks, aClosure); \
+ NS_IMPL_CYCLE_COLLECTION_TRACE_END \
+ void NS_CYCLE_COLLECTION_CLASSNAME(_class)::TraceWrapper( \
+ void* p, const TraceCallbacks& aCallbacks, void* aClosure) { \
+ _class* tmp = DowncastCCParticipant<_class>(p); \
+ NS_IMPL_CYCLE_COLLECTION_TRACE_PRESERVED_WRAPPER \
+ }
#define NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_0(_class) \
- NS_IMPL_CYCLE_COLLECTION_CLASS(_class) \
+ NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(_class) \
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(_class) \
NS_IMPL_CYCLE_COLLECTION_UNLINK_PRESERVED_WRAPPER \
NS_IMPL_CYCLE_COLLECTION_UNLINK_END \
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(_class) \
- NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END \
- NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(_class)
+ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
#define NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE(_class, ...) \
- NS_IMPL_CYCLE_COLLECTION_CLASS(_class) \
+ NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(_class) \
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(_class) \
NS_IMPL_CYCLE_COLLECTION_UNLINK(__VA_ARGS__) \
NS_IMPL_CYCLE_COLLECTION_UNLINK_PRESERVED_WRAPPER \
NS_IMPL_CYCLE_COLLECTION_UNLINK_END \
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(_class) \
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(__VA_ARGS__) \
- NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END \
- NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(_class)
+ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
#define NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_WEAK(_class, ...) \
- NS_IMPL_CYCLE_COLLECTION_CLASS(_class) \
+ NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(_class) \
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(_class) \
NS_IMPL_CYCLE_COLLECTION_UNLINK(__VA_ARGS__) \
NS_IMPL_CYCLE_COLLECTION_UNLINK_PRESERVED_WRAPPER \
@@ -463,11 +587,10 @@ NS_DEFINE_STATIC_IID_ACCESSOR(nsWrapperCache, NS_WRAPPERCACHE_IID)
NS_IMPL_CYCLE_COLLECTION_UNLINK_END \
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(_class) \
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(__VA_ARGS__) \
- NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END \
- NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(_class)
+ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
#define NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_WEAK_PTR(_class, ...) \
- NS_IMPL_CYCLE_COLLECTION_CLASS(_class) \
+ NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(_class) \
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(_class) \
NS_IMPL_CYCLE_COLLECTION_UNLINK(__VA_ARGS__) \
NS_IMPL_CYCLE_COLLECTION_UNLINK_PRESERVED_WRAPPER \
@@ -475,24 +598,33 @@ NS_DEFINE_STATIC_IID_ACCESSOR(nsWrapperCache, NS_WRAPPERCACHE_IID)
NS_IMPL_CYCLE_COLLECTION_UNLINK_END \
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(_class) \
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(__VA_ARGS__) \
- NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END \
- NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(_class)
+ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
// This is used for wrapper cached classes that inherit from cycle
// collected non-wrapper cached classes.
-#define NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_INHERITED(_class, _base, ...) \
- NS_IMPL_CYCLE_COLLECTION_CLASS(_class) \
- NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN_INHERITED(_class, _base) \
- NS_IMPL_CYCLE_COLLECTION_UNLINK(__VA_ARGS__) \
- NS_IMPL_CYCLE_COLLECTION_UNLINK_PRESERVED_WRAPPER \
- NS_IMPL_CYCLE_COLLECTION_UNLINK_END \
- NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN_INHERITED(_class, _base) \
- NS_IMPL_CYCLE_COLLECTION_TRAVERSE(__VA_ARGS__) \
- NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END \
- NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(_class)
-
+#define NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_INHERITED(_class, _base, ...) \
+ static_assert(!std::is_base_of<nsWrapperCache, _base>::value, \
+ "Base class should not inherit nsWrapperCache"); \
+ NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(_class) \
+ NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN_INHERITED(_class, _base) \
+ NS_IMPL_CYCLE_COLLECTION_UNLINK(__VA_ARGS__) \
+ NS_IMPL_CYCLE_COLLECTION_UNLINK_PRESERVED_WRAPPER \
+ NS_IMPL_CYCLE_COLLECTION_UNLINK_END \
+ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN_INHERITED(_class, _base) \
+ /* Assert somewhere, in this case in the traverse method, that the */ \
+ /* parent isn't a single zone holder*/ \
+ MOZ_ASSERT(!_base::NS_CYCLE_COLLECTION_INNERNAME.IsSingleZoneJSHolder()); \
+ NS_IMPL_CYCLE_COLLECTION_TRAVERSE(__VA_ARGS__) \
+ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
+
+// if NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_WITH_JS_MEMBERS is used to implement
+// a wrappercache class, one needs to use
+// NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS and its variants in the class
+// declaration.
#define NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_WITH_JS_MEMBERS( \
class_, native_members_, js_members_) \
+ static_assert(std::is_base_of<nsWrapperCache, class_>::value, \
+ "Class should inherit nsWrapperCache"); \
NS_IMPL_CYCLE_COLLECTION_CLASS(class_) \
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(class_) \
using ::ImplCycleCollectionUnlink; \
diff --git a/dom/bindings/CallbackObject.cpp b/dom/bindings/CallbackObject.cpp
index c42da1c995500..dfd798ba230a5 100644
--- a/dom/bindings/CallbackObject.cpp
+++ b/dom/bindings/CallbackObject.cpp
@@ -31,7 +31,7 @@ NS_INTERFACE_MAP_END
NS_IMPL_CYCLE_COLLECTING_ADDREF(CallbackObject)
NS_IMPL_CYCLE_COLLECTING_RELEASE(CallbackObject)
-NS_IMPL_CYCLE_COLLECTION_MULTI_ZONE_JSHOLDER_CLASS(CallbackObject)
+NS_IMPL_CYCLE_COLLECTION_CLASS(CallbackObject)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(CallbackObject)
tmp->ClearJSReferences();
diff --git a/dom/bindings/Codegen.py b/dom/bindings/Codegen.py
index 5e99e08ba41a2..e6c3bee7d8f91 100644
--- a/dom/bindings/Codegen.py
+++ b/dom/bindings/Codegen.py
@@ -19897,11 +19897,11 @@ class CGJSImplClass(CGBindingImplClass):
]
isupportsDecl = "NS_DECL_CYCLE_COLLECTING_ISUPPORTS\n"
ccDecl = (
- "NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(%s)\n" % descriptor.name
+ "NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(%s)\n" % descriptor.name
)
extradefinitions = fill(
"""
- NS_IMPL_CYCLE_COLLECTION_CLASS(${ifaceName})
+ NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(${ifaceName})
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(${ifaceName})
NS_IMPL_CYCLE_COLLECTION_UNLINK(mImpl)
NS_IMPL_CYCLE_COLLECTION_UNLINK(mParent)
@@ -19912,7 +19912,6 @@ class CGJSImplClass(CGBindingImplClass):
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mImpl)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mParent)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
- NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(${ifaceName})
NS_IMPL_CYCLE_COLLECTING_ADDREF(${ifaceName})
NS_IMPL_CYCLE_COLLECTING_RELEASE(${ifaceName})
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(${ifaceName})
diff --git a/dom/bindings/SimpleGlobalObject.cpp b/dom/bindings/SimpleGlobalObject.cpp
index 6115f90f802e8..798efc94c14b6 100644
--- a/dom/bindings/SimpleGlobalObject.cpp
+++ b/dom/bindings/SimpleGlobalObject.cpp
@@ -21,7 +21,7 @@
namespace mozilla::dom {
-NS_IMPL_CYCLE_COLLECTION_CLASS(SimpleGlobalObject)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(SimpleGlobalObject)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(SimpleGlobalObject)
NS_IMPL_CYCLE_COLLECTION_UNLINK_PRESERVED_WRAPPER
@@ -32,8 +32,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(SimpleGlobalObject)
tmp->TraverseObjectsInGlobal(cb);
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(SimpleGlobalObject)
-
NS_IMPL_CYCLE_COLLECTING_ADDREF(SimpleGlobalObject)
NS_IMPL_CYCLE_COLLECTING_RELEASE(SimpleGlobalObject)
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(SimpleGlobalObject)
diff --git a/dom/bindings/SimpleGlobalObject.h b/dom/bindings/SimpleGlobalObject.h
index 6f58747e9ae45..45abd651ebf2a 100644
--- a/dom/bindings/SimpleGlobalObject.h
+++ b/dom/bindings/SimpleGlobalObject.h
@@ -50,8 +50,7 @@ class SimpleGlobalObject : public nsIGlobalObject, public nsWrapperCache {
JS::UndefinedHandleValue);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS_AMBIGUOUS(SimpleGlobalObject,
- nsIGlobalObject)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(SimpleGlobalObject)
// Gets the GlobalType of this SimpleGlobalObject.
GlobalType Type() const { return mType; }
diff --git a/dom/bindings/nsScriptErrorWithStack.cpp b/dom/bindings/nsScriptErrorWithStack.cpp
index d466d2a86a2ed..8b5f0bda9fd05 100644
--- a/dom/bindings/nsScriptErrorWithStack.cpp
+++ b/dom/bindings/nsScriptErrorWithStack.cpp
@@ -39,7 +39,7 @@ static nsCString FormatStackString(JSContext* cx, JSPrincipals* aPrincipals,
} // namespace
-NS_IMPL_CYCLE_COLLECTION_MULTI_ZONE_JSHOLDER_CLASS(nsScriptErrorWithStack)
+NS_IMPL_CYCLE_COLLECTION_CLASS(nsScriptErrorWithStack)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(nsScriptErrorWithStack)
tmp->mException.setUndefined();
diff --git a/dom/bindings/test/TestInterfaceIterableDouble.h b/dom/bindings/test/TestInterfaceIterableDouble.h
index ec81105a522c3..ba38b47e89ce5 100644
--- a/dom/bindings/test/TestInterfaceIterableDouble.h
+++ b/dom/bindings/test/TestInterfaceIterableDouble.h
@@ -28,7 +28,7 @@ class TestInterfaceIterableDouble final : public nsISupports,
public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(TestInterfaceIterableDouble)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(TestInterfaceIterableDouble)
explicit TestInterfaceIterableDouble(nsPIDOMWindowInner* aParent);
nsPIDOMWindowInner* GetParentObject() const;
diff --git a/dom/bindings/test/TestInterfaceIterableDoubleUnion.h b/dom/bindings/test/TestInterfaceIterableDoubleUnion.h
index b30973e8d4e08..d35744922e2ba 100644
--- a/dom/bindings/test/TestInterfaceIterableDoubleUnion.h
+++ b/dom/bindings/test/TestInterfaceIterableDoubleUnion.h
@@ -27,7 +27,7 @@ class TestInterfaceIterableDoubleUnion final : public nsISupports,
public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(TestInterfaceIterableDoubleUnion)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(TestInterfaceIterableDoubleUnion)
explicit TestInterfaceIterableDoubleUnion(nsPIDOMWindowInner* aParent);
nsPIDOMWindowInner* GetParentObject() const;
diff --git a/dom/bindings/test/TestInterfaceIterableSingle.h b/dom/bindings/test/TestInterfaceIterableSingle.h
index f6fbd4a98ec7a..68104d1d154ec 100644
--- a/dom/bindings/test/TestInterfaceIterableSingle.h
+++ b/dom/bindings/test/TestInterfaceIterableSingle.h
@@ -27,7 +27,7 @@ class TestInterfaceIterableSingle final : public nsISupports,
public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(TestInterfaceIterableSingle)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(TestInterfaceIterableSingle)
explicit TestInterfaceIterableSingle(nsPIDOMWindowInner* aParent);
nsPIDOMWindowInner* GetParentObject() const;
diff --git a/dom/bindings/test/TestInterfaceMaplike.h b/dom/bindings/test/TestInterfaceMaplike.h
index 10da72e933ed7..e82f290d17b33 100644
--- a/dom/bindings/test/TestInterfaceMaplike.h
+++ b/dom/bindings/test/TestInterfaceMaplike.h
@@ -25,7 +25,7 @@ class GlobalObject;
class TestInterfaceMaplike final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(TestInterfaceMaplike)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(TestInterfaceMaplike)
explicit TestInterfaceMaplike(nsPIDOMWindowInner* aParent);
nsPIDOMWindowInner* GetParentObject() const;
diff --git a/dom/bindings/test/TestInterfaceMaplikeJSObject.h b/dom/bindings/test/TestInterfaceMaplikeJSObject.h
index 53daf58cb7525..00feda779635a 100644
--- a/dom/bindings/test/TestInterfaceMaplikeJSObject.h
+++ b/dom/bindings/test/TestInterfaceMaplikeJSObject.h
@@ -26,7 +26,7 @@ class TestInterfaceMaplikeJSObject final : public nsISupports,
public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(TestInterfaceMaplikeJSObject)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(TestInterfaceMaplikeJSObject)
explicit TestInterfaceMaplikeJSObject(nsPIDOMWindowInner* aParent);
nsPIDOMWindowInner* GetParentObject() const;
diff --git a/dom/bindings/test/TestInterfaceMaplikeObject.h b/dom/bindings/test/TestInterfaceMaplikeObject.h
index 01c40762b63bc..894447cc4157c 100644
--- a/dom/bindings/test/TestInterfaceMaplikeObject.h
+++ b/dom/bindings/test/TestInterfaceMaplikeObject.h
@@ -27,7 +27,7 @@ class TestInterfaceMaplikeObject final : public nsISupports,
public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(TestInterfaceMaplikeObject)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(TestInterfaceMaplikeObject)
explicit TestInterfaceMaplikeObject(nsPIDOMWindowInner* aParent);
nsPIDOMWindowInner* GetParentObject() const;
diff --git a/dom/bindings/test/TestInterfaceObservableArray.h b/dom/bindings/test/TestInterfaceObservableArray.h
index 810eeb08021b1..3329663ac66b8 100644
--- a/dom/bindings/test/TestInterfaceObservableArray.h
+++ b/dom/bindings/test/TestInterfaceObservableArray.h
@@ -31,7 +31,7 @@ class TestInterfaceObservableArray final : public nsISupports,
public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(TestInterfaceObservableArray)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(TestInterfaceObservableArray)
nsPIDOMWindowInner* GetParentObject() const;
virtual JSObject* WrapObject(JSContext* aCx,
diff --git a/dom/bindings/test/TestInterfaceSetlike.h b/dom/bindings/test/TestInterfaceSetlike.h
index 4af0932adecbb..c99a0240ea863 100644
--- a/dom/bindings/test/TestInterfaceSetlike.h
+++ b/dom/bindings/test/TestInterfaceSetlike.h
@@ -25,7 +25,7 @@ class GlobalObject;
class TestInterfaceSetlike final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(TestInterfaceSetlike)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(TestInterfaceSetlike)
explicit TestInterfaceSetlike(JSContext* aCx, nsPIDOMWindowInner* aParent);
nsPIDOMWindowInner* GetParentObject() const;
virtual JSObject* WrapObject(JSContext* aCx,
diff --git a/dom/bindings/test/TestInterfaceSetlikeNode.h b/dom/bindings/test/TestInterfaceSetlikeNode.h
index 83dfd19802bbe..c4efdeab19a57 100644
--- a/dom/bindings/test/TestInterfaceSetlikeNode.h
+++ b/dom/bindings/test/TestInterfaceSetlikeNode.h
@@ -26,7 +26,7 @@ class TestInterfaceSetlikeNode final : public nsISupports,
public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(TestInterfaceSetlikeNode)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(TestInterfaceSetlikeNode)
explicit TestInterfaceSetlikeNode(JSContext* aCx,
nsPIDOMWindowInner* aParent);
nsPIDOMWindowInner* GetParentObject() const;
diff --git a/dom/bindings/test/TestTrialInterface.h b/dom/bindings/test/TestTrialInterface.h
index 29c73bacc17ad..1fa746b09a5ac 100644
--- a/dom/bindings/test/TestTrialInterface.h
+++ b/dom/bindings/test/TestTrialInterface.h
@@ -18,7 +18,7 @@ namespace mozilla::dom {
class TestTrialInterface final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(TestTrialInterface)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(TestTrialInterface)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(TestTrialInterface)
public:
TestTrialInterface() = default;
diff --git a/dom/bindings/test/WrapperCachedNonISupportsTestInterface.h b/dom/bindings/test/WrapperCachedNonISupportsTestInterface.h
index 0b986325b2a30..c226d03456754 100644
--- a/dom/bindings/test/WrapperCachedNonISupportsTestInterface.h
+++ b/dom/bindings/test/WrapperCachedNonISupportsTestInterface.h
@@ -20,7 +20,7 @@ class WrapperCachedNonISupportsTestInterface final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(
WrapperCachedNonISupportsTestInterface)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(
WrapperCachedNonISupportsTestInterface)
public:
diff --git a/dom/cache/Cache.h b/dom/cache/Cache.h
index d2d8b0b5adf79..02ccb557f716e 100644
--- a/dom/cache/Cache.h
+++ b/dom/cache/Cache.h
@@ -114,7 +114,7 @@ class Cache final : public nsISupports,
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(Cache)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Cache)
};
} // namespace cache
diff --git a/dom/cache/CacheStorage.h b/dom/cache/CacheStorage.h
index 2d66da89ec2b9..a210a4b4c2b2d 100644
--- a/dom/cache/CacheStorage.h
+++ b/dom/cache/CacheStorage.h
@@ -108,7 +108,7 @@ class CacheStorage final : public nsISupports,
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(CacheStorage)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(CacheStorage)
};
} // namespace cache
diff --git a/dom/canvas/CanvasGradient.h b/dom/canvas/CanvasGradient.h
index b2e3f04914228..9455f7b14b36c 100644
--- a/dom/canvas/CanvasGradient.h
+++ b/dom/canvas/CanvasGradient.h
@@ -19,7 +19,7 @@ class CanvasRenderingContext2D;
class CanvasGradient : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(CanvasGradient)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(CanvasGradient)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(CanvasGradient)
enum class Type : uint8_t { LINEAR = 0, RADIAL, CONIC };
diff --git a/dom/canvas/CanvasPath.h b/dom/canvas/CanvasPath.h
index 7e109a96b5051..141f86fee0f45 100644
--- a/dom/canvas/CanvasPath.h
+++ b/dom/canvas/CanvasPath.h
@@ -22,7 +22,7 @@ struct DOMMatrix2DInit;
class CanvasPath final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(CanvasPath)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(CanvasPath)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(CanvasPath)
nsCOMPtr<nsISupports> GetParentObject() { return mParent; }
diff --git a/dom/canvas/CanvasPattern.h b/dom/canvas/CanvasPattern.h
index 0aa9f4655c514..7ec392b0c31aa 100644
--- a/dom/canvas/CanvasPattern.h
+++ b/dom/canvas/CanvasPattern.h
@@ -26,7 +26,7 @@ class CanvasPattern final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(CanvasPattern)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(CanvasPattern)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(CanvasPattern)
enum class RepeatMode : uint8_t { REPEAT, REPEATX, REPEATY, NOREPEAT };
diff --git a/dom/canvas/CanvasRenderingContext2D.cpp b/dom/canvas/CanvasRenderingContext2D.cpp
index ac199cf96f721..e01116e939970 100644
--- a/dom/canvas/CanvasRenderingContext2D.cpp
+++ b/dom/canvas/CanvasRenderingContext2D.cpp
@@ -903,7 +903,7 @@ CanvasShutdownObserver::Observe(nsISupports* aSubject, const char* aTopic,
NS_IMPL_CYCLE_COLLECTING_ADDREF(CanvasRenderingContext2D)
NS_IMPL_CYCLE_COLLECTING_RELEASE(CanvasRenderingContext2D)
-NS_IMPL_CYCLE_COLLECTION_CLASS(CanvasRenderingContext2D)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(CanvasRenderingContext2D)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(CanvasRenderingContext2D)
// Make sure we remove ourselves from the list of demotable contexts (raw
@@ -965,8 +965,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(CanvasRenderingContext2D)
}
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(CanvasRenderingContext2D)
-
NS_IMPL_CYCLE_COLLECTION_CAN_SKIP_BEGIN(CanvasRenderingContext2D)
if (nsCCUncollectableMarker::sGeneration && tmp->HasKnownLiveWrapper()) {
dom::Element* canvasElement = tmp->mCanvasElement;
diff --git a/dom/canvas/CanvasRenderingContext2D.h b/dom/canvas/CanvasRenderingContext2D.h
index 48c49a69cdc1b..3f2088ee61bc7 100644
--- a/dom/canvas/CanvasRenderingContext2D.h
+++ b/dom/canvas/CanvasRenderingContext2D.h
@@ -482,7 +482,7 @@ class CanvasRenderingContext2D : public nsICanvasRenderingContextInternal,
// nsISupports interface + CC
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SKIPPABLE_SCRIPT_HOLDER_CLASS(
+ NS_DECL_CYCLE_COLLECTION_SKIPPABLE_WRAPPERCACHE_CLASS(
CanvasRenderingContext2D)
enum class CanvasMultiGetterType : uint8_t {
diff --git a/dom/canvas/ClientWebGLContext.h b/dom/canvas/ClientWebGLContext.h
index 9a1b46743a439..22140dfadb00c 100644
--- a/dom/canvas/ClientWebGLContext.h
+++ b/dom/canvas/ClientWebGLContext.h
@@ -269,7 +269,7 @@ class WebGLBufferJS final : public nsWrapperCache, public webgl::ObjectJS {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(WebGLBufferJS)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(WebGLBufferJS)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(WebGLBufferJS)
explicit WebGLBufferJS(const ClientWebGLContext& webgl)
: webgl::ObjectJS(webgl) {}
@@ -298,7 +298,7 @@ class WebGLFramebufferJS final : public nsWrapperCache, public webgl::ObjectJS {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(WebGLFramebufferJS)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(WebGLFramebufferJS)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(WebGLFramebufferJS)
explicit WebGLFramebufferJS(const ClientWebGLContext&, bool opaque = false);
@@ -330,7 +330,7 @@ class WebGLProgramJS final : public nsWrapperCache, public webgl::ObjectJS {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(WebGLProgramJS)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(WebGLProgramJS)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(WebGLProgramJS)
// Must come first!
// If the REFCOUNTING macro isn't declared first, the AddRef at
// mInnerRef->js will panic when REFCOUNTING's "owning thread" var is still
@@ -392,7 +392,7 @@ class WebGLQueryJS final : public nsWrapperCache,
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(WebGLQueryJS)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(WebGLQueryJS)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(WebGLQueryJS)
explicit WebGLQueryJS(const ClientWebGLContext& webgl)
: webgl::ObjectJS(webgl) {}
@@ -412,7 +412,7 @@ class WebGLRenderbufferJS final : public nsWrapperCache,
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(WebGLRenderbufferJS)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(WebGLRenderbufferJS)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(WebGLRenderbufferJS)
private:
bool mHasBeenBound = false; // !IsRenderbuffer until Bind
@@ -431,7 +431,7 @@ class WebGLSamplerJS final : public nsWrapperCache, public webgl::ObjectJS {
// IsSampler without Bind
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(WebGLSamplerJS)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(WebGLSamplerJS)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(WebGLSamplerJS)
explicit WebGLSamplerJS(const ClientWebGLContext& webgl)
: webgl::ObjectJS(webgl) {}
@@ -450,7 +450,7 @@ class WebGLShaderJS final : public nsWrapperCache, public webgl::ObjectJS {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(WebGLShaderJS)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(WebGLShaderJS)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(WebGLShaderJS)
private:
const GLenum mType;
@@ -492,7 +492,7 @@ class WebGLSyncJS final : public nsWrapperCache,
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(WebGLSyncJS)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(WebGLSyncJS)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(WebGLSyncJS)
explicit WebGLSyncJS(const ClientWebGLContext& webgl)
: webgl::ObjectJS(webgl) {}
@@ -513,7 +513,7 @@ class WebGLTextureJS final : public nsWrapperCache, public webgl::ObjectJS {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(WebGLTextureJS)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(WebGLTextureJS)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(WebGLTextureJS)
explicit WebGLTextureJS(const ClientWebGLContext& webgl)
: webgl::ObjectJS(webgl) {}
@@ -539,7 +539,7 @@ class WebGLTransformFeedbackJS final : public nsWrapperCache,
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(WebGLTransformFeedbackJS)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(WebGLTransformFeedbackJS)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(WebGLTransformFeedbackJS)
explicit WebGLTransformFeedbackJS(const ClientWebGLContext&);
@@ -564,7 +564,7 @@ class WebGLUniformLocationJS final : public nsWrapperCache,
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(WebGLUniformLocationJS)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(WebGLUniformLocationJS)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(WebGLUniformLocationJS)
WebGLUniformLocationJS(const ClientWebGLContext& webgl,
std::weak_ptr<webgl::LinkResult> parent, uint32_t loc,
@@ -592,7 +592,7 @@ class WebGLVertexArrayJS final : public nsWrapperCache, public webgl::ObjectJS {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(WebGLVertexArrayJS)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(WebGLVertexArrayJS)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(WebGLVertexArrayJS)
explicit WebGLVertexArrayJS(const ClientWebGLContext&);
@@ -710,7 +710,7 @@ class ClientWebGLContext final : public nsICanvasRenderingContextInternal,
// ----------------------------- Lifetime and DOM ---------------------------
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(ClientWebGLContext)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(ClientWebGLContext)
JSObject* WrapObject(JSContext* cx,
JS::Handle<JSObject*> givenProto) override {
diff --git a/dom/canvas/ClientWebGLExtensions.h b/dom/canvas/ClientWebGLExtensions.h
index d2d8ba9815800..cf1a80756b84f 100644
--- a/dom/canvas/ClientWebGLExtensions.h
+++ b/dom/canvas/ClientWebGLExtensions.h
@@ -19,7 +19,7 @@ class ClientWebGLExtensionBase : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(ClientWebGLExtensionBase)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(ClientWebGLExtensionBase)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(ClientWebGLExtensionBase)
protected:
explicit ClientWebGLExtensionBase(ClientWebGLContext& context)
diff --git a/dom/canvas/ImageBitmap.h b/dom/canvas/ImageBitmap.h
index 6188a0fa7c7ec..282a743e2025f 100644
--- a/dom/canvas/ImageBitmap.h
+++ b/dom/canvas/ImageBitmap.h
@@ -79,7 +79,7 @@ struct ImageBitmapCloneData final {
class ImageBitmap final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(ImageBitmap)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(ImageBitmap)
nsCOMPtr<nsIGlobalObject> GetParentObject() const { return mParent; }
diff --git a/dom/canvas/ImageBitmapRenderingContext.h b/dom/canvas/ImageBitmapRenderingContext.h
index 4233448dc315b..52437bc405f41 100644
--- a/dom/canvas/ImageBitmapRenderingContext.h
+++ b/dom/canvas/ImageBitmapRenderingContext.h
@@ -52,7 +52,7 @@ class ImageBitmapRenderingContext final
// nsISupports interface + CC
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(ImageBitmapRenderingContext)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(ImageBitmapRenderingContext)
void GetCanvas(
Nullable<OwningHTMLCanvasElementOrOffscreenCanvas>& retval) const;
diff --git a/dom/canvas/OffscreenCanvasRenderingContext2D.cpp b/dom/canvas/OffscreenCanvasRenderingContext2D.cpp
index 9eece4a5e3fdd..b43a0566152ff 100644
--- a/dom/canvas/OffscreenCanvasRenderingContext2D.cpp
+++ b/dom/canvas/OffscreenCanvasRenderingContext2D.cpp
@@ -41,13 +41,20 @@ class OffscreenCanvasShutdownObserver final {
OffscreenCanvasRenderingContext2D* mOwner;
};
-NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_INHERITED(
- OffscreenCanvasRenderingContext2D, CanvasRenderingContext2D)
+NS_IMPL_CYCLE_COLLECTION_INHERITED(OffscreenCanvasRenderingContext2D,
+ CanvasRenderingContext2D)
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(OffscreenCanvasRenderingContext2D)
NS_WRAPPERCACHE_INTERFACE_MAP_ENTRY
NS_INTERFACE_MAP_END_INHERITING(CanvasRenderingContext2D)
+// Need to use NS_DECL_CYCLE_COLLECTION_SKIPPABLE_SCRIPT_HOLDER_CLASS_INHERITED
+// and dummy trace since we're missing some _SKIPPABLE_ macros without
+// SCRIPT_HOLDER.
+NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN_INHERITED(
+ OffscreenCanvasRenderingContext2D, CanvasRenderingContext2D)
+NS_IMPL_CYCLE_COLLECTION_TRACE_END
+
NS_IMPL_CYCLE_COLLECTION_CAN_SKIP_BEGIN(OffscreenCanvasRenderingContext2D)
return tmp->HasKnownLiveWrapper();
NS_IMPL_CYCLE_COLLECTION_CAN_SKIP_END
diff --git a/dom/canvas/XRWebGLLayer.h b/dom/canvas/XRWebGLLayer.h
index 01dab2f80e1ee..49d4c7e770106 100644
--- a/dom/canvas/XRWebGLLayer.h
+++ b/dom/canvas/XRWebGLLayer.h
@@ -27,7 +27,7 @@ struct XRWebGLLayerInit;
class XRWebGLLayer final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(XRWebGLLayer)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(XRWebGLLayer)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(XRWebGLLayer)
explicit XRWebGLLayer(
nsISupports* aParent, XRSession& aSession, bool aIgnoreDepthValues,
diff --git a/dom/clients/api/Client.h b/dom/clients/api/Client.h
index 303c8be6382e7..cd47ccd93bad7 100644
--- a/dom/clients/api/Client.h
+++ b/dom/clients/api/Client.h
@@ -80,7 +80,7 @@ class Client final : public nsISupports, public nsWrapperCache {
ErrorResult& aRv);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(mozilla::dom::Client)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(mozilla::dom::Client)
};
} // namespace dom
diff --git a/dom/clients/api/Clients.h b/dom/clients/api/Clients.h
index dd5448c4a1ebb..481b066655f11 100644
--- a/dom/clients/api/Clients.h
+++ b/dom/clients/api/Clients.h
@@ -46,7 +46,7 @@ class Clients final : public nsISupports, public nsWrapperCache {
already_AddRefed<Promise> Claim(ErrorResult& aRv);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(Clients)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Clients)
};
} // namespace dom
diff --git a/dom/console/Console.cpp b/dom/console/Console.cpp
index 56b260f7f0d50..da66993586d5c 100644
--- a/dom/console/Console.cpp
+++ b/dom/console/Console.cpp
@@ -793,7 +793,7 @@ class ConsoleProfileWorkerRunnable final : public ConsoleWorkerRunnable {
nsString mAction;
};
-NS_IMPL_CYCLE_COLLECTION_MULTI_ZONE_JSHOLDER_CLASS(Console)
+NS_IMPL_CYCLE_COLLECTION_CLASS(Console)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(Console)
NS_IMPL_CYCLE_COLLECTION_UNLINK(mGlobal)
diff --git a/dom/console/ConsoleInstance.h b/dom/console/ConsoleInstance.h
index cb0ee5489f1c4..6afed56b57908 100644
--- a/dom/console/ConsoleInstance.h
+++ b/dom/console/ConsoleInstance.h
@@ -14,7 +14,7 @@ namespace mozilla::dom {
class ConsoleInstance final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(ConsoleInstance)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(ConsoleInstance)
explicit ConsoleInstance(JSContext* aCx,
const ConsoleInstanceOptions& aOptions);
diff --git a/dom/credentialmanagement/Credential.h b/dom/credentialmanagement/Credential.h
index a29bf28f1fc36..bb5fbd9539b0e 100644
--- a/dom/credentialmanagement/Credential.h
+++ b/dom/credentialmanagement/Credential.h
@@ -17,7 +17,7 @@ namespace mozilla::dom {
class Credential : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(Credential)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Credential)
public:
explicit Credential(nsPIDOMWindowInner* aParent);
diff --git a/dom/credentialmanagement/CredentialsContainer.h b/dom/credentialmanagement/CredentialsContainer.h
index 2d2d25af79aea..0a9bc9dfb7da7 100644
--- a/dom/credentialmanagement/CredentialsContainer.h
+++ b/dom/credentialmanagement/CredentialsContainer.h
@@ -16,7 +16,7 @@ class WebAuthnManager;
class CredentialsContainer final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(CredentialsContainer)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(CredentialsContainer)
explicit CredentialsContainer(nsPIDOMWindowInner* aParent);
diff --git a/dom/crypto/CryptoKey.h b/dom/crypto/CryptoKey.h
index 6619f1a5cda5e..d09d2cd66ceec 100644
--- a/dom/crypto/CryptoKey.h
+++ b/dom/crypto/CryptoKey.h
@@ -73,7 +73,7 @@ struct JsonWebKey;
class CryptoKey final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(CryptoKey)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(CryptoKey)
static const uint32_t CLEAR_EXTRACTABLE = 0xFFFFFFE;
static const uint32_t EXTRACTABLE = 0x00000001;
diff --git a/dom/debugger/DebuggerNotification.h b/dom/debugger/DebuggerNotification.h
index 35dc5c45677c6..a0d443c27c9ca 100644
--- a/dom/debugger/DebuggerNotification.h
+++ b/dom/debugger/DebuggerNotification.h
@@ -18,7 +18,7 @@ namespace mozilla::dom {
class DebuggerNotification : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(DebuggerNotification)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(DebuggerNotification)
DebuggerNotification(nsIGlobalObject* aDebuggeeGlobal,
DebuggerNotificationType aType,
diff --git a/dom/debugger/DebuggerNotificationObserver.h b/dom/debugger/DebuggerNotificationObserver.h
index 7ba176f605358..743268f2a7faf 100644
--- a/dom/debugger/DebuggerNotificationObserver.h
+++ b/dom/debugger/DebuggerNotificationObserver.h
@@ -23,7 +23,7 @@ class DebuggerNotificationObserver final : public nsISupports,
public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(DebuggerNotificationObserver)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(DebuggerNotificationObserver)
static already_AddRefed<DebuggerNotificationObserver> Constructor(
GlobalObject& aGlobal, ErrorResult& aRv);
diff --git a/dom/events/ClipboardItem.h b/dom/events/ClipboardItem.h
index fb043aa20119a..496ce2c0cefab 100644
--- a/dom/events/ClipboardItem.h
+++ b/dom/events/ClipboardItem.h
@@ -27,7 +27,7 @@ class ClipboardItem final : public nsWrapperCache {
};
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(ClipboardItem)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(ClipboardItem)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(ClipboardItem)
ClipboardItem(nsISupports* aOwner, dom::PresentationStyle aPresentationStyle,
nsTArray<ItemEntry>&& aItems);
diff --git a/dom/events/CustomEvent.cpp b/dom/events/CustomEvent.cpp
index 36eb76030b661..c4f1b30044298 100644
--- a/dom/events/CustomEvent.cpp
+++ b/dom/events/CustomEvent.cpp
@@ -23,7 +23,7 @@ CustomEvent::CustomEvent(mozilla::dom::EventTarget* aOwner,
CustomEvent::~CustomEvent() { mozilla::DropJSObjects(this); }
-NS_IMPL_CYCLE_COLLECTION_MULTI_ZONE_JSHOLDER_CLASS(CustomEvent)
+NS_IMPL_CYCLE_COLLECTION_CLASS(CustomEvent)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN_INHERITED(CustomEvent, Event)
mozilla::DropJSObjects(tmp);
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
diff --git a/dom/events/DOMEventTargetHelper.cpp b/dom/events/DOMEventTargetHelper.cpp
index 6a502b64e8bee..7cbe8d5636730 100644
--- a/dom/events/DOMEventTargetHelper.cpp
+++ b/dom/events/DOMEventTargetHelper.cpp
@@ -18,11 +18,7 @@ namespace mozilla {
using namespace dom;
-NS_IMPL_CYCLE_COLLECTION_CLASS(DOMEventTargetHelper)
-
-NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN(DOMEventTargetHelper)
- NS_IMPL_CYCLE_COLLECTION_TRACE_PRESERVED_WRAPPER
-NS_IMPL_CYCLE_COLLECTION_TRACE_END
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(DOMEventTargetHelper)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN_INTERNAL(DOMEventTargetHelper)
if (MOZ_UNLIKELY(cb.WantDebugInfo())) {
diff --git a/dom/events/DOMEventTargetHelper.h b/dom/events/DOMEventTargetHelper.h
index 594ae6aa3e88f..622f482a16773 100644
--- a/dom/events/DOMEventTargetHelper.h
+++ b/dom/events/DOMEventTargetHelper.h
@@ -56,7 +56,7 @@ class DOMEventTargetHelper : public dom::EventTarget,
explicit DOMEventTargetHelper(DOMEventTargetHelper* aOther);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SKIPPABLE_SCRIPT_HOLDER_CLASS(DOMEventTargetHelper)
+ NS_DECL_CYCLE_COLLECTION_SKIPPABLE_WRAPPERCACHE_CLASS(DOMEventTargetHelper)
virtual EventListenerManager* GetExistingListenerManager() const override;
virtual EventListenerManager* GetOrCreateListenerManager() override;
diff --git a/dom/events/DataTransfer.cpp b/dom/events/DataTransfer.cpp
index 85dab302b6fcf..e932b67c296a5 100644
--- a/dom/events/DataTransfer.cpp
+++ b/dom/events/DataTransfer.cpp
@@ -49,7 +49,7 @@
namespace mozilla::dom {
-NS_IMPL_CYCLE_COLLECTION_CLASS(DataTransfer)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(DataTransfer)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(DataTransfer)
NS_IMPL_CYCLE_COLLECTION_UNLINK(mParent)
@@ -64,7 +64,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(DataTransfer)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mDragTarget)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mDragImage)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(DataTransfer)
NS_IMPL_CYCLE_COLLECTING_ADDREF(DataTransfer)
NS_IMPL_CYCLE_COLLECTING_RELEASE(DataTransfer)
diff --git a/dom/events/DataTransfer.h b/dom/events/DataTransfer.h
index b0d01e119ec0e..e9fed94a6771a 100644
--- a/dom/events/DataTransfer.h
+++ b/dom/events/DataTransfer.h
@@ -59,7 +59,7 @@ class DataTransfer final : public nsISupports, public nsWrapperCache {
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(DataTransfer)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(DataTransfer)
friend class mozilla::EventStateManager;
diff --git a/dom/events/DataTransferItem.h b/dom/events/DataTransferItem.h
index ce97322defefd..171173852257f 100644
--- a/dom/events/DataTransferItem.h
+++ b/dom/events/DataTransferItem.h
@@ -23,7 +23,7 @@ class FunctionStringCallback;
class DataTransferItem final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(DataTransferItem);
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(DataTransferItem);
public:
// The spec only talks about the "file" and "string" kinds. Due to the Moz*
diff --git a/dom/events/DataTransferItemList.h b/dom/events/DataTransferItemList.h
index b2d7f8e963c76..82977999db86f 100644
--- a/dom/events/DataTransferItemList.h
+++ b/dom/events/DataTransferItemList.h
@@ -21,7 +21,7 @@ class DataTransferItem;
class DataTransferItemList final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(DataTransferItemList);
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(DataTransferItemList);
explicit DataTransferItemList(DataTransfer* aDataTransfer)
: mDataTransfer(aDataTransfer) {
diff --git a/dom/events/DeviceMotionEvent.h b/dom/events/DeviceMotionEvent.h
index 9d5922c24bcc1..3e0debba88db6 100644
--- a/dom/events/DeviceMotionEvent.h
+++ b/dom/events/DeviceMotionEvent.h
@@ -16,7 +16,7 @@ namespace mozilla::dom {
class DeviceRotationRate final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(DeviceRotationRate)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(DeviceRotationRate)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(DeviceRotationRate)
DeviceRotationRate(DeviceMotionEvent* aOwner, const Nullable<double>& aAlpha,
const Nullable<double>& aBeta,
@@ -44,7 +44,7 @@ class DeviceRotationRate final : public nsWrapperCache {
class DeviceAcceleration final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(DeviceAcceleration)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(DeviceAcceleration)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(DeviceAcceleration)
DeviceAcceleration(DeviceMotionEvent* aOwner, const Nullable<double>& aX,
const Nullable<double>& aY, const Nullable<double>& aZ);
diff --git a/dom/events/Event.cpp b/dom/events/Event.cpp
index b2040b2d09c57..5f00c4c98153c 100644
--- a/dom/events/Event.cpp
+++ b/dom/events/Event.cpp
@@ -129,11 +129,7 @@ NS_INTERFACE_MAP_END
NS_IMPL_CYCLE_COLLECTING_ADDREF(Event)
NS_IMPL_CYCLE_COLLECTING_RELEASE(Event)
-NS_IMPL_CYCLE_COLLECTION_CLASS(Event)
-
-NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN(Event)
- NS_IMPL_CYCLE_COLLECTION_TRACE_PRESERVED_WRAPPER
-NS_IMPL_CYCLE_COLLECTION_TRACE_END
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Event)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(Event)
if (tmp->mEventIsInternal) {
diff --git a/dom/events/Event.h b/dom/events/Event.h
index 7759034cec57b..3984b021f0f10 100644
--- a/dom/events/Event.h
+++ b/dom/events/Event.h
@@ -86,7 +86,7 @@ class Event : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(Event)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Event)
nsIGlobalObject* GetParentObject() { return mOwner; }
diff --git a/dom/events/ImageCaptureError.h b/dom/events/ImageCaptureError.h
index 404af08b5846c..9c56c3f004da9 100644
--- a/dom/events/ImageCaptureError.h
+++ b/dom/events/ImageCaptureError.h
@@ -22,7 +22,7 @@ namespace mozilla::dom {
class ImageCaptureError final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(ImageCaptureError)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(ImageCaptureError)
ImageCaptureError(nsISupports* aParent, uint16_t aCode,
const nsAString& aMessage);
diff --git a/dom/events/MessageEvent.cpp b/dom/events/MessageEvent.cpp
index 5b16fa4eb14e4..92e59a6348f77 100644
--- a/dom/events/MessageEvent.cpp
+++ b/dom/events/MessageEvent.cpp
@@ -16,7 +16,7 @@
namespace mozilla::dom {
-NS_IMPL_CYCLE_COLLECTION_MULTI_ZONE_JSHOLDER_CLASS(MessageEvent)
+NS_IMPL_CYCLE_COLLECTION_CLASS(MessageEvent)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN_INHERITED(MessageEvent, Event)
tmp->mData.setUndefined();
diff --git a/dom/events/PaintRequest.h b/dom/events/PaintRequest.h
index 0cc6362fc8d1c..72a1e69283066 100644
--- a/dom/events/PaintRequest.h
+++ b/dom/events/PaintRequest.h
@@ -22,7 +22,7 @@ class PaintRequest final : public nsISupports, public nsWrapperCache {
explicit PaintRequest(Event* aParent) : mParent(aParent) {}
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(PaintRequest)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(PaintRequest)
virtual JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
@@ -46,7 +46,7 @@ class PaintRequestList final : public nsISupports, public nsWrapperCache {
explicit PaintRequestList(Event* aParent) : mParent(aParent) {}
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(PaintRequestList)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(PaintRequestList)
virtual JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/dom/events/TextClause.h b/dom/events/TextClause.h
index 54ce97b727866..18a3c8939227f 100644
--- a/dom/events/TextClause.h
+++ b/dom/events/TextClause.h
@@ -19,7 +19,7 @@ namespace mozilla::dom {
class TextClause final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(TextClause)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(TextClause)
nsPIDOMWindowInner* GetParentObject() const { return mOwner; }
diff --git a/dom/events/Touch.h b/dom/events/Touch.h
index 815d6a1b05d72..74924b34a2e09 100644
--- a/dom/events/Touch.h
+++ b/dom/events/Touch.h
@@ -39,7 +39,7 @@ class Touch final : public nsISupports,
Touch(const Touch& aOther);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(Touch)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Touch)
void InitializePoints(nsPresContext* aPresContext, WidgetEvent* aEvent);
diff --git a/dom/events/TouchEvent.h b/dom/events/TouchEvent.h
index c175463442c89..eb88aa5868b96 100644
--- a/dom/events/TouchEvent.h
+++ b/dom/events/TouchEvent.h
@@ -21,7 +21,7 @@ namespace mozilla::dom {
class TouchList final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(TouchList)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(TouchList)
explicit TouchList(nsISupports* aParent) : mParent(aParent) {
nsJSContext::LikelyShortLivingObjectCreated();
diff --git a/dom/fetch/Headers.h b/dom/fetch/Headers.h
index fdccb1540619d..db3be8e75f6b4 100644
--- a/dom/fetch/Headers.h
+++ b/dom/fetch/Headers.h
@@ -34,7 +34,7 @@ class OwningByteStringSequenceSequenceOrByteStringByteStringRecord;
*/
class Headers final : public nsISupports, public nsWrapperCache {
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(Headers)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Headers)
friend class Request;
friend class Response;
diff --git a/dom/fetch/Request.cpp b/dom/fetch/Request.cpp
index 3cb5f47751100..794b9489807eb 100644
--- a/dom/fetch/Request.cpp
+++ b/dom/fetch/Request.cpp
@@ -30,7 +30,8 @@ namespace mozilla::dom {
NS_IMPL_ADDREF_INHERITED(Request, FetchBody<Request>)
NS_IMPL_RELEASE_INHERITED(Request, FetchBody<Request>)
-NS_IMPL_CYCLE_COLLECTION_CLASS(Request)
+// Can't use _INHERITED macro here because FetchBody<Request> is abstract.
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Request)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN_INHERITED(Request, FetchBody<Request>)
NS_IMPL_CYCLE_COLLECTION_UNLINK(mReadableStreamBody)
@@ -49,10 +50,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN_INHERITED(Request, FetchBody<Request>)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mSignal)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN_INHERITED(Request, FetchBody<Request>)
- NS_IMPL_CYCLE_COLLECTION_TRACE_PRESERVED_WRAPPER
-NS_IMPL_CYCLE_COLLECTION_TRACE_END
-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(Request)
NS_WRAPPERCACHE_INTERFACE_MAP_ENTRY
NS_INTERFACE_MAP_END_INHERITING(FetchBody<Request>)
diff --git a/dom/fetch/Request.h b/dom/fetch/Request.h
index 72a58d73cdd85..0086e076de973 100644
--- a/dom/fetch/Request.h
+++ b/dom/fetch/Request.h
@@ -25,8 +25,8 @@ class RequestOrUSVString;
class Request final : public FetchBody<Request>, public nsWrapperCache {
NS_DECL_ISUPPORTS_INHERITED
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS_INHERITED(Request,
- FetchBody<Request>)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS_INHERITED(Request,
+ FetchBody<Request>)
public:
Request(nsIGlobalObject* aOwner, SafeRefPtr<InternalRequest> aRequest,
diff --git a/dom/file/FileList.h b/dom/file/FileList.h
index f0537f264048d..f36b25ba07905 100644
--- a/dom/file/FileList.h
+++ b/dom/file/FileList.h
@@ -32,7 +32,7 @@ class Sequence;
class FileList final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(FileList)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(FileList)
explicit FileList(nsISupports* aParent);
diff --git a/dom/filesystem/Directory.cpp b/dom/filesystem/Directory.cpp
index cb0e69a03451c..da5d6e551564e 100644
--- a/dom/filesystem/Directory.cpp
+++ b/dom/filesystem/Directory.cpp
@@ -20,7 +20,7 @@
namespace mozilla::dom {
-NS_IMPL_CYCLE_COLLECTION_CLASS(Directory)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Directory)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(Directory)
if (tmp->mFileSystem) {
@@ -38,8 +38,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(Directory)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mGlobal)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(Directory)
-
NS_IMPL_CYCLE_COLLECTING_ADDREF(Directory)
NS_IMPL_CYCLE_COLLECTING_RELEASE(Directory)
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(Directory)
diff --git a/dom/filesystem/Directory.h b/dom/filesystem/Directory.h
index 11f1132cdaf2a..b8ee0e68e1f6a 100644
--- a/dom/filesystem/Directory.h
+++ b/dom/filesystem/Directory.h
@@ -25,7 +25,7 @@ class StringOrFileOrDirectory;
class Directory final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(Directory)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Directory)
static already_AddRefed<Directory> Constructor(const GlobalObject& aGlobal,
const nsAString& aRealPath,
diff --git a/dom/filesystem/compat/FileSystem.h b/dom/filesystem/compat/FileSystem.h
index b8fa01d759c3b..92cb563ef4d48 100644
--- a/dom/filesystem/compat/FileSystem.h
+++ b/dom/filesystem/compat/FileSystem.h
@@ -23,7 +23,7 @@ class OwningFileOrDirectory;
class FileSystem final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(FileSystem)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(FileSystem)
static already_AddRefed<FileSystem> Create(nsIGlobalObject* aGlobalObject);
diff --git a/dom/filesystem/compat/FileSystemDirectoryReader.h b/dom/filesystem/compat/FileSystemDirectoryReader.h
index 5aa9dce79fdf5..90274943b4bea 100644
--- a/dom/filesystem/compat/FileSystemDirectoryReader.h
+++ b/dom/filesystem/compat/FileSystemDirectoryReader.h
@@ -25,7 +25,7 @@ class FileSystemEntriesCallback;
class FileSystemDirectoryReader : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(FileSystemDirectoryReader)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(FileSystemDirectoryReader)
explicit FileSystemDirectoryReader(FileSystemDirectoryEntry* aDirectoryEntry,
FileSystem* aFileSystem,
diff --git a/dom/filesystem/compat/FileSystemEntry.h b/dom/filesystem/compat/FileSystemEntry.h
index ffdafc0a2cce8..2275c600a9bcc 100644
--- a/dom/filesystem/compat/FileSystemEntry.h
+++ b/dom/filesystem/compat/FileSystemEntry.h
@@ -25,7 +25,7 @@ class OwningFileOrDirectory;
class FileSystemEntry : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(FileSystemEntry)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(FileSystemEntry)
static already_AddRefed<FileSystemEntry> Create(
nsIGlobalObject* aGlobalObject,
diff --git a/dom/flex/Flex.h b/dom/flex/Flex.h
index 25d54c5069853..7476585a3cbcf 100644
--- a/dom/flex/Flex.h
+++ b/dom/flex/Flex.h
@@ -27,7 +27,7 @@ class Flex : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(Flex)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Flex)
virtual JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/dom/flex/FlexItemValues.h b/dom/flex/FlexItemValues.h
index 91ba7a981aab1..2853a922bbc46 100644
--- a/dom/flex/FlexItemValues.h
+++ b/dom/flex/FlexItemValues.h
@@ -31,7 +31,7 @@ class FlexItemValues : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(FlexItemValues)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(FlexItemValues)
virtual JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/dom/flex/FlexLineValues.h b/dom/flex/FlexLineValues.h
index 09bb22cc7497a..340af2e7e5bd9 100644
--- a/dom/flex/FlexLineValues.h
+++ b/dom/flex/FlexLineValues.h
@@ -27,7 +27,7 @@ class FlexLineValues : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(FlexLineValues)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(FlexLineValues)
virtual JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/dom/fs/FileSystemDirectoryIterator.h b/dom/fs/FileSystemDirectoryIterator.h
index e07980c618551..30c7f3451187b 100644
--- a/dom/fs/FileSystemDirectoryIterator.h
+++ b/dom/fs/FileSystemDirectoryIterator.h
@@ -26,7 +26,7 @@ class FileSystemDirectoryIterator : public nsISupports, public nsWrapperCache {
explicit FileSystemDirectoryIterator(nsIGlobalObject* aGlobal);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(FileSystemDirectoryIterator)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(FileSystemDirectoryIterator)
// WebIDL Boilerplate
nsIGlobalObject* GetParentObject() const;
diff --git a/dom/fs/FileSystemHandle.h b/dom/fs/FileSystemHandle.h
index e2cb323fc11b8..21c9a9268f25f 100644
--- a/dom/fs/FileSystemHandle.h
+++ b/dom/fs/FileSystemHandle.h
@@ -26,7 +26,7 @@ class Promise;
class FileSystemHandle : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(FileSystemHandle)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(FileSystemHandle)
// WebIDL Boilerplate
nsIGlobalObject* GetParentObject() const;
diff --git a/dom/fs/FileSystemSyncAccessHandle.h b/dom/fs/FileSystemSyncAccessHandle.h
index a19737dfe4ecb..fcb07925ef58c 100644
--- a/dom/fs/FileSystemSyncAccessHandle.h
+++ b/dom/fs/FileSystemSyncAccessHandle.h
@@ -27,7 +27,7 @@ class FileSystemSyncAccessHandle final : public nsISupports,
public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(FileSystemSyncAccessHandle)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(FileSystemSyncAccessHandle)
// WebIDL Boilerplate
nsIGlobalObject* GetParentObject() const;
diff --git a/dom/gamepad/Gamepad.h b/dom/gamepad/Gamepad.h
index 8e667d0f4cbb1..689ea7f6d2a45 100644
--- a/dom/gamepad/Gamepad.h
+++ b/dom/gamepad/Gamepad.h
@@ -48,7 +48,7 @@ class Gamepad final : public nsISupports, public nsWrapperCache {
uint32_t aNumTouchEvents);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(Gamepad)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Gamepad)
void SetConnected(bool aConnected);
void SetButton(uint32_t aButton, bool aPressed, bool aTouched, double aValue);
diff --git a/dom/gamepad/GamepadButton.h b/dom/gamepad/GamepadButton.h
index 9d2363979b84f..74bde07fcf33a 100644
--- a/dom/gamepad/GamepadButton.h
+++ b/dom/gamepad/GamepadButton.h
@@ -19,7 +19,7 @@ class GamepadButton : public nsISupports, public nsWrapperCache {
: mParent(aParent), mValue(0), mPressed(false), mTouched(false) {}
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(GamepadButton)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(GamepadButton)
nsISupports* GetParentObject() const { return mParent; }
diff --git a/dom/gamepad/GamepadHapticActuator.h b/dom/gamepad/GamepadHapticActuator.h
index fe2b0266e8041..18b659137b881 100644
--- a/dom/gamepad/GamepadHapticActuator.h
+++ b/dom/gamepad/GamepadHapticActuator.h
@@ -22,7 +22,7 @@ class GamepadHapticActuator : public nsISupports, public nsWrapperCache {
uint32_t aIndex);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(GamepadHapticActuator)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(GamepadHapticActuator)
nsISupports* GetParentObject() const;
diff --git a/dom/gamepad/GamepadLightIndicator.h b/dom/gamepad/GamepadLightIndicator.h
index 7f21164da4f91..80c6f9c13b051 100644
--- a/dom/gamepad/GamepadLightIndicator.h
+++ b/dom/gamepad/GamepadLightIndicator.h
@@ -19,7 +19,7 @@ class GamepadLightIndicator final : public nsISupports, public nsWrapperCache {
uint32_t aIndex);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(GamepadLightIndicator)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(GamepadLightIndicator)
static GamepadLightIndicatorType DefaultType() {
return GamepadLightIndicatorType::Rgb;
diff --git a/dom/geolocation/Geolocation.h b/dom/geolocation/Geolocation.h
index 5c0d2f96a22c6..7e1af00d05fba 100644
--- a/dom/geolocation/Geolocation.h
+++ b/dom/geolocation/Geolocation.h
@@ -116,7 +116,7 @@ namespace mozilla::dom {
class Geolocation final : public nsIGeolocationUpdate, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(Geolocation)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Geolocation)
NS_DECL_NSIGEOLOCATIONUPDATE
diff --git a/dom/geolocation/GeolocationCoordinates.h b/dom/geolocation/GeolocationCoordinates.h
index de90a7f35d21f..28fb30b970681 100644
--- a/dom/geolocation/GeolocationCoordinates.h
+++ b/dom/geolocation/GeolocationCoordinates.h
@@ -21,7 +21,7 @@ class GeolocationCoordinates final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(GeolocationCoordinates)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(GeolocationCoordinates)
public:
GeolocationCoordinates(GeolocationPosition* aPosition,
diff --git a/dom/geolocation/GeolocationPosition.h b/dom/geolocation/GeolocationPosition.h
index 67a074578bfd2..5920c8d2bd1cd 100644
--- a/dom/geolocation/GeolocationPosition.h
+++ b/dom/geolocation/GeolocationPosition.h
@@ -71,7 +71,7 @@ class GeolocationPosition final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(GeolocationPosition)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(GeolocationPosition)
public:
GeolocationPosition(nsISupports* aParent, nsIDOMGeoPosition* aGeoPosition);
diff --git a/dom/geolocation/GeolocationPositionError.h b/dom/geolocation/GeolocationPositionError.h
index 814fe3079aa27..c379149791ea7 100644
--- a/dom/geolocation/GeolocationPositionError.h
+++ b/dom/geolocation/GeolocationPositionError.h
@@ -24,7 +24,7 @@ typedef CallbackObjectHolder<PositionErrorCallback,
class GeolocationPositionError final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(GeolocationPositionError)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(GeolocationPositionError)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(GeolocationPositionError)
GeolocationPositionError(Geolocation* aParent, int16_t aCode);
diff --git a/dom/grid/Grid.h b/dom/grid/Grid.h
index 52cbcbed9d61d..57f13e4044367 100644
--- a/dom/grid/Grid.h
+++ b/dom/grid/Grid.h
@@ -26,7 +26,7 @@ class Grid : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(Grid)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Grid)
virtual JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/dom/grid/GridArea.h b/dom/grid/GridArea.h
index 9e209215bd532..64734f7d9185b 100644
--- a/dom/grid/GridArea.h
+++ b/dom/grid/GridArea.h
@@ -27,7 +27,7 @@ class GridArea : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(GridArea)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(GridArea)
virtual JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/dom/grid/GridDimension.h b/dom/grid/GridDimension.h
index 8173497de1925..9d3b6174c7375 100644
--- a/dom/grid/GridDimension.h
+++ b/dom/grid/GridDimension.h
@@ -31,7 +31,7 @@ class GridDimension : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(GridDimension)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(GridDimension)
virtual JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/dom/grid/GridLine.h b/dom/grid/GridLine.h
index 3a3207f7c9a2b..bcc332558394d 100644
--- a/dom/grid/GridLine.h
+++ b/dom/grid/GridLine.h
@@ -27,7 +27,7 @@ class GridLine : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(GridLine)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(GridLine)
void GetNames(nsTArray<nsString>& aNames) const;
const nsTArray<RefPtr<nsAtom>>& Names() const { return mNames; }
diff --git a/dom/grid/GridLines.h b/dom/grid/GridLines.h
index 9b5b975e0b34d..f95993dc6dc30 100644
--- a/dom/grid/GridLines.h
+++ b/dom/grid/GridLines.h
@@ -33,7 +33,7 @@ class GridLines : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(GridLines)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(GridLines)
virtual JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/dom/grid/GridTrack.h b/dom/grid/GridTrack.h
index 18b365f0e6bbd..fa78c2d5d0182 100644
--- a/dom/grid/GridTrack.h
+++ b/dom/grid/GridTrack.h
@@ -23,7 +23,7 @@ class GridTrack : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(GridTrack)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(GridTrack)
virtual JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/dom/grid/GridTracks.h b/dom/grid/GridTracks.h
index ce11dca4d0553..d20da5e12bcc0 100644
--- a/dom/grid/GridTracks.h
+++ b/dom/grid/GridTracks.h
@@ -28,7 +28,7 @@ class GridTracks : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(GridTracks)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(GridTracks)
virtual JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/dom/html/ElementInternals.cpp b/dom/html/ElementInternals.cpp
index 6aa6e72009eef..7e2c635b6d004 100644
--- a/dom/html/ElementInternals.cpp
+++ b/dom/html/ElementInternals.cpp
@@ -19,7 +19,7 @@
namespace mozilla::dom {
-NS_IMPL_CYCLE_COLLECTION_CLASS(ElementInternals)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(ElementInternals)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(ElementInternals)
tmp->Unlink();
@@ -33,8 +33,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(ElementInternals)
mValidity, mValidationAnchor);
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(ElementInternals)
-
NS_IMPL_CYCLE_COLLECTING_ADDREF(ElementInternals)
NS_IMPL_CYCLE_COLLECTING_RELEASE(ElementInternals)
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(ElementInternals)
diff --git a/dom/html/ElementInternals.h b/dom/html/ElementInternals.h
index ac238c71d5297..ea60ea82b0aea 100644
--- a/dom/html/ElementInternals.h
+++ b/dom/html/ElementInternals.h
@@ -34,8 +34,8 @@ class ElementInternals final : public nsIFormControl,
public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS_AMBIGUOUS(ElementInternals,
- nsIFormControl)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS_AMBIGUOUS(ElementInternals,
+ nsIFormControl)
explicit ElementInternals(HTMLElement* aTarget);
diff --git a/dom/html/HTMLAllCollection.h b/dom/html/HTMLAllCollection.h
index 1a0bfb1839177..6179951175e62 100644
--- a/dom/html/HTMLAllCollection.h
+++ b/dom/html/HTMLAllCollection.h
@@ -35,7 +35,7 @@ class HTMLAllCollection final : public nsISupports, public nsWrapperCache {
explicit HTMLAllCollection(mozilla::dom::Document* aDocument);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(HTMLAllCollection)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(HTMLAllCollection)
virtual JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/dom/html/HTMLCanvasElement.h b/dom/html/HTMLCanvasElement.h
index 3b1c399f40459..bcce0da188468 100644
--- a/dom/html/HTMLCanvasElement.h
+++ b/dom/html/HTMLCanvasElement.h
@@ -412,7 +412,7 @@ class HTMLCanvasPrintState final : public nsWrapperCache {
bool mIsDone;
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(HTMLCanvasPrintState)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(HTMLCanvasPrintState)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(HTMLCanvasPrintState)
virtual JSObject* WrapObject(JSContext* cx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/dom/html/HTMLOptionsCollection.h b/dom/html/HTMLOptionsCollection.h
index 97fd7ccd0732b..e4300c876d532 100644
--- a/dom/html/HTMLOptionsCollection.h
+++ b/dom/html/HTMLOptionsCollection.h
@@ -63,8 +63,8 @@ class HTMLOptionsCollection final : public nsIHTMLCollection,
virtual nsINode* GetParentObject() override;
DocGroup* GetDocGroup() const;
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS_AMBIGUOUS(HTMLOptionsCollection,
- nsIHTMLCollection)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS_AMBIGUOUS(HTMLOptionsCollection,
+ nsIHTMLCollection)
// Helpers for HTMLSelectElement
/**
diff --git a/dom/html/HTMLTableElement.cpp b/dom/html/HTMLTableElement.cpp
index d680fe2b4e9b1..24a4097445c2c 100644
--- a/dom/html/HTMLTableElement.cpp
+++ b/dom/html/HTMLTableElement.cpp
@@ -48,8 +48,8 @@ class TableRowsCollection final : public nsIHTMLCollection,
NS_IMETHOD ParentDestroyed();
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS_AMBIGUOUS(TableRowsCollection,
- nsIHTMLCollection)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS_AMBIGUOUS(TableRowsCollection,
+ nsIHTMLCollection)
// nsWrapperCache
using nsWrapperCache::GetWrapperPreserveColor;
diff --git a/dom/html/MediaError.h b/dom/html/MediaError.h
index faf4f856875cd..aac1df118dc4a 100644
--- a/dom/html/MediaError.h
+++ b/dom/html/MediaError.h
@@ -23,7 +23,7 @@ class MediaError final : public nsISupports, public nsWrapperCache {
// nsISupports
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(MediaError)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(MediaError)
HTMLMediaElement* GetParentObject() const { return mParent; }
diff --git a/dom/html/TimeRanges.h b/dom/html/TimeRanges.h
index 302d3070e7adb..2aac5308170ab 100644
--- a/dom/html/TimeRanges.h
+++ b/dom/html/TimeRanges.h
@@ -27,7 +27,7 @@ namespace dom {
class TimeRanges final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(TimeRanges)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(TimeRanges)
TimeRanges();
explicit TimeRanges(nsISupports* aParent);
diff --git a/dom/html/ValidityState.h b/dom/html/ValidityState.h
index 0ef9d2332d8ab..b9cf7cf4644cd 100644
--- a/dom/html/ValidityState.h
+++ b/dom/html/ValidityState.h
@@ -19,7 +19,7 @@ class ValidityState final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(ValidityState)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(ValidityState)
friend class ::nsIConstraintValidation;
diff --git a/dom/html/nsDOMStringMap.cpp b/dom/html/nsDOMStringMap.cpp
index f9670ecb32d54..0f2171ed79fbe 100644
--- a/dom/html/nsDOMStringMap.cpp
+++ b/dom/html/nsDOMStringMap.cpp
@@ -16,7 +16,7 @@
using namespace mozilla;
using namespace mozilla::dom;
-NS_IMPL_CYCLE_COLLECTION_CLASS(nsDOMStringMap)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(nsDOMStringMap)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(nsDOMStringMap)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mElement)
@@ -34,8 +34,6 @@ NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(nsDOMStringMap)
tmp->mExpandoAndGeneration.OwnerUnlinked();
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(nsDOMStringMap)
-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(nsDOMStringMap)
NS_WRAPPERCACHE_INTERFACE_MAP_ENTRY
NS_INTERFACE_MAP_ENTRY(nsIMutationObserver)
diff --git a/dom/html/nsDOMStringMap.h b/dom/html/nsDOMStringMap.h
index 284627dfa80be..a5b3a2083264d 100644
--- a/dom/html/nsDOMStringMap.h
+++ b/dom/html/nsDOMStringMap.h
@@ -29,7 +29,7 @@ class DocGroup;
class nsDOMStringMap : public nsStubMutationObserver, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(nsDOMStringMap)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(nsDOMStringMap)
NS_DECL_NSIMUTATIONOBSERVER_ATTRIBUTECHANGED
diff --git a/dom/indexedDB/IDBCursor.cpp b/dom/indexedDB/IDBCursor.cpp
index e1c97d8449dcb..3934bc93d8d72 100644
--- a/dom/indexedDB/IDBCursor.cpp
+++ b/dom/indexedDB/IDBCursor.cpp
@@ -827,8 +827,8 @@ NS_IMPL_CYCLE_COLLECTION_UNLINK_END
NS_IMPL_ADDREF_INHERITED(_subclassName, IDBCursor) \
NS_IMPL_RELEASE_INHERITED(_subclassName, IDBCursor)
-#define NS_IMPL_CYCLE_COLLECTION_IDBCURSOR_SUBCLASS(_subclassName) \
- NS_IMPL_CYCLE_COLLECTION_MULTI_ZONE_JSHOLDER_CLASS(_subclassName) \
+#define NS_IMPL_CYCLE_COLLECTION_IDBCURSOR_SUBCLASS(_subclassName) \
+ NS_IMPL_CYCLE_COLLECTION_CLASS(_subclassName) \
NS_IMPL_CYCLE_COLLECTION_IDBCURSOR_SUBCLASS_METHODS(_subclassName)
NS_IMPL_CYCLE_COLLECTION_IDBCURSOR_SUBCLASS(IDBObjectStoreCursor)
diff --git a/dom/indexedDB/IDBIndex.cpp b/dom/indexedDB/IDBIndex.cpp
index 95b27973494d9..2f77a1518c3bf 100644
--- a/dom/indexedDB/IDBIndex.cpp
+++ b/dom/indexedDB/IDBIndex.cpp
@@ -605,7 +605,7 @@ NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(IDBIndex)
NS_INTERFACE_MAP_ENTRY(nsISupports)
NS_INTERFACE_MAP_END
-NS_IMPL_CYCLE_COLLECTION_MULTI_ZONE_JSHOLDER_CLASS(IDBIndex)
+NS_IMPL_CYCLE_COLLECTION_CLASS(IDBIndex)
NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN(IDBIndex)
NS_IMPL_CYCLE_COLLECTION_TRACE_PRESERVED_WRAPPER
diff --git a/dom/indexedDB/IDBKeyRange.cpp b/dom/indexedDB/IDBKeyRange.cpp
index af31cf64905f0..9719dd468513f 100644
--- a/dom/indexedDB/IDBKeyRange.cpp
+++ b/dom/indexedDB/IDBKeyRange.cpp
@@ -115,7 +115,7 @@ void IDBKeyRange::ToSerialized(SerializedKeyRange& aKeyRange) const {
}
}
-NS_IMPL_CYCLE_COLLECTION_MULTI_ZONE_JSHOLDER_CLASS(IDBKeyRange)
+NS_IMPL_CYCLE_COLLECTION_CLASS(IDBKeyRange)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(IDBKeyRange)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mGlobal)
diff --git a/dom/indexedDB/IDBObjectStore.cpp b/dom/indexedDB/IDBObjectStore.cpp
index 3e685a379c960..021a66a086f36 100644
--- a/dom/indexedDB/IDBObjectStore.cpp
+++ b/dom/indexedDB/IDBObjectStore.cpp
@@ -1174,7 +1174,7 @@ RefPtr<IDBIndex> IDBObjectStore::Index(const nsAString& aName,
return index;
}
-NS_IMPL_CYCLE_COLLECTION_MULTI_ZONE_JSHOLDER_CLASS(IDBObjectStore)
+NS_IMPL_CYCLE_COLLECTION_CLASS(IDBObjectStore)
NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN(IDBObjectStore)
NS_IMPL_CYCLE_COLLECTION_TRACE_PRESERVED_WRAPPER
diff --git a/dom/indexedDB/IDBRequest.cpp b/dom/indexedDB/IDBRequest.cpp
index cab5d4766963f..9862f7818e8e9 100644
--- a/dom/indexedDB/IDBRequest.cpp
+++ b/dom/indexedDB/IDBRequest.cpp
@@ -268,7 +268,7 @@ DOMException* IDBRequest::GetError(ErrorResult& aRv) {
return mError;
}
-NS_IMPL_CYCLE_COLLECTION_MULTI_ZONE_JSHOLDER_CLASS(IDBRequest)
+NS_IMPL_CYCLE_COLLECTION_CLASS(IDBRequest)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN_INHERITED(IDBRequest,
DOMEventTargetHelper)
diff --git a/dom/ipc/WindowGlobalChild.h b/dom/ipc/WindowGlobalChild.h
index 951769edc1321..89e456d84d2c6 100644
--- a/dom/ipc/WindowGlobalChild.h
+++ b/dom/ipc/WindowGlobalChild.h
@@ -40,7 +40,7 @@ class WindowGlobalChild final : public WindowGlobalActor,
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(WindowGlobalChild)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(WindowGlobalChild)
static already_AddRefed<WindowGlobalChild> GetByInnerWindowId(
uint64_t aInnerWindowId);
diff --git a/dom/ipc/jsactor/JSActor.cpp b/dom/ipc/jsactor/JSActor.cpp
index 6a3ddeea47d1c..c409d6a1bb2f7 100644
--- a/dom/ipc/jsactor/JSActor.cpp
+++ b/dom/ipc/jsactor/JSActor.cpp
@@ -36,7 +36,7 @@ NS_INTERFACE_MAP_END
NS_IMPL_CYCLE_COLLECTING_ADDREF(JSActor)
NS_IMPL_CYCLE_COLLECTING_RELEASE(JSActor)
-NS_IMPL_CYCLE_COLLECTION_CLASS(JSActor)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(JSActor)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(JSActor)
NS_IMPL_CYCLE_COLLECTION_UNLINK(mGlobal)
@@ -53,8 +53,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(JSActor)
}
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(JSActor)
-
JSActor::JSActor(nsISupports* aGlobal) {
mGlobal = do_QueryInterface(aGlobal);
if (!mGlobal) {
diff --git a/dom/ipc/jsactor/JSActor.h b/dom/ipc/jsactor/JSActor.h
index d7b0e1563bce3..b4bd1e421daa4 100644
--- a/dom/ipc/jsactor/JSActor.h
+++ b/dom/ipc/jsactor/JSActor.h
@@ -43,7 +43,7 @@ enum class JSActorMessageKind {
class JSActor : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(JSActor)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(JSActor)
explicit JSActor(nsISupports* aGlobal = nullptr);
diff --git a/dom/ipc/jsactor/JSProcessActorChild.cpp b/dom/ipc/jsactor/JSProcessActorChild.cpp
index be0d49743c019..6e5337a0d2235 100644
--- a/dom/ipc/jsactor/JSProcessActorChild.cpp
+++ b/dom/ipc/jsactor/JSProcessActorChild.cpp
@@ -14,9 +14,6 @@ namespace mozilla::dom {
NS_IMPL_CYCLE_COLLECTION_INHERITED(JSProcessActorChild, JSActor, mManager)
-NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN_INHERITED(JSProcessActorChild, JSActor)
-NS_IMPL_CYCLE_COLLECTION_TRACE_END
-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(JSProcessActorChild)
NS_INTERFACE_MAP_END_INHERITING(JSActor)
diff --git a/dom/ipc/jsactor/JSProcessActorChild.h b/dom/ipc/jsactor/JSProcessActorChild.h
index f9ae841c7e881..a8be65211cd02 100644
--- a/dom/ipc/jsactor/JSProcessActorChild.h
+++ b/dom/ipc/jsactor/JSProcessActorChild.h
@@ -16,8 +16,7 @@ namespace mozilla::dom {
class JSProcessActorChild final : public JSActor {
public:
NS_DECL_ISUPPORTS_INHERITED
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS_INHERITED(JSProcessActorChild,
- JSActor)
+ NS_DECL_CYCLE_COLLECTION_CLASS_INHERITED(JSProcessActorChild, JSActor)
explicit JSProcessActorChild(nsISupports* aGlobal = nullptr)
: JSActor(aGlobal) {}
diff --git a/dom/ipc/jsactor/JSProcessActorParent.cpp b/dom/ipc/jsactor/JSProcessActorParent.cpp
index 4b7cc1710525a..a9ed9b773f9da 100644
--- a/dom/ipc/jsactor/JSProcessActorParent.cpp
+++ b/dom/ipc/jsactor/JSProcessActorParent.cpp
@@ -13,9 +13,6 @@ namespace mozilla::dom {
NS_IMPL_CYCLE_COLLECTION_INHERITED(JSProcessActorParent, JSActor, mManager)
-NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN_INHERITED(JSProcessActorParent, JSActor)
-NS_IMPL_CYCLE_COLLECTION_TRACE_END
-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(JSProcessActorParent)
NS_INTERFACE_MAP_END_INHERITING(JSActor)
diff --git a/dom/ipc/jsactor/JSProcessActorParent.h b/dom/ipc/jsactor/JSProcessActorParent.h
index 239efbeb594db..7b2a1535f90f3 100644
--- a/dom/ipc/jsactor/JSProcessActorParent.h
+++ b/dom/ipc/jsactor/JSProcessActorParent.h
@@ -24,8 +24,7 @@ namespace dom {
class JSProcessActorParent final : public JSActor {
public:
NS_DECL_ISUPPORTS_INHERITED
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS_INHERITED(JSProcessActorParent,
- JSActor)
+ NS_DECL_CYCLE_COLLECTION_CLASS_INHERITED(JSProcessActorParent, JSActor)
explicit JSProcessActorParent(nsISupports* aGlobal = nullptr)
: JSActor(aGlobal) {}
diff --git a/dom/ipc/jsactor/JSWindowActorChild.cpp b/dom/ipc/jsactor/JSWindowActorChild.cpp
index 350b547dce292..e1e453cdaf607 100644
--- a/dom/ipc/jsactor/JSWindowActorChild.cpp
+++ b/dom/ipc/jsactor/JSWindowActorChild.cpp
@@ -147,9 +147,6 @@ void JSWindowActorChild::ClearManager() { mManager = nullptr; }
NS_IMPL_CYCLE_COLLECTION_INHERITED(JSWindowActorChild, JSActor, mManager)
-NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN_INHERITED(JSWindowActorChild, JSActor)
-NS_IMPL_CYCLE_COLLECTION_TRACE_END
-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(JSWindowActorChild)
NS_INTERFACE_MAP_END_INHERITING(JSActor)
diff --git a/dom/ipc/jsactor/JSWindowActorChild.h b/dom/ipc/jsactor/JSWindowActorChild.h
index a793c102733dc..8e43d6a6c760b 100644
--- a/dom/ipc/jsactor/JSWindowActorChild.h
+++ b/dom/ipc/jsactor/JSWindowActorChild.h
@@ -41,8 +41,7 @@ namespace mozilla::dom {
class JSWindowActorChild final : public JSActor {
public:
NS_DECL_ISUPPORTS_INHERITED
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS_INHERITED(JSWindowActorChild,
- JSActor)
+ NS_DECL_CYCLE_COLLECTION_CLASS_INHERITED(JSWindowActorChild, JSActor)
explicit JSWindowActorChild(nsISupports* aGlobal = nullptr)
: JSActor(aGlobal) {}
diff --git a/dom/ipc/jsactor/JSWindowActorParent.cpp b/dom/ipc/jsactor/JSWindowActorParent.cpp
index ecf68f84cf39e..4e67602c5d35b 100644
--- a/dom/ipc/jsactor/JSWindowActorParent.cpp
+++ b/dom/ipc/jsactor/JSWindowActorParent.cpp
@@ -113,9 +113,6 @@ void JSWindowActorParent::ClearManager() { mManager = nullptr; }
NS_IMPL_CYCLE_COLLECTION_INHERITED(JSWindowActorParent, JSActor, mManager)
-NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN_INHERITED(JSWindowActorParent, JSActor)
-NS_IMPL_CYCLE_COLLECTION_TRACE_END
-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(JSWindowActorParent)
NS_INTERFACE_MAP_END_INHERITING(JSActor)
diff --git a/dom/ipc/jsactor/JSWindowActorParent.h b/dom/ipc/jsactor/JSWindowActorParent.h
index 113d07c4bceb8..05fb88f8ac1b2 100644
--- a/dom/ipc/jsactor/JSWindowActorParent.h
+++ b/dom/ipc/jsactor/JSWindowActorParent.h
@@ -30,8 +30,7 @@ namespace mozilla::dom {
class JSWindowActorParent final : public JSActor {
public:
NS_DECL_ISUPPORTS_INHERITED
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS_INHERITED(JSWindowActorParent,
- JSActor)
+ NS_DECL_CYCLE_COLLECTION_CLASS_INHERITED(JSWindowActorParent, JSActor)
explicit JSWindowActorParent(nsISupports* aGlobal = nullptr)
: JSActor(aGlobal) {}
diff --git a/dom/locks/Lock.h b/dom/locks/Lock.h
index 87ceaf550fca1..ced0fc3785962 100644
--- a/dom/locks/Lock.h
+++ b/dom/locks/Lock.h
@@ -29,7 +29,7 @@ class Lock final : public PromiseNativeHandler, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(Lock)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Lock)
Lock(nsIGlobalObject* aGlobal,
const WeakPtr<locks::LockRequestChild>& aLockRequestChild,
diff --git a/dom/locks/LockManager.h b/dom/locks/LockManager.h
index a750150ad6f08..7ceeadd35a020 100644
--- a/dom/locks/LockManager.h
+++ b/dom/locks/LockManager.h
@@ -34,7 +34,7 @@ class LockManagerChild;
class LockManager final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(LockManager)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(LockManager)
explicit LockManager(nsIGlobalObject* aGlobal);
diff --git a/dom/media/GetUserMediaRequest.h b/dom/media/GetUserMediaRequest.h
index abe97199a6e31..a2b69bf1d646a 100644
--- a/dom/media/GetUserMediaRequest.h
+++ b/dom/media/GetUserMediaRequest.h
@@ -54,7 +54,7 @@ class GetUserMediaRequest : public nsISupports, public nsWrapperCache {
const nsAString& aMediaSource, bool aIsHandlingUserInput);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(GetUserMediaRequest)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(GetUserMediaRequest)
JSObject* WrapObject(JSContext* cx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/dom/media/MediaDeviceInfo.h b/dom/media/MediaDeviceInfo.h
index bfbb205c46283..e68ffba9dce07 100644
--- a/dom/media/MediaDeviceInfo.h
+++ b/dom/media/MediaDeviceInfo.h
@@ -29,7 +29,7 @@ class MediaDeviceInfo final : public nsISupports, public nsWrapperCache {
const nsAString& aLabel, const nsAString& aGroupId);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(MediaDeviceInfo)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(MediaDeviceInfo)
NS_DECLARE_STATIC_IID_ACCESSOR(MOZILLA_DOM_MEDIADEVICEINFO_IMPLEMENTATION_IID)
JSObject* WrapObject(JSContext* cx,
diff --git a/dom/media/MediaStreamError.h b/dom/media/MediaStreamError.h
index 5ac0bf7f4b5eb..3e84cf67909a7 100644
--- a/dom/media/MediaStreamError.h
+++ b/dom/media/MediaStreamError.h
@@ -87,7 +87,7 @@ class MediaStreamError final : public nsISupports,
mParent(aParent) {}
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(MediaStreamError)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(MediaStreamError)
NS_DECLARE_STATIC_IID_ACCESSOR(
MOZILLA_DOM_MEDIASTREAMERROR_IMPLEMENTATION_IID)
diff --git a/dom/media/VideoPlaybackQuality.h b/dom/media/VideoPlaybackQuality.h
index 977b9e5ba5f39..76ca38de7b305 100644
--- a/dom/media/VideoPlaybackQuality.h
+++ b/dom/media/VideoPlaybackQuality.h
@@ -17,7 +17,7 @@ namespace mozilla::dom {
class VideoPlaybackQuality final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(VideoPlaybackQuality)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(VideoPlaybackQuality)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(VideoPlaybackQuality)
VideoPlaybackQuality(HTMLMediaElement* aElement,
DOMHighResTimeStamp aCreationTime, uint32_t aTotalFrames,
diff --git a/dom/media/eme/MediaKeyStatusMap.h b/dom/media/eme/MediaKeyStatusMap.h
index 653e95093acfb..bd03f7812fb84 100644
--- a/dom/media/eme/MediaKeyStatusMap.h
+++ b/dom/media/eme/MediaKeyStatusMap.h
@@ -30,7 +30,7 @@ class ArrayBufferViewOrArrayBuffer;
class MediaKeyStatusMap final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(MediaKeyStatusMap)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(MediaKeyStatusMap)
public:
explicit MediaKeyStatusMap(nsPIDOMWindowInner* aParent);
diff --git a/dom/media/eme/MediaKeySystemAccess.h b/dom/media/eme/MediaKeySystemAccess.h
index 50b36b081ef85..40ce2aab2d2a4 100644
--- a/dom/media/eme/MediaKeySystemAccess.h
+++ b/dom/media/eme/MediaKeySystemAccess.h
@@ -27,7 +27,7 @@ namespace dom {
class MediaKeySystemAccess final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(MediaKeySystemAccess)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(MediaKeySystemAccess)
public:
explicit MediaKeySystemAccess(nsPIDOMWindowInner* aParent,
diff --git a/dom/media/eme/MediaKeys.cpp b/dom/media/eme/MediaKeys.cpp
index 176995c8c03d8..6e0faaab8736a 100644
--- a/dom/media/eme/MediaKeys.cpp
+++ b/dom/media/eme/MediaKeys.cpp
@@ -42,7 +42,7 @@ namespace mozilla::dom {
// We don't use NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE because we need to
// disconnect our MediaKeys instances from the inner window (mparent) before
// we unlink it.
-NS_IMPL_CYCLE_COLLECTION_CLASS(MediaKeys)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(MediaKeys)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(MediaKeys)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mElement)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mParent)
@@ -50,7 +50,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(MediaKeys)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mPromises)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mPendingSessions)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(MediaKeys)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(MediaKeys)
NS_IMPL_CYCLE_COLLECTION_UNLINK(mElement)
diff --git a/dom/media/eme/MediaKeys.h b/dom/media/eme/MediaKeys.h
index 7d88e6458099c..5a44b3c227369 100644
--- a/dom/media/eme/MediaKeys.h
+++ b/dom/media/eme/MediaKeys.h
@@ -56,7 +56,7 @@ class MediaKeys final : public nsIObserver,
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(MediaKeys)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(MediaKeys)
NS_DECL_NSIOBSERVER
diff --git a/dom/media/mediacapabilities/MediaCapabilities.h b/dom/media/mediacapabilities/MediaCapabilities.h
index dd7b4127703cd..b31e12e8ab5dc 100644
--- a/dom/media/mediacapabilities/MediaCapabilities.h
+++ b/dom/media/mediacapabilities/MediaCapabilities.h
@@ -45,7 +45,7 @@ class MediaCapabilities final : public nsISupports, public nsWrapperCache {
public:
// Ref counting and cycle collection
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(MediaCapabilities)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(MediaCapabilities)
// WebIDL Methods
already_AddRefed<Promise> DecodingInfo(
diff --git a/dom/media/mediasession/MediaMetadata.h b/dom/media/mediasession/MediaMetadata.h
index 63fae8f776411..6c552e646577d 100644
--- a/dom/media/mediasession/MediaMetadata.h
+++ b/dom/media/mediasession/MediaMetadata.h
@@ -42,7 +42,7 @@ class MediaMetadata final : public nsISupports,
public:
// Ref counting and cycle collection
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(MediaMetadata)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(MediaMetadata)
// WebIDL methods
nsIGlobalObject* GetParentObject() const;
diff --git a/dom/media/mediasession/MediaSession.cpp b/dom/media/mediasession/MediaSession.cpp
index 718695fa0322e..e55fa28d96e15 100644
--- a/dom/media/mediasession/MediaSession.cpp
+++ b/dom/media/mediasession/MediaSession.cpp
@@ -22,14 +22,13 @@ namespace mozilla::dom {
// We don't use NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE because we need to
// unregister MediaSession from document's activity listeners.
-NS_IMPL_CYCLE_COLLECTION_CLASS(MediaSession)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(MediaSession)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(MediaSession)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mParent)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mMediaMetadata)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mActionHandlers)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mDoc)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(MediaSession)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(MediaSession)
tmp->Shutdown();
diff --git a/dom/media/mediasession/MediaSession.h b/dom/media/mediasession/MediaSession.h
index 4408f262a3b52..db6864c842c6a 100644
--- a/dom/media/mediasession/MediaSession.h
+++ b/dom/media/mediasession/MediaSession.h
@@ -42,7 +42,7 @@ class MediaSession final : public nsIDocumentActivity, public nsWrapperCache {
public:
// Ref counting and cycle collection
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(MediaSession)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(MediaSession)
NS_DECL_NSIDOCUMENTACTIVITY
explicit MediaSession(nsPIDOMWindowInner* aParent);
diff --git a/dom/media/webaudio/AudioListener.h b/dom/media/webaudio/AudioListener.h
index 640191d50b0b3..7d7fad3bfb54b 100644
--- a/dom/media/webaudio/AudioListener.h
+++ b/dom/media/webaudio/AudioListener.h
@@ -50,7 +50,7 @@ class AudioListener final : public nsWrapperCache {
explicit AudioListener(AudioContext* aContext);
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(AudioListener)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(AudioListener)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(AudioListener)
size_t SizeOfIncludingThis(mozilla::MallocSizeOf aMallocSizeOf) const;
diff --git a/dom/media/webaudio/AudioParam.cpp b/dom/media/webaudio/AudioParam.cpp
index fd07f844fd3e2..2bd169e263152 100644
--- a/dom/media/webaudio/AudioParam.cpp
+++ b/dom/media/webaudio/AudioParam.cpp
@@ -12,7 +12,7 @@
namespace mozilla::dom {
-NS_IMPL_CYCLE_COLLECTION_CLASS(AudioParam)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(AudioParam)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(AudioParam)
tmp->DisconnectFromGraphAndDestroyTrack();
@@ -23,8 +23,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(AudioParam)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mNode)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(AudioParam)
-
NS_IMPL_CYCLE_COLLECTING_NATIVE_ADDREF(AudioParam)
NS_IMPL_CYCLE_COLLECTING_NATIVE_RELEASE(AudioParam)
diff --git a/dom/media/webaudio/AudioParam.h b/dom/media/webaudio/AudioParam.h
index 2a1a3eae26f20..397b078248c76 100644
--- a/dom/media/webaudio/AudioParam.h
+++ b/dom/media/webaudio/AudioParam.h
@@ -28,7 +28,7 @@ class AudioParam final : public nsWrapperCache, public AudioParamTimeline {
NS_IMETHOD_(MozExternalRefCountType) AddRef(void);
NS_IMETHOD_(MozExternalRefCountType) Release(void);
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(AudioParam)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(AudioParam)
AudioContext* GetParentObject() const { return mNode->Context(); }
diff --git a/dom/media/webaudio/AudioParamMap.h b/dom/media/webaudio/AudioParamMap.h
index f960219593732..c7bb0bdbea6d7 100644
--- a/dom/media/webaudio/AudioParamMap.h
+++ b/dom/media/webaudio/AudioParamMap.h
@@ -15,7 +15,7 @@ namespace mozilla::dom {
class AudioParamMap final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(AudioParamMap)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(AudioParamMap)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(AudioParamMap)
explicit AudioParamMap(AudioWorkletNode* aParent);
diff --git a/dom/media/webaudio/AudioWorkletProcessor.h b/dom/media/webaudio/AudioWorkletProcessor.h
index 13f913fd5f1c9..3d37d61498035 100644
--- a/dom/media/webaudio/AudioWorkletProcessor.h
+++ b/dom/media/webaudio/AudioWorkletProcessor.h
@@ -25,7 +25,7 @@ class MessagePort;
class AudioWorkletProcessor final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(AudioWorkletProcessor)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(AudioWorkletProcessor)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(AudioWorkletProcessor)
static already_AddRefed<AudioWorkletProcessor> Constructor(
const GlobalObject& aGlobal, ErrorResult& aRv);
diff --git a/dom/media/webaudio/PeriodicWave.h b/dom/media/webaudio/PeriodicWave.h
index d4c281df335da..18408789a93f7 100644
--- a/dom/media/webaudio/PeriodicWave.h
+++ b/dom/media/webaudio/PeriodicWave.h
@@ -26,7 +26,7 @@ class PeriodicWave final : public nsWrapperCache {
ErrorResult& aRv);
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(PeriodicWave)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(PeriodicWave)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(PeriodicWave)
static already_AddRefed<PeriodicWave> Constructor(
const GlobalObject& aGlobal, AudioContext& aAudioContext,
diff --git a/dom/media/webrtc/RTCCertificate.h b/dom/media/webrtc/RTCCertificate.h
index e28d3a48b5983..a5cc6bde32121 100644
--- a/dom/media/webrtc/RTCCertificate.h
+++ b/dom/media/webrtc/RTCCertificate.h
@@ -44,7 +44,7 @@ class Promise;
class RTCCertificate final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(RTCCertificate)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(RTCCertificate)
// WebIDL method that implements RTCPeerConnection.generateCertificate.
static already_AddRefed<Promise> GenerateCertificate(
diff --git a/dom/media/webrtc/RTCIdentityProviderRegistrar.h b/dom/media/webrtc/RTCIdentityProviderRegistrar.h
index 0cab9087ec512..0510471f170f3 100644
--- a/dom/media/webrtc/RTCIdentityProviderRegistrar.h
+++ b/dom/media/webrtc/RTCIdentityProviderRegistrar.h
@@ -24,7 +24,7 @@ class RTCIdentityProviderRegistrar final : public nsISupports,
public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(RTCIdentityProviderRegistrar)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(RTCIdentityProviderRegistrar)
explicit RTCIdentityProviderRegistrar(nsIGlobalObject* aGlobal);
diff --git a/dom/media/webrtc/jsapi/PeerConnectionImpl.cpp b/dom/media/webrtc/jsapi/PeerConnectionImpl.cpp
index 2789066f57900..ea455416dffa0 100644
--- a/dom/media/webrtc/jsapi/PeerConnectionImpl.cpp
+++ b/dom/media/webrtc/jsapi/PeerConnectionImpl.cpp
@@ -244,7 +244,7 @@ void PeerConnectionAutoTimer::UnregisterConnection(bool aContainedAV) {
bool PeerConnectionAutoTimer::IsStopped() { return mRefCnt == 0; }
-NS_IMPL_CYCLE_COLLECTION_CLASS(PeerConnectionImpl)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(PeerConnectionImpl)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(PeerConnectionImpl)
tmp->Close();
NS_IMPL_CYCLE_COLLECTION_UNLINK(mPCObserver, mWindow, mCertificate,
@@ -257,7 +257,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(PeerConnectionImpl)
mSTSThread, mReceiveStreams, mOperations,
mTransceivers, mKungFuDeathGrip)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(PeerConnectionImpl)
NS_IMPL_CYCLE_COLLECTING_ADDREF(PeerConnectionImpl)
NS_IMPL_CYCLE_COLLECTING_RELEASE(PeerConnectionImpl)
diff --git a/dom/media/webrtc/jsapi/PeerConnectionImpl.h b/dom/media/webrtc/jsapi/PeerConnectionImpl.h
index 95c668c87830b..3b7010e105b1a 100644
--- a/dom/media/webrtc/jsapi/PeerConnectionImpl.h
+++ b/dom/media/webrtc/jsapi/PeerConnectionImpl.h
@@ -174,7 +174,7 @@ class PeerConnectionImpl final
const mozilla::dom::GlobalObject* aGlobal = nullptr);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(PeerConnectionImpl)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(PeerConnectionImpl)
JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/dom/media/webrtc/jsapi/RTCRtpReceiver.h b/dom/media/webrtc/jsapi/RTCRtpReceiver.h
index 1660b58698de3..a71a23b2062af 100644
--- a/dom/media/webrtc/jsapi/RTCRtpReceiver.h
+++ b/dom/media/webrtc/jsapi/RTCRtpReceiver.h
@@ -47,7 +47,7 @@ class RTCRtpReceiver : public nsISupports, public nsWrapperCache {
// nsISupports
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(RTCRtpReceiver)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(RTCRtpReceiver)
JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/dom/media/webrtc/jsapi/RTCRtpSender.h b/dom/media/webrtc/jsapi/RTCRtpSender.h
index ae2969525be54..61f99694bd37a 100644
--- a/dom/media/webrtc/jsapi/RTCRtpSender.h
+++ b/dom/media/webrtc/jsapi/RTCRtpSender.h
@@ -45,7 +45,7 @@ class RTCRtpSender : public nsISupports, public nsWrapperCache {
// nsISupports
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(RTCRtpSender)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(RTCRtpSender)
JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/dom/media/webrtc/jsapi/RTCRtpTransceiver.cpp b/dom/media/webrtc/jsapi/RTCRtpTransceiver.cpp
index 025f517955f0c..72ce4c86533b6 100644
--- a/dom/media/webrtc/jsapi/RTCRtpTransceiver.cpp
+++ b/dom/media/webrtc/jsapi/RTCRtpTransceiver.cpp
@@ -128,7 +128,7 @@ struct ConduitControlState : public AudioConduitControlInterface,
MOZ_MTLOG_MODULE("RTCRtpTransceiver")
-NS_IMPL_CYCLE_COLLECTION_CLASS(RTCRtpTransceiver)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(RTCRtpTransceiver)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(RTCRtpTransceiver)
// We do not unlink mPc from here; PeerConnectionImpl invokes the necessary
// teardown code itself during unlink.
@@ -141,7 +141,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(RTCRtpTransceiver)
mSender, mDtlsTransport,
mLastStableDtlsTransport)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(RTCRtpTransceiver)
NS_IMPL_CYCLE_COLLECTING_ADDREF(RTCRtpTransceiver)
NS_IMPL_CYCLE_COLLECTING_RELEASE(RTCRtpTransceiver)
diff --git a/dom/media/webrtc/jsapi/RTCRtpTransceiver.h b/dom/media/webrtc/jsapi/RTCRtpTransceiver.h
index 780184634976b..d4ab9b9aed20a 100644
--- a/dom/media/webrtc/jsapi/RTCRtpTransceiver.h
+++ b/dom/media/webrtc/jsapi/RTCRtpTransceiver.h
@@ -147,7 +147,7 @@ class RTCRtpTransceiver : public nsISupports,
// nsISupports
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(RTCRtpTransceiver)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(RTCRtpTransceiver)
static void NegotiatedDetailsToAudioCodecConfigs(
const JsepTrackNegotiatedDetails& aDetails,
diff --git a/dom/media/webrtc/jsapi/RTCStatsReport.h b/dom/media/webrtc/jsapi/RTCStatsReport.h
index 3ae0c24a38208..98f868b298461 100644
--- a/dom/media/webrtc/jsapi/RTCStatsReport.h
+++ b/dom/media/webrtc/jsapi/RTCStatsReport.h
@@ -79,7 +79,7 @@ typedef MozPromise<UniquePtr<RTCStatsReportInternal>, nsresult, true>
class RTCStatsReport final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(RTCStatsReport)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(RTCStatsReport)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(RTCStatsReport)
explicit RTCStatsReport(nsPIDOMWindowInner* aParent);
diff --git a/dom/media/webspeech/recognition/SpeechGrammar.h b/dom/media/webspeech/recognition/SpeechGrammar.h
index ea4a6bab8ec7e..0dee1e9792540 100644
--- a/dom/media/webspeech/recognition/SpeechGrammar.h
+++ b/dom/media/webspeech/recognition/SpeechGrammar.h
@@ -27,7 +27,7 @@ class SpeechGrammar final : public nsISupports, public nsWrapperCache {
explicit SpeechGrammar(nsISupports* aParent);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(SpeechGrammar)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(SpeechGrammar)
nsISupports* GetParentObject() const;
diff --git a/dom/media/webspeech/recognition/SpeechGrammarList.h b/dom/media/webspeech/recognition/SpeechGrammarList.h
index a8c628421ac02..7f1e09cd9e0b7 100644
--- a/dom/media/webspeech/recognition/SpeechGrammarList.h
+++ b/dom/media/webspeech/recognition/SpeechGrammarList.h
@@ -31,7 +31,7 @@ class SpeechGrammarList final : public nsISupports, public nsWrapperCache {
explicit SpeechGrammarList(nsISupports* aParent);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(SpeechGrammarList)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(SpeechGrammarList)
static already_AddRefed<SpeechGrammarList> Constructor(
const GlobalObject& aGlobal);
diff --git a/dom/media/webspeech/recognition/SpeechRecognitionAlternative.h b/dom/media/webspeech/recognition/SpeechRecognitionAlternative.h
index bd15c38beb8f5..017d8699433fc 100644
--- a/dom/media/webspeech/recognition/SpeechRecognitionAlternative.h
+++ b/dom/media/webspeech/recognition/SpeechRecognitionAlternative.h
@@ -24,7 +24,7 @@ class SpeechRecognitionAlternative final : public nsISupports,
explicit SpeechRecognitionAlternative(SpeechRecognition* aParent);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(SpeechRecognitionAlternative)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(SpeechRecognitionAlternative)
nsISupports* GetParentObject() const;
diff --git a/dom/media/webspeech/recognition/SpeechRecognitionResult.h b/dom/media/webspeech/recognition/SpeechRecognitionResult.h
index 8afeb6247c41c..fc9e8fd660266 100644
--- a/dom/media/webspeech/recognition/SpeechRecognitionResult.h
+++ b/dom/media/webspeech/recognition/SpeechRecognitionResult.h
@@ -25,7 +25,7 @@ class SpeechRecognitionResult final : public nsISupports,
explicit SpeechRecognitionResult(SpeechRecognition* aParent);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(SpeechRecognitionResult)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(SpeechRecognitionResult)
nsISupports* GetParentObject() const;
diff --git a/dom/media/webspeech/recognition/SpeechRecognitionResultList.h b/dom/media/webspeech/recognition/SpeechRecognitionResultList.h
index 2337d06aca15d..b45659564b12e 100644
--- a/dom/media/webspeech/recognition/SpeechRecognitionResultList.h
+++ b/dom/media/webspeech/recognition/SpeechRecognitionResultList.h
@@ -26,7 +26,7 @@ class SpeechRecognitionResultList final : public nsISupports,
explicit SpeechRecognitionResultList(SpeechRecognition* aParent);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(SpeechRecognitionResultList)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(SpeechRecognitionResultList)
nsISupports* GetParentObject() const;
diff --git a/dom/media/webspeech/synth/SpeechSynthesisVoice.h b/dom/media/webspeech/synth/SpeechSynthesisVoice.h
index 9c4ae7fb74314..079e5f49eaf5e 100644
--- a/dom/media/webspeech/synth/SpeechSynthesisVoice.h
+++ b/dom/media/webspeech/synth/SpeechSynthesisVoice.h
@@ -25,7 +25,7 @@ class SpeechSynthesisVoice final : public nsISupports, public nsWrapperCache {
SpeechSynthesisVoice(nsISupports* aParent, const nsAString& aUri);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(SpeechSynthesisVoice)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(SpeechSynthesisVoice)
nsISupports* GetParentObject() const;
diff --git a/dom/media/webvtt/TextTrackCueList.h b/dom/media/webvtt/TextTrackCueList.h
index 5669fe12ce498..f590f94d8cca0 100644
--- a/dom/media/webvtt/TextTrackCueList.h
+++ b/dom/media/webvtt/TextTrackCueList.h
@@ -22,7 +22,7 @@ class TextTrackCue;
class TextTrackCueList final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(TextTrackCueList)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(TextTrackCueList)
// TextTrackCueList WebIDL
explicit TextTrackCueList(nsISupports* aParent);
diff --git a/dom/media/webvtt/TextTrackRegion.h b/dom/media/webvtt/TextTrackRegion.h
index a04422a0c2a06..d316d7a30c46d 100644
--- a/dom/media/webvtt/TextTrackRegion.h
+++ b/dom/media/webvtt/TextTrackRegion.h
@@ -23,7 +23,7 @@ class TextTrack;
class TextTrackRegion final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(TextTrackRegion)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(TextTrackRegion)
JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/dom/messagechannel/MessageChannel.h b/dom/messagechannel/MessageChannel.h
index 861cd31229910..a618bd4abd0c8 100644
--- a/dom/messagechannel/MessageChannel.h
+++ b/dom/messagechannel/MessageChannel.h
@@ -25,7 +25,7 @@ class MessagePort;
class MessageChannel final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(MessageChannel)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(MessageChannel)
nsIGlobalObject* GetParentObject() const { return mGlobal; }
diff --git a/dom/midi/MIDIInputMap.h b/dom/midi/MIDIInputMap.h
index 9a146871f1d7a..5826290dbc813 100644
--- a/dom/midi/MIDIInputMap.h
+++ b/dom/midi/MIDIInputMap.h
@@ -23,7 +23,7 @@ namespace mozilla::dom {
class MIDIInputMap final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(MIDIInputMap)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(MIDIInputMap)
nsPIDOMWindowInner* GetParentObject() const { return mParent; }
explicit MIDIInputMap(nsPIDOMWindowInner* aParent);
diff --git a/dom/midi/MIDIOutputMap.h b/dom/midi/MIDIOutputMap.h
index 280cf97713c2a..2e33e8b2a7208 100644
--- a/dom/midi/MIDIOutputMap.h
+++ b/dom/midi/MIDIOutputMap.h
@@ -24,7 +24,7 @@ namespace mozilla::dom {
class MIDIOutputMap final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(MIDIOutputMap)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(MIDIOutputMap)
explicit MIDIOutputMap(nsPIDOMWindowInner* aParent);
diff --git a/dom/payments/PaymentAddress.h b/dom/payments/PaymentAddress.h
index d713c0b904391..f57e89f54f2a9 100644
--- a/dom/payments/PaymentAddress.h
+++ b/dom/payments/PaymentAddress.h
@@ -15,7 +15,7 @@ namespace mozilla::dom {
class PaymentAddress final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(PaymentAddress)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(PaymentAddress)
PaymentAddress(nsPIDOMWindowInner* aWindow, const nsAString& aCountry,
const nsTArray<nsString>& aAddressLine,
diff --git a/dom/performance/EventCounts.h b/dom/performance/EventCounts.h
index 7e782c710b8c6..59d9c140fc9fc 100644
--- a/dom/performance/EventCounts.h
+++ b/dom/performance/EventCounts.h
@@ -14,7 +14,7 @@ namespace mozilla::dom {
class EventCounts final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(EventCounts)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(EventCounts)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(EventCounts)
explicit EventCounts(nsISupports* aParent);
diff --git a/dom/performance/PerformanceEntry.h b/dom/performance/PerformanceEntry.h
index e5675c6c1c276..8ee54248bf646 100644
--- a/dom/performance/PerformanceEntry.h
+++ b/dom/performance/PerformanceEntry.h
@@ -28,7 +28,7 @@ class PerformanceEntry : public nsISupports, public nsWrapperCache {
const nsAString& aEntryType);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(PerformanceEntry)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(PerformanceEntry)
nsISupports* GetParentObject() const { return mParent; }
diff --git a/dom/performance/PerformanceNavigation.h b/dom/performance/PerformanceNavigation.h
index b152e329ef020..2f6e21fe65b17 100644
--- a/dom/performance/PerformanceNavigation.h
+++ b/dom/performance/PerformanceNavigation.h
@@ -20,7 +20,7 @@ class PerformanceNavigation final : public nsWrapperCache {
explicit PerformanceNavigation(Performance* aPerformance);
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(PerformanceNavigation)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(PerformanceNavigation)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(PerformanceNavigation)
nsDOMNavigationTiming* GetDOMTiming() const {
return mPerformance->GetDOMTiming();
diff --git a/dom/performance/PerformanceObserver.cpp b/dom/performance/PerformanceObserver.cpp
index 4f6516f350a26..e132b70860c2f 100644
--- a/dom/performance/PerformanceObserver.cpp
+++ b/dom/performance/PerformanceObserver.cpp
@@ -22,7 +22,7 @@
using namespace mozilla;
using namespace mozilla::dom;
-NS_IMPL_CYCLE_COLLECTION_CLASS(PerformanceObserver)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(PerformanceObserver)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(PerformanceObserver)
tmp->Disconnect();
NS_IMPL_CYCLE_COLLECTION_UNLINK(mCallback)
@@ -37,7 +37,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(PerformanceObserver)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mOwner)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mQueuedEntries)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(PerformanceObserver)
NS_IMPL_CYCLE_COLLECTING_ADDREF(PerformanceObserver)
NS_IMPL_CYCLE_COLLECTING_RELEASE(PerformanceObserver)
diff --git a/dom/performance/PerformanceObserver.h b/dom/performance/PerformanceObserver.h
index 664ae6c121814..7b50eb8b60966 100644
--- a/dom/performance/PerformanceObserver.h
+++ b/dom/performance/PerformanceObserver.h
@@ -32,7 +32,7 @@ class WorkerPrivate;
class PerformanceObserver final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(PerformanceObserver)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(PerformanceObserver)
static already_AddRefed<PerformanceObserver> Constructor(
const GlobalObject& aGlobal, PerformanceObserverCallback& aCb,
diff --git a/dom/performance/PerformanceObserverEntryList.h b/dom/performance/PerformanceObserverEntryList.h
index e20a5594cbf5a..3a353060daf52 100644
--- a/dom/performance/PerformanceObserverEntryList.h
+++ b/dom/performance/PerformanceObserverEntryList.h
@@ -35,7 +35,7 @@ class PerformanceObserverEntryList final : public nsISupports,
JS::Handle<JSObject*> aGivenProto) override;
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(PerformanceObserverEntryList)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(PerformanceObserverEntryList)
void GetEntries(const PerformanceEntryFilterOptions& aFilter,
nsTArray<RefPtr<PerformanceEntry>>& aRetval);
diff --git a/dom/performance/PerformanceServerTiming.h b/dom/performance/PerformanceServerTiming.h
index cd015a479140d..27b85d29fd427 100644
--- a/dom/performance/PerformanceServerTiming.h
+++ b/dom/performance/PerformanceServerTiming.h
@@ -27,7 +27,7 @@ class PerformanceServerTiming final : public nsISupports,
}
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(PerformanceServerTiming)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(PerformanceServerTiming)
JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/dom/performance/PerformanceTiming.h b/dom/performance/PerformanceTiming.h
index 1bac8812aaf4c..080b3ddf5f4d5 100644
--- a/dom/performance/PerformanceTiming.h
+++ b/dom/performance/PerformanceTiming.h
@@ -244,7 +244,7 @@ class PerformanceTiming final : public nsWrapperCache {
nsIHttpChannel* aHttpChannel,
DOMHighResTimeStamp aZeroTime);
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(PerformanceTiming)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(PerformanceTiming)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(PerformanceTiming)
nsDOMNavigationTiming* GetDOMTiming() const {
return mPerformance->GetDOMTiming();
diff --git a/dom/permission/Permissions.h b/dom/permission/Permissions.h
index 7642f6c0f5338..f974fa49a9152 100644
--- a/dom/permission/Permissions.h
+++ b/dom/permission/Permissions.h
@@ -22,7 +22,7 @@ class Promise;
class Permissions final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(Permissions)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Permissions)
explicit Permissions(nsPIDOMWindowInner* aWindow);
diff --git a/dom/promise/Promise.cpp b/dom/promise/Promise.cpp
index b8a6b9313284d..66bb1bb4ae965 100644
--- a/dom/promise/Promise.cpp
+++ b/dom/promise/Promise.cpp
@@ -56,7 +56,7 @@ namespace mozilla::dom {
// Promise
-NS_IMPL_CYCLE_COLLECTION_CLASS(Promise)
+NS_IMPL_CYCLE_COLLECTION_SINGLE_ZONE_SCRIPT_HOLDER_CLASS(Promise)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(Promise)
NS_IMPL_CYCLE_COLLECTION_UNLINK(mGlobal)
@@ -69,6 +69,8 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(Promise)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN(Promise)
+ // If you add new JS member variables, you may need to stop using
+ // NS_IMPL_CYCLE_COLLECTION_SINGLE_ZONE_SCRIPT_HOLDER_CLASS.
NS_IMPL_CYCLE_COLLECTION_TRACE_JS_MEMBER_CALLBACK(mPromiseObj);
NS_IMPL_CYCLE_COLLECTION_TRACE_END
diff --git a/dom/push/PushManager.h b/dom/push/PushManager.h
index fd2aa38e7dd08..515fddc24b237 100644
--- a/dom/push/PushManager.h
+++ b/dom/push/PushManager.h
@@ -52,7 +52,7 @@ class WorkerPrivate;
class PushManager final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(PushManager)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(PushManager)
enum SubscriptionAction {
SubscribeAction,
diff --git a/dom/push/PushSubscription.h b/dom/push/PushSubscription.h
index 74c5921a6c212..ea2bed5ad7e02 100644
--- a/dom/push/PushSubscription.h
+++ b/dom/push/PushSubscription.h
@@ -32,7 +32,7 @@ class Promise;
class PushSubscription final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(PushSubscription)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(PushSubscription)
PushSubscription(nsIGlobalObject* aGlobal, const nsAString& aEndpoint,
const nsAString& aScope,
diff --git a/dom/quota/StorageManager.h b/dom/quota/StorageManager.h
index f733036344c72..0b3376aec1dad 100644
--- a/dom/quota/StorageManager.h
+++ b/dom/quota/StorageManager.h
@@ -45,7 +45,7 @@ class StorageManager final : public nsISupports, public nsWrapperCache {
already_AddRefed<Promise> GetDirectory(ErrorResult& aRv);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(StorageManager)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(StorageManager)
// nsWrapperCache
virtual JSObject* WrapObject(JSContext* aCx,
diff --git a/dom/reporting/Report.h b/dom/reporting/Report.h
index e645142203148..e139e27858c4a 100644
--- a/dom/reporting/Report.h
+++ b/dom/reporting/Report.h
@@ -26,7 +26,7 @@ class ReportBody;
class Report final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(Report)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Report)
Report(nsIGlobalObject* aGlobal, const nsAString& aType,
const nsAString& aURL, ReportBody* aBody);
diff --git a/dom/reporting/ReportBody.h b/dom/reporting/ReportBody.h
index 6a458795d7a0b..9043dba16d1dd 100644
--- a/dom/reporting/ReportBody.h
+++ b/dom/reporting/ReportBody.h
@@ -24,7 +24,7 @@ namespace dom {
class ReportBody : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(ReportBody)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(ReportBody)
explicit ReportBody(nsIGlobalObject* aGlobal);
diff --git a/dom/reporting/ReportingObserver.cpp b/dom/reporting/ReportingObserver.cpp
index a9ab0bfd46bd6..2eac520dfef2c 100644
--- a/dom/reporting/ReportingObserver.cpp
+++ b/dom/reporting/ReportingObserver.cpp
@@ -13,7 +13,7 @@
namespace mozilla::dom {
-NS_IMPL_CYCLE_COLLECTION_CLASS(ReportingObserver)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(ReportingObserver)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(ReportingObserver)
tmp->Disconnect();
NS_IMPL_CYCLE_COLLECTION_UNLINK(mReports)
@@ -27,7 +27,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(ReportingObserver)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mGlobal)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mCallback)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(ReportingObserver)
NS_IMPL_CYCLE_COLLECTION_ROOT_NATIVE(ReportingObserver, AddRef)
NS_IMPL_CYCLE_COLLECTION_UNROOT_NATIVE(ReportingObserver, Release)
diff --git a/dom/reporting/ReportingObserver.h b/dom/reporting/ReportingObserver.h
index 3a9ba1e96f005..b89ee33adf9c4 100644
--- a/dom/reporting/ReportingObserver.h
+++ b/dom/reporting/ReportingObserver.h
@@ -33,7 +33,7 @@ struct ReportingObserverOptions;
class ReportingObserver final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(ReportingObserver)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(ReportingObserver)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(ReportingObserver)
static already_AddRefed<ReportingObserver> Constructor(
const GlobalObject& aGlobal, ReportingObserverCallback& aCallback,
diff --git a/dom/reporting/TestingDeprecatedInterface.h b/dom/reporting/TestingDeprecatedInterface.h
index 016da79fa4785..7056a91ed7af1 100644
--- a/dom/reporting/TestingDeprecatedInterface.h
+++ b/dom/reporting/TestingDeprecatedInterface.h
@@ -24,7 +24,7 @@ class TestingDeprecatedInterface final : public nsISupports,
public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(TestingDeprecatedInterface)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(TestingDeprecatedInterface)
static already_AddRefed<TestingDeprecatedInterface> Constructor(
const GlobalObject& aGlobal);
diff --git a/dom/security/featurepolicy/FeaturePolicy.h b/dom/security/featurepolicy/FeaturePolicy.h
index 1d4d23fbfda81..65f525974902f 100644
--- a/dom/security/featurepolicy/FeaturePolicy.h
+++ b/dom/security/featurepolicy/FeaturePolicy.h
@@ -67,7 +67,7 @@ class FeaturePolicy final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(FeaturePolicy)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(FeaturePolicy)
explicit FeaturePolicy(nsINode* aNode);
diff --git a/dom/security/sanitizer/Sanitizer.h b/dom/security/sanitizer/Sanitizer.h
index eb30b70f33c95..b4e5a0db30c49 100644
--- a/dom/security/sanitizer/Sanitizer.h
+++ b/dom/security/sanitizer/Sanitizer.h
@@ -32,7 +32,7 @@ class GlobalObject;
class Sanitizer final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(Sanitizer);
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Sanitizer);
explicit Sanitizer(nsIGlobalObject* aGlobal, const SanitizerConfig& aOptions)
: mGlobal(aGlobal), mTreeSanitizer(nsIParserUtils::SanitizerAllowStyle) {
diff --git a/dom/serviceworkers/NavigationPreloadManager.h b/dom/serviceworkers/NavigationPreloadManager.h
index 53a8d2b2adb07..e925e27e90461 100644
--- a/dom/serviceworkers/NavigationPreloadManager.h
+++ b/dom/serviceworkers/NavigationPreloadManager.h
@@ -24,7 +24,7 @@ class NavigationPreloadManager final : public nsISupports,
public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(NavigationPreloadManager)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(NavigationPreloadManager)
static bool IsValidHeader(const nsACString& aHeader);
diff --git a/dom/serviceworkers/ServiceWorkerEvents.cpp b/dom/serviceworkers/ServiceWorkerEvents.cpp
index 95eb52a95cca0..85c29dcc86068 100644
--- a/dom/serviceworkers/ServiceWorkerEvents.cpp
+++ b/dom/serviceworkers/ServiceWorkerEvents.cpp
@@ -1248,7 +1248,7 @@ void ExtendableMessageEvent::GetPorts(nsTArray<RefPtr<MessagePort>>& aPorts) {
aPorts = mPorts.Clone();
}
-NS_IMPL_CYCLE_COLLECTION_MULTI_ZONE_JSHOLDER_CLASS(ExtendableMessageEvent)
+NS_IMPL_CYCLE_COLLECTION_CLASS(ExtendableMessageEvent)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN_INHERITED(ExtendableMessageEvent, Event)
tmp->mData.setUndefined();
diff --git a/dom/serviceworkers/ServiceWorkerEvents.h b/dom/serviceworkers/ServiceWorkerEvents.h
index 7cbb6d9bcd43a..2003c8afe98e5 100644
--- a/dom/serviceworkers/ServiceWorkerEvents.h
+++ b/dom/serviceworkers/ServiceWorkerEvents.h
@@ -202,7 +202,7 @@ class FetchEvent final : public ExtendableEvent {
class PushMessageData final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(PushMessageData)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(PushMessageData)
virtual JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/dom/storage/Storage.h b/dom/storage/Storage.h
index bea115e9d948a..81546a0b0e603 100644
--- a/dom/storage/Storage.h
+++ b/dom/storage/Storage.h
@@ -25,7 +25,7 @@ namespace mozilla::dom {
class Storage : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(Storage)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Storage)
Storage(nsPIDOMWindowInner* aWindow, nsIPrincipal* aPrincipal,
nsIPrincipal* aStoragePrincipal);
diff --git a/dom/streams/ByteLengthQueuingStrategy.h b/dom/streams/ByteLengthQueuingStrategy.h
index cd70cbd71a140..64fe3e4528749 100644
--- a/dom/streams/ByteLengthQueuingStrategy.h
+++ b/dom/streams/ByteLengthQueuingStrategy.h
@@ -23,7 +23,7 @@ class ByteLengthQueuingStrategy final : public BaseQueuingStrategy,
public nsWrapperCache {
public:
NS_DECL_ISUPPORTS_INHERITED
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS_INHERITED(
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS_INHERITED(
ByteLengthQueuingStrategy, BaseQueuingStrategy)
public:
diff --git a/dom/streams/CountQueuingStrategy.h b/dom/streams/CountQueuingStrategy.h
index b939173c1e246..bbf109efbc911 100644
--- a/dom/streams/CountQueuingStrategy.h
+++ b/dom/streams/CountQueuingStrategy.h
@@ -23,8 +23,8 @@ class CountQueuingStrategy final : public BaseQueuingStrategy,
public nsWrapperCache {
public:
NS_DECL_ISUPPORTS_INHERITED
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS_INHERITED(CountQueuingStrategy,
- BaseQueuingStrategy)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS_INHERITED(CountQueuingStrategy,
+ BaseQueuingStrategy)
public:
explicit CountQueuingStrategy(nsISupports* aGlobal, double aHighWaterMark)
diff --git a/dom/streams/ReadableStreamBYOBReader.h b/dom/streams/ReadableStreamBYOBReader.h
index 90c8646b6c2b9..16c00930324f0 100644
--- a/dom/streams/ReadableStreamBYOBReader.h
+++ b/dom/streams/ReadableStreamBYOBReader.h
@@ -31,7 +31,7 @@ class ReadableStreamBYOBReader final : public ReadableStreamGenericReader,
public nsWrapperCache {
public:
NS_DECL_ISUPPORTS_INHERITED
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS_INHERITED(
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS_INHERITED(
ReadableStreamBYOBReader, ReadableStreamGenericReader)
public:
diff --git a/dom/streams/ReadableStreamDefaultReader.h b/dom/streams/ReadableStreamDefaultReader.h
index 5a7ab60418f9d..632ff2291125f 100644
--- a/dom/streams/ReadableStreamDefaultReader.h
+++ b/dom/streams/ReadableStreamDefaultReader.h
@@ -51,7 +51,7 @@ class ReadableStreamDefaultReader final : public ReadableStreamGenericReader,
{
public:
NS_DECL_ISUPPORTS_INHERITED
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS_INHERITED(
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS_INHERITED(
ReadableStreamDefaultReader, ReadableStreamGenericReader)
public:
diff --git a/dom/streams/TransformStream.h b/dom/streams/TransformStream.h
index 795c1f8a31410..b22065da2482a 100644
--- a/dom/streams/TransformStream.h
+++ b/dom/streams/TransformStream.h
@@ -25,7 +25,7 @@ class MessagePort;
class TransformStream final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(TransformStream)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(TransformStream)
TransformStream(nsIGlobalObject* aGlobal, ReadableStream* aReadable,
WritableStream* aWritable);
diff --git a/dom/streams/TransformStreamDefaultController.h b/dom/streams/TransformStreamDefaultController.h
index 9dd1756bea152..97399aed5b29b 100644
--- a/dom/streams/TransformStreamDefaultController.h
+++ b/dom/streams/TransformStreamDefaultController.h
@@ -25,7 +25,7 @@ class TransformStreamDefaultController final : public nsISupports,
public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(TransformStreamDefaultController)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(TransformStreamDefaultController)
MOZ_KNOWN_LIVE TransformStream* Stream();
void SetStream(TransformStream& aStream);
diff --git a/dom/svg/SVGMatrix.h b/dom/svg/SVGMatrix.h
index 5b88b9b723613..c7666bc096d00 100644
--- a/dom/svg/SVGMatrix.h
+++ b/dom/svg/SVGMatrix.h
@@ -51,7 +51,7 @@ namespace mozilla::dom {
class SVGMatrix final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(SVGMatrix)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(SVGMatrix)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(SVGMatrix)
/**
* Ctor for SVGMatrix objects that belong to a DOMSVGTransform.
diff --git a/dom/system/IOUtils.h b/dom/system/IOUtils.h
index 570d4fc87d5bd..3ce290b4b2dc2 100644
--- a/dom/system/IOUtils.h
+++ b/dom/system/IOUtils.h
@@ -815,7 +815,7 @@ class SyncReadFile : public nsISupports, public nsWrapperCache {
int64_t aSize);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(SyncReadFile)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(SyncReadFile)
nsISupports* GetParentObject() const { return mParent; }
diff --git a/dom/u2f/U2F.cpp b/dom/u2f/U2F.cpp
index 528e82c7e34b4..c5ee8c41c59a9 100644
--- a/dom/u2f/U2F.cpp
+++ b/dom/u2f/U2F.cpp
@@ -43,7 +43,7 @@ NS_INTERFACE_MAP_END_INHERITING(WebAuthnManagerBase)
NS_IMPL_ADDREF_INHERITED(U2F, WebAuthnManagerBase)
NS_IMPL_RELEASE_INHERITED(U2F, WebAuthnManagerBase)
-NS_IMPL_CYCLE_COLLECTION_CLASS(U2F)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(U2F)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN_INHERITED(U2F, WebAuthnManagerBase)
NS_IMPL_CYCLE_COLLECTION_UNLINK(mTransaction)
NS_IMPL_CYCLE_COLLECTION_UNLINK_PRESERVED_WRAPPER
@@ -52,7 +52,6 @@ NS_IMPL_CYCLE_COLLECTION_UNLINK_END
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN_INHERITED(U2F, WebAuthnManagerBase)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mTransaction)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(U2F)
/***********************************************************************
* Utility Functions
diff --git a/dom/u2f/U2F.h b/dom/u2f/U2F.h
index 1e57e4bb22a64..103650e4bcfd1 100644
--- a/dom/u2f/U2F.h
+++ b/dom/u2f/U2F.h
@@ -90,8 +90,8 @@ class U2FTransaction {
class U2F final : public WebAuthnManagerBase, public nsWrapperCache {
public:
NS_DECL_ISUPPORTS_INHERITED
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS_INHERITED(U2F,
- WebAuthnManagerBase)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS_INHERITED(U2F,
+ WebAuthnManagerBase)
explicit U2F(nsPIDOMWindowInner* aParent) : WebAuthnManagerBase(aParent) {}
diff --git a/dom/url/URL.h b/dom/url/URL.h
index 9d3d811861637..5674b3d8bfbd1 100644
--- a/dom/url/URL.h
+++ b/dom/url/URL.h
@@ -30,7 +30,7 @@ class Optional;
class URL final : public URLSearchParamsObserver, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(URL)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(URL)
explicit URL(nsISupports* aParent) : mParent(aParent) {}
diff --git a/dom/url/URLSearchParams.h b/dom/url/URLSearchParams.h
index 3f779f12ab18a..c6a63a6f7f69c 100644
--- a/dom/url/URLSearchParams.h
+++ b/dom/url/URLSearchParams.h
@@ -51,7 +51,7 @@ class URLSearchParams final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(URLSearchParams)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(URLSearchParams)
explicit URLSearchParams(nsISupports* aParent,
URLSearchParamsObserver* aObserver = nullptr);
diff --git a/dom/vr/VRDisplay.h b/dom/vr/VRDisplay.h
index 1f4de0ee0cf00..866edc9846169 100644
--- a/dom/vr/VRDisplay.h
+++ b/dom/vr/VRDisplay.h
@@ -43,7 +43,7 @@ class VRFieldOfView final : public nsWrapperCache {
VRFieldOfView(nsISupports* aParent, const gfx::VRFieldOfView& aSrc);
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(VRFieldOfView)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(VRFieldOfView)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(VRFieldOfView)
double UpDegrees() const { return mUpDegrees; }
double RightDegrees() const { return mRightDegrees; }
@@ -72,7 +72,7 @@ class VRDisplayCapabilities final : public nsWrapperCache {
: mParent(aParent), mFlags(aFlags) {}
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(VRDisplayCapabilities)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(VRDisplayCapabilities)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(VRDisplayCapabilities)
nsISupports* GetParentObject() const { return mParent; }
diff --git a/dom/vr/XRFrame.h b/dom/vr/XRFrame.h
index 588d222381f82..26bd601f3a7ea 100644
--- a/dom/vr/XRFrame.h
+++ b/dom/vr/XRFrame.h
@@ -26,7 +26,7 @@ class XRViewerPose;
class XRFrame final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(XRFrame)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(XRFrame)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(XRFrame)
explicit XRFrame(nsISupports* aParent, XRSession* aXRSession);
diff --git a/dom/vr/XRInputSource.h b/dom/vr/XRInputSource.h
index a44d1aa70d801..2f9405c18e164 100644
--- a/dom/vr/XRInputSource.h
+++ b/dom/vr/XRInputSource.h
@@ -27,7 +27,7 @@ enum class XRTargetRayMode : uint8_t;
class XRInputSource final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(XRInputSource)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(XRInputSource)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(XRInputSource)
explicit XRInputSource(nsISupports* aParent);
diff --git a/dom/vr/XRInputSourceArray.h b/dom/vr/XRInputSourceArray.h
index cbd70af688a7e..424e0062959c5 100644
--- a/dom/vr/XRInputSourceArray.h
+++ b/dom/vr/XRInputSourceArray.h
@@ -22,7 +22,7 @@ class XRInputSource;
class XRInputSourceArray final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(XRInputSourceArray)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(XRInputSourceArray)
explicit XRInputSourceArray(nsISupports* aParent);
diff --git a/dom/vr/XRPose.h b/dom/vr/XRPose.h
index cc197c1c88ef7..560581a2579cc 100644
--- a/dom/vr/XRPose.h
+++ b/dom/vr/XRPose.h
@@ -21,7 +21,7 @@ class XRView;
class XRPose : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(XRPose)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(XRPose)
explicit XRPose(nsISupports* aParent, XRRigidTransform* aTransform,
bool aEmulatedPosition);
diff --git a/dom/vr/XRRenderState.h b/dom/vr/XRRenderState.h
index d707e3fc678dc..6004949500514 100644
--- a/dom/vr/XRRenderState.h
+++ b/dom/vr/XRRenderState.h
@@ -18,7 +18,7 @@ class XRWebGLLayer;
class XRRenderState final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(XRRenderState)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(XRRenderState)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(XRRenderState)
explicit XRRenderState(nsISupports* aParent, XRSession* aSession);
explicit XRRenderState(const XRRenderState& aOther);
diff --git a/dom/vr/XRViewport.h b/dom/vr/XRViewport.h
index 851a8835acc42..5b36a0e8ed515 100644
--- a/dom/vr/XRViewport.h
+++ b/dom/vr/XRViewport.h
@@ -18,7 +18,7 @@ namespace mozilla::dom {
class XRViewport final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(XRViewport)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(XRViewport)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(XRViewport)
explicit XRViewport(nsISupports* aParent, const gfx::IntRect& aRect);
diff --git a/dom/webgpu/Buffer.h b/dom/webgpu/Buffer.h
index 4f84249ceeab0..b9c72b290a049 100644
--- a/dom/webgpu/Buffer.h
+++ b/dom/webgpu/Buffer.h
@@ -42,7 +42,8 @@ struct MappedInfo {
class Buffer final : public ObjectBase, public ChildOf<Device> {
public:
- GPU_DECL_CYCLE_COLLECTION(Buffer)
+ NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(Buffer)
+ NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(Buffer)
GPU_DECL_JS_WRAP(Buffer)
Buffer(Device* const aParent, RawId aId, BufferAddress aSize, bool aMappable);
diff --git a/dom/webgpu/CanvasContext.h b/dom/webgpu/CanvasContext.h
index 10ef4d9f22532..010ada83ad75e 100644
--- a/dom/webgpu/CanvasContext.h
+++ b/dom/webgpu/CanvasContext.h
@@ -31,7 +31,7 @@ class CanvasContext final : public nsICanvasRenderingContextInternal,
public:
// nsISupports interface + CC
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(CanvasContext)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(CanvasContext)
CanvasContext();
diff --git a/dom/webgpu/ObjectModel.h b/dom/webgpu/ObjectModel.h
index 62da6647171fd..7dd0c2d96f2da 100644
--- a/dom/webgpu/ObjectModel.h
+++ b/dom/webgpu/ObjectModel.h
@@ -61,8 +61,8 @@ class ObjectBase : public nsWrapperCache {
JSObject* WrapObject(JSContext* cx, JS::Handle<JSObject*> givenProto) \
override;
-#define GPU_DECL_CYCLE_COLLECTION(T) \
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(T) \
+#define GPU_DECL_CYCLE_COLLECTION(T) \
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(T) \
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(T)
#define GPU_IMPL_JS_WRAP(T) \
@@ -73,7 +73,7 @@ class ObjectBase : public nsWrapperCache {
// Note: we don't use `NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE` directly
// because there is a custom action we need to always do.
#define GPU_IMPL_CYCLE_COLLECTION_WRAPPERCACHE(T, ...) \
- NS_IMPL_CYCLE_COLLECTION_CLASS(T) \
+ NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(T) \
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(T) \
tmp->Cleanup(); \
NS_IMPL_CYCLE_COLLECTION_UNLINK(__VA_ARGS__) \
@@ -81,11 +81,10 @@ class ObjectBase : public nsWrapperCache {
NS_IMPL_CYCLE_COLLECTION_UNLINK_END \
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(T) \
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(__VA_ARGS__) \
- NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END \
- NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(T)
+ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
#define GPU_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_WEAK_PTR(T, ...) \
- NS_IMPL_CYCLE_COLLECTION_CLASS(T) \
+ NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(T) \
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(T) \
tmp->Cleanup(); \
NS_IMPL_CYCLE_COLLECTION_UNLINK(__VA_ARGS__) \
@@ -94,8 +93,7 @@ class ObjectBase : public nsWrapperCache {
NS_IMPL_CYCLE_COLLECTION_UNLINK_END \
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(T) \
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(__VA_ARGS__) \
- NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END \
- NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(T)
+ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
#define GPU_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_INHERITED(T, P, ...) \
NS_IMPL_CYCLE_COLLECTION_CLASS(T) \
diff --git a/dom/webscheduling/WebTaskScheduler.h b/dom/webscheduling/WebTaskScheduler.h
index 543b73a8393d2..fcddd09d365bb 100644
--- a/dom/webscheduling/WebTaskScheduler.h
+++ b/dom/webscheduling/WebTaskScheduler.h
@@ -93,7 +93,7 @@ class WebTaskScheduler : public nsWrapperCache, public SupportsWeakPtr {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(WebTaskScheduler)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(WebTaskScheduler)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(WebTaskScheduler)
static already_AddRefed<WebTaskSchedulerMainThread> CreateForMainThread(
nsGlobalWindowInner* aWindow);
diff --git a/dom/workers/WorkerLocation.h b/dom/workers/WorkerLocation.h
index 83dd10f52d43b..d51e73cde5098 100644
--- a/dom/workers/WorkerLocation.h
+++ b/dom/workers/WorkerLocation.h
@@ -45,7 +45,7 @@ class WorkerLocation final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(WorkerLocation)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(WorkerLocation)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(WorkerLocation)
static already_AddRefed<WorkerLocation> Create(
WorkerPrivate::LocationInfo& aInfo);
diff --git a/dom/workers/WorkerNavigator.h b/dom/workers/WorkerNavigator.h
index b0c24b8f1f59a..dce3120519685 100644
--- a/dom/workers/WorkerNavigator.h
+++ b/dom/workers/WorkerNavigator.h
@@ -52,7 +52,7 @@ class WorkerNavigator final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(WorkerNavigator)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(WorkerNavigator)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(WorkerNavigator)
static already_AddRefed<WorkerNavigator> Create(bool aOnLine);
diff --git a/dom/worklet/Worklet.cpp b/dom/worklet/Worklet.cpp
index 474915dae13ac..b42b472163a58 100644
--- a/dom/worklet/Worklet.cpp
+++ b/dom/worklet/Worklet.cpp
@@ -449,7 +449,7 @@ void ExecutionRunnable::RunOnMainThread() {
// ---------------------------------------------------------------------------
// Worklet
-NS_IMPL_CYCLE_COLLECTION_CLASS(Worklet)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Worklet)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(Worklet)
NS_IMPL_CYCLE_COLLECTION_UNLINK(mWindow)
@@ -463,8 +463,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(Worklet)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mOwnedObject)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(Worklet)
-
NS_IMPL_CYCLE_COLLECTING_ADDREF(Worklet)
NS_IMPL_CYCLE_COLLECTING_RELEASE(Worklet)
diff --git a/dom/worklet/Worklet.h b/dom/worklet/Worklet.h
index 5d7627428f43b..8d980a96117e7 100644
--- a/dom/worklet/Worklet.h
+++ b/dom/worklet/Worklet.h
@@ -29,7 +29,7 @@ enum class CallerType : uint32_t;
class Worklet final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(Worklet)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Worklet)
// |aOwnedObject| may be provided by the WorkletImpl as a parent thread
// object to keep alive and traverse for CC as long as the Worklet has
diff --git a/dom/worklet/WorkletGlobalScope.cpp b/dom/worklet/WorkletGlobalScope.cpp
index 221cced44280b..501fb2b1dd1e7 100644
--- a/dom/worklet/WorkletGlobalScope.cpp
+++ b/dom/worklet/WorkletGlobalScope.cpp
@@ -14,7 +14,7 @@
namespace mozilla::dom {
-NS_IMPL_CYCLE_COLLECTION_CLASS(WorkletGlobalScope)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(WorkletGlobalScope)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(WorkletGlobalScope)
NS_IMPL_CYCLE_COLLECTION_UNLINK_PRESERVED_WRAPPER
@@ -27,8 +27,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(WorkletGlobalScope)
tmp->TraverseObjectsInGlobal(cb);
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(WorkletGlobalScope)
-
NS_IMPL_CYCLE_COLLECTING_ADDREF(WorkletGlobalScope)
NS_IMPL_CYCLE_COLLECTING_RELEASE(WorkletGlobalScope)
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(WorkletGlobalScope)
diff --git a/dom/worklet/WorkletGlobalScope.h b/dom/worklet/WorkletGlobalScope.h
index 1e63f2c6707ed..0ff6271596403 100644
--- a/dom/worklet/WorkletGlobalScope.h
+++ b/dom/worklet/WorkletGlobalScope.h
@@ -36,7 +36,7 @@ class WorkletGlobalScope : public nsIGlobalObject, public nsWrapperCache {
NS_DECLARE_STATIC_IID_ACCESSOR(WORKLET_IID)
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(WorkletGlobalScope)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(WorkletGlobalScope)
WorkletGlobalScope(WorkletImpl*);
@@ -73,6 +73,7 @@ class WorkletGlobalScope : public nsIGlobalObject, public nsWrapperCache {
~WorkletGlobalScope();
const RefPtr<WorkletImpl> mImpl;
+
private:
TimeStamp mCreationTimeStamp;
RefPtr<Console> mConsole;
diff --git a/dom/xhr/XMLHttpRequestMainThread.cpp b/dom/xhr/XMLHttpRequestMainThread.cpp
index 625ab05d3f808..3e68ab9e7783c 100644
--- a/dom/xhr/XMLHttpRequestMainThread.cpp
+++ b/dom/xhr/XMLHttpRequestMainThread.cpp
@@ -334,7 +334,7 @@ void XMLHttpRequestMainThread::SetRequestObserver(
mRequestObserver = aObserver;
}
-NS_IMPL_CYCLE_COLLECTION_MULTI_ZONE_JSHOLDER_CLASS(XMLHttpRequestMainThread)
+NS_IMPL_CYCLE_COLLECTION_CLASS(XMLHttpRequestMainThread)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN_INHERITED(XMLHttpRequestMainThread,
XMLHttpRequestEventTarget)
diff --git a/dom/xslt/xpath/XPathResult.cpp b/dom/xslt/xpath/XPathResult.cpp
index f4beff48e7361..f6ffd6d05d490 100644
--- a/dom/xslt/xpath/XPathResult.cpp
+++ b/dom/xslt/xpath/XPathResult.cpp
@@ -44,9 +44,8 @@ XPathResult::XPathResult(const XPathResult& aResult)
XPathResult::~XPathResult() { RemoveObserver(); }
-NS_IMPL_CYCLE_COLLECTION_CLASS(XPathResult)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(XPathResult)
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(XPathResult)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(XPathResult)
NS_IMPL_CYCLE_COLLECTION_UNLINK_PRESERVED_WRAPPER
NS_IMPL_CYCLE_COLLECTION_UNLINK(mParent) { tmp->RemoveObserver(); }
diff --git a/dom/xslt/xpath/XPathResult.h b/dom/xslt/xpath/XPathResult.h
index b5d20ee8a34c9..e073666a847f6 100644
--- a/dom/xslt/xpath/XPathResult.h
+++ b/dom/xslt/xpath/XPathResult.h
@@ -46,7 +46,7 @@ class XPathResult final : public nsStubMutationObserver, public nsWrapperCache {
// nsISupports interface
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(XPathResult)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(XPathResult)
virtual JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/dom/xslt/xslt/txMozillaXSLTProcessor.h b/dom/xslt/xslt/txMozillaXSLTProcessor.h
index 897bc418533be..3dcc41f6616a6 100644
--- a/dom/xslt/xslt/txMozillaXSLTProcessor.h
+++ b/dom/xslt/xslt/txMozillaXSLTProcessor.h
@@ -59,8 +59,8 @@ class txMozillaXSLTProcessor final : public nsIDocumentTransformer,
// nsISupports interface
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS_AMBIGUOUS(txMozillaXSLTProcessor,
- nsIDocumentTransformer)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS_AMBIGUOUS(txMozillaXSLTProcessor,
+ nsIDocumentTransformer)
// nsIDocumentTransformer interface
NS_IMETHOD SetTransformObserver(nsITransformObserver* aObserver) override;
diff --git a/gfx/layers/apz/util/CheckerboardReportService.h b/gfx/layers/apz/util/CheckerboardReportService.h
index 3062255f95bc1..d9b37509c5819 100644
--- a/gfx/layers/apz/util/CheckerboardReportService.h
+++ b/gfx/layers/apz/util/CheckerboardReportService.h
@@ -115,7 +115,7 @@ class CheckerboardReportService : public nsWrapperCache {
nsISupports* GetParentObject();
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(CheckerboardReportService)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(CheckerboardReportService)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(CheckerboardReportService)
public:
/*
diff --git a/intl/l10n/FileSource.h b/intl/l10n/FileSource.h
index d75c996bda744..e719dff74fe57 100644
--- a/intl/l10n/FileSource.h
+++ b/intl/l10n/FileSource.h
@@ -20,7 +20,7 @@ namespace mozilla::intl {
class L10nFileSource : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(L10nFileSource)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(L10nFileSource)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(L10nFileSource)
explicit L10nFileSource(RefPtr<const ffi::FileSource> aRaw,
nsIGlobalObject* aGlobal = nullptr);
diff --git a/intl/l10n/FluentBundle.h b/intl/l10n/FluentBundle.h
index 907c8ce99184a..db4087c70b649 100644
--- a/intl/l10n/FluentBundle.h
+++ b/intl/l10n/FluentBundle.h
@@ -37,7 +37,7 @@ using L10nArgs =
class FluentPattern : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(FluentPattern)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(FluentPattern)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(FluentPattern)
FluentPattern(nsISupports* aParent, const nsACString& aId);
FluentPattern(nsISupports* aParent, const nsACString& aId,
@@ -58,7 +58,7 @@ class FluentPattern : public nsWrapperCache {
class FluentBundle final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(FluentBundle)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(FluentBundle)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(FluentBundle)
FluentBundle(nsISupports* aParent, UniquePtr<ffi::FluentBundleRc> aRaw);
diff --git a/intl/l10n/FluentResource.h b/intl/l10n/FluentResource.h
index 815d74abf02c5..56e7f8198bbdc 100644
--- a/intl/l10n/FluentResource.h
+++ b/intl/l10n/FluentResource.h
@@ -19,7 +19,7 @@ namespace intl {
class FluentResource : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(FluentResource)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(FluentResource)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(FluentResource)
FluentResource(nsISupports* aParent, const ffi::FluentResource* aRaw);
FluentResource(nsISupports* aParent, const nsACString& aSource);
diff --git a/intl/l10n/L10nRegistry.h b/intl/l10n/L10nRegistry.h
index c152009f2d994..91047ec99c91e 100644
--- a/intl/l10n/L10nRegistry.h
+++ b/intl/l10n/L10nRegistry.h
@@ -26,7 +26,7 @@ namespace mozilla::intl {
class FluentBundleAsyncIterator final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(FluentBundleAsyncIterator)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(FluentBundleAsyncIterator)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(FluentBundleAsyncIterator)
FluentBundleAsyncIterator(
nsIGlobalObject* aGlobal,
@@ -49,7 +49,7 @@ class FluentBundleAsyncIterator final : public nsWrapperCache {
class FluentBundleIterator final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(FluentBundleIterator)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(FluentBundleIterator)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(FluentBundleIterator)
FluentBundleIterator(nsIGlobalObject* aGlobal,
UniquePtr<ffi::GeckoFluentBundleIterator> aRaw);
@@ -71,7 +71,7 @@ class FluentBundleIterator final : public nsWrapperCache {
class L10nRegistry final : public nsWrapperCache {
public:
NS_INLINE_DECL_CYCLE_COLLECTING_NATIVE_REFCOUNTING(L10nRegistry)
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_NATIVE_CLASS(L10nRegistry)
+ NS_DECL_CYCLE_COLLECTION_NATIVE_WRAPPERCACHE_CLASS(L10nRegistry)
L10nRegistry(nsIGlobalObject* aGlobal, bool aUseIsolating);
diff --git a/intl/l10n/Localization.h b/intl/l10n/Localization.h
index dc05bff07b5b2..54c78f68dbe77 100644
--- a/intl/l10n/Localization.h
+++ b/intl/l10n/Localization.h
@@ -80,8 +80,8 @@ class Localization : public nsIObserver,
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS_AMBIGUOUS(Localization,
- nsIObserver)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS_AMBIGUOUS(Localization,
+ nsIObserver)
NS_DECL_NSIOBSERVER
static already_AddRefed<Localization> Constructor(
diff --git a/js/loader/ModuleLoadRequest.cpp b/js/loader/ModuleLoadRequest.cpp
index 92aca5048aa00..126f02f39240d 100644
--- a/js/loader/ModuleLoadRequest.cpp
+++ b/js/loader/ModuleLoadRequest.cpp
@@ -23,7 +23,7 @@ namespace JS::loader {
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(ModuleLoadRequest)
NS_INTERFACE_MAP_END_INHERITING(ScriptLoadRequest)
-NS_IMPL_CYCLE_COLLECTION_MULTI_ZONE_JSHOLDER_CLASS(ModuleLoadRequest)
+NS_IMPL_CYCLE_COLLECTION_CLASS(ModuleLoadRequest)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN_INHERITED(ModuleLoadRequest,
ScriptLoadRequest)
diff --git a/js/xpconnect/loader/PrecompiledScript.h b/js/xpconnect/loader/PrecompiledScript.h
index c9073711eba28..f9d3d6e2d24b0 100644
--- a/js/xpconnect/loader/PrecompiledScript.h
+++ b/js/xpconnect/loader/PrecompiledScript.h
@@ -26,7 +26,7 @@ namespace mozilla {
namespace dom {
class PrecompiledScript : public nsISupports, public nsWrapperCache {
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SKIPPABLE_SCRIPT_HOLDER_CLASS(PrecompiledScript)
+ NS_DECL_CYCLE_COLLECTION_SKIPPABLE_WRAPPERCACHE_CLASS(PrecompiledScript)
explicit PrecompiledScript(nsISupports* aParent, RefPtr<JS::Stencil> aStencil,
JS::ReadOnlyCompileOptions& aOptions);
diff --git a/js/xpconnect/src/Sandbox.cpp b/js/xpconnect/src/Sandbox.cpp
index a1b79335fe064..52f1e9b5e6c2e 100644
--- a/js/xpconnect/src/Sandbox.cpp
+++ b/js/xpconnect/src/Sandbox.cpp
@@ -105,7 +105,7 @@ using namespace xpc;
using mozilla::dom::DestroyProtoAndIfaceCache;
using mozilla::dom::IndexedDatabaseManager;
-NS_IMPL_CYCLE_COLLECTION_CLASS(SandboxPrivate)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(SandboxPrivate)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(SandboxPrivate)
NS_IMPL_CYCLE_COLLECTION_UNLINK_PRESERVED_WRAPPER
@@ -120,8 +120,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(SandboxPrivate)
tmp->TraverseObjectsInGlobal(cb);
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(SandboxPrivate)
-
NS_IMPL_CYCLE_COLLECTING_ADDREF(SandboxPrivate)
NS_IMPL_CYCLE_COLLECTING_RELEASE(SandboxPrivate)
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(SandboxPrivate)
diff --git a/js/xpconnect/src/SandboxPrivate.h b/js/xpconnect/src/SandboxPrivate.h
index b685df6882f5d..be5119d70d4ca 100644
--- a/js/xpconnect/src/SandboxPrivate.h
+++ b/js/xpconnect/src/SandboxPrivate.h
@@ -30,8 +30,8 @@ class SandboxPrivate : public nsIGlobalObject,
public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS_AMBIGUOUS(SandboxPrivate,
- nsIGlobalObject)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS_AMBIGUOUS(SandboxPrivate,
+ nsIGlobalObject)
static void Create(nsIPrincipal* principal, JS::Handle<JSObject*> global) {
RefPtr<SandboxPrivate> sbp = new SandboxPrivate(principal);
diff --git a/layout/style/CSSKeyframeRule.cpp b/layout/style/CSSKeyframeRule.cpp
index 67348c343d66e..ac9087e1c5a28 100644
--- a/layout/style/CSSKeyframeRule.cpp
+++ b/layout/style/CSSKeyframeRule.cpp
@@ -25,8 +25,8 @@ class CSSKeyframeDeclaration : public nsDOMCSSDeclaration {
}
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS_AMBIGUOUS(CSSKeyframeDeclaration,
- nsICSSDeclaration)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS_AMBIGUOUS(CSSKeyframeDeclaration,
+ nsICSSDeclaration)
css::Rule* GetParentRule() final { return mRule; }
diff --git a/layout/style/CSSRuleList.h b/layout/style/CSSRuleList.h
index ebf5bec90d2d9..b3802233d03da 100644
--- a/layout/style/CSSRuleList.h
+++ b/layout/style/CSSRuleList.h
@@ -16,7 +16,7 @@ namespace mozilla::dom {
class CSSRuleList : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(CSSRuleList)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(CSSRuleList)
virtual StyleSheet* GetParentObject() = 0;
JSObject* WrapObject(JSContext* aCx, JS::Handle<JSObject*> aGivenProto) final;
diff --git a/layout/style/MediaList.h b/layout/style/MediaList.h
index 674d17485d5d0..046b0b1502fe5 100644
--- a/layout/style/MediaList.h
+++ b/layout/style/MediaList.h
@@ -28,7 +28,7 @@ class Document;
class MediaList final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(MediaList)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(MediaList)
// Needed for CSSOM, but please don't use it outside of that :)
explicit MediaList(already_AddRefed<RawServoMediaList> aRawList)
diff --git a/layout/style/Rule.h b/layout/style/Rule.h
index 4bc84121d55f9..fb24a5eaae9d9 100644
--- a/layout/style/Rule.h
+++ b/layout/style/Rule.h
@@ -55,7 +55,7 @@ class Rule : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SKIPPABLE_SCRIPT_HOLDER_CLASS(Rule)
+ NS_DECL_CYCLE_COLLECTION_SKIPPABLE_WRAPPERCACHE_CLASS(Rule)
// Return true if this rule is known to be a cycle collection leaf, in the
// sense that it doesn't have any outgoing owning edges.
virtual bool IsCCLeaf() const MOZ_MUST_OVERRIDE;
diff --git a/layout/style/StyleSheet.cpp b/layout/style/StyleSheet.cpp
index 7e62ec6c1bd60..df4d81dc08217 100644
--- a/layout/style/StyleSheet.cpp
+++ b/layout/style/StyleSheet.cpp
@@ -248,7 +248,7 @@ NS_IMPL_CYCLE_COLLECTING_ADDREF(StyleSheet)
// away. This situation arises easily with sheet preloading.
NS_IMPL_CYCLE_COLLECTING_RELEASE_WITH_LAST_RELEASE(StyleSheet, LastRelease())
-NS_IMPL_CYCLE_COLLECTION_CLASS(StyleSheet)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(StyleSheet)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(StyleSheet)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mMedia)
@@ -269,8 +269,6 @@ NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(StyleSheet)
NS_IMPL_CYCLE_COLLECTION_UNLINK_PRESERVED_WRAPPER
NS_IMPL_CYCLE_COLLECTION_UNLINK_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(StyleSheet)
-
dom::CSSStyleSheetParsingMode StyleSheet::ParsingModeDOM() {
#define CHECK_MODE(X, Y) \
static_assert( \
diff --git a/layout/style/StyleSheet.h b/layout/style/StyleSheet.h
index d68f1a0cac336..312238d0899ff 100644
--- a/layout/style/StyleSheet.h
+++ b/layout/style/StyleSheet.h
@@ -102,7 +102,7 @@ class StyleSheet final : public nsICSSLoaderObserver, public nsWrapperCache {
ErrorResult&);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(StyleSheet)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(StyleSheet)
already_AddRefed<StyleSheet> CreateEmptyChildSheet(
already_AddRefed<dom::MediaList> aMediaList) const;
diff --git a/layout/style/nsComputedDOMStyle.cpp b/layout/style/nsComputedDOMStyle.cpp
index ecc09f54eacd5..6e2bdcf92238b 100644
--- a/layout/style/nsComputedDOMStyle.cpp
+++ b/layout/style/nsComputedDOMStyle.cpp
@@ -364,7 +364,7 @@ nsComputedDOMStyle::~nsComputedDOMStyle() {
"Should have called ClearComputedStyle() during last release.");
}
-NS_IMPL_CYCLE_COLLECTION_CLASS(nsComputedDOMStyle)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(nsComputedDOMStyle)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(nsComputedDOMStyle)
tmp->ClearComputedStyle(); // remove observer before clearing mElement
@@ -376,8 +376,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(nsComputedDOMStyle)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mElement)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(nsComputedDOMStyle)
-
NS_IMPL_CYCLE_COLLECTION_CAN_SKIP_BEGIN(nsComputedDOMStyle)
return tmp->HasKnownLiveWrapper();
NS_IMPL_CYCLE_COLLECTION_CAN_SKIP_END
diff --git a/layout/style/nsComputedDOMStyle.h b/layout/style/nsComputedDOMStyle.h
index 492326129cbaf..16fe0729c49a0 100644
--- a/layout/style/nsComputedDOMStyle.h
+++ b/layout/style/nsComputedDOMStyle.h
@@ -66,7 +66,7 @@ class nsComputedDOMStyle final : public nsDOMCSSDeclaration,
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SKIPPABLE_SCRIPT_HOLDER_CLASS_AMBIGUOUS(
+ NS_DECL_CYCLE_COLLECTION_SKIPPABLE_WRAPPERCACHE_CLASS_AMBIGUOUS(
nsComputedDOMStyle, nsICSSDeclaration)
NS_DECL_NSIDOMCSSSTYLEDECLARATION_HELPER
diff --git a/layout/style/nsDOMCSSAttrDeclaration.h b/layout/style/nsDOMCSSAttrDeclaration.h
index 1db4e019376ff..15a963342b4dd 100644
--- a/layout/style/nsDOMCSSAttrDeclaration.h
+++ b/layout/style/nsDOMCSSAttrDeclaration.h
@@ -36,7 +36,7 @@ class nsDOMCSSAttributeDeclaration final : public nsDOMCSSDeclaration {
nsDOMCSSAttributeDeclaration(Element* aContent, bool aIsSMILOverride);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SKIPPABLE_SCRIPT_HOLDER_CLASS_AMBIGUOUS(
+ NS_DECL_CYCLE_COLLECTION_SKIPPABLE_WRAPPERCACHE_CLASS_AMBIGUOUS(
nsDOMCSSAttributeDeclaration, nsICSSDeclaration)
mozilla::DeclarationBlock* GetOrCreateCSSDeclaration(
diff --git a/layout/xul/tree/nsTreeColumns.cpp b/layout/xul/tree/nsTreeColumns.cpp
index baf711c9aa82a..77f63f0394194 100644
--- a/layout/xul/tree/nsTreeColumns.cpp
+++ b/layout/xul/tree/nsTreeColumns.cpp
@@ -36,7 +36,7 @@ nsTreeColumn::~nsTreeColumn() {
}
}
-NS_IMPL_CYCLE_COLLECTION_CLASS(nsTreeColumn)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(nsTreeColumn)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(nsTreeColumn)
NS_IMPL_CYCLE_COLLECTION_UNLINK_PRESERVED_WRAPPER
@@ -50,7 +50,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(nsTreeColumn)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mContent)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mNext)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(nsTreeColumn)
NS_IMPL_CYCLE_COLLECTING_ADDREF(nsTreeColumn)
NS_IMPL_CYCLE_COLLECTING_RELEASE(nsTreeColumn)
diff --git a/layout/xul/tree/nsTreeColumns.h b/layout/xul/tree/nsTreeColumns.h
index 2c86fd0428779..9f2d7989db437 100644
--- a/layout/xul/tree/nsTreeColumns.h
+++ b/layout/xul/tree/nsTreeColumns.h
@@ -48,7 +48,7 @@ class nsTreeColumn final : public nsISupports, public nsWrapperCache {
NS_DECLARE_STATIC_IID_ACCESSOR(NS_TREECOLUMN_IMPL_CID)
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(nsTreeColumn)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(nsTreeColumn)
// WebIDL
nsIContent* GetParentObject() const;
@@ -158,7 +158,7 @@ class nsTreeColumns final : public nsISupports, public nsWrapperCache {
explicit nsTreeColumns(nsTreeBodyFrame* aTree);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(nsTreeColumns)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(nsTreeColumns)
nsIContent* GetParentObject() const;
virtual JSObject* WrapObject(JSContext* aCx,
diff --git a/layout/xul/tree/nsTreeContentView.h b/layout/xul/tree/nsTreeContentView.h
index 30716e6922f3c..8138ab44fc32d 100644
--- a/layout/xul/tree/nsTreeContentView.h
+++ b/layout/xul/tree/nsTreeContentView.h
@@ -42,8 +42,8 @@ class nsTreeContentView final : public nsITreeView,
nsTreeContentView(void);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS_AMBIGUOUS(nsTreeContentView,
- nsITreeView)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS_AMBIGUOUS(nsTreeContentView,
+ nsITreeView)
virtual JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/storage/mozStorageAsyncStatementParams.h b/storage/mozStorageAsyncStatementParams.h
index 4c6f97052c87a..c72afc2bc3be5 100644
--- a/storage/mozStorageAsyncStatementParams.h
+++ b/storage/mozStorageAsyncStatementParams.h
@@ -21,7 +21,7 @@ class AsyncStatement;
class AsyncStatementParams final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(AsyncStatementParams)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(AsyncStatementParams)
explicit AsyncStatementParams(nsPIDOMWindowInner* aWindow,
AsyncStatement* aStatement);
diff --git a/storage/mozStorageStatementParams.h b/storage/mozStorageStatementParams.h
index 647e111b42ec5..6164f9854e7ed 100644
--- a/storage/mozStorageStatementParams.h
+++ b/storage/mozStorageStatementParams.h
@@ -21,7 +21,7 @@ class Statement;
class StatementParams final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(StatementParams)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(StatementParams)
explicit StatementParams(nsPIDOMWindowInner* aWindow, Statement* aStatement);
diff --git a/storage/mozStorageStatementRow.h b/storage/mozStorageStatementRow.h
index 02c43749c630d..319645638d658 100644
--- a/storage/mozStorageStatementRow.h
+++ b/storage/mozStorageStatementRow.h
@@ -21,7 +21,7 @@ class Statement;
class StatementRow final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(StatementRow)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(StatementRow)
explicit StatementRow(nsPIDOMWindowInner* aWindow, Statement* aStatement);
diff --git a/toolkit/components/extensions/DocumentObserver.h b/toolkit/components/extensions/DocumentObserver.h
index 3ed2b5c203c73..b9b0dc6f78342 100644
--- a/toolkit/components/extensions/DocumentObserver.h
+++ b/toolkit/components/extensions/DocumentObserver.h
@@ -19,7 +19,7 @@ namespace extensions {
class DocumentObserver final : public nsISupports, public nsWrapperCache {
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(DocumentObserver)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(DocumentObserver)
static already_AddRefed<DocumentObserver> Constructor(
dom::GlobalObject& aGlobal, dom::MozDocumentCallback& aCallbacks);
diff --git a/toolkit/components/extensions/MatchPattern.h b/toolkit/components/extensions/MatchPattern.h
index 1aa28242df826..f0ba13b141e04 100644
--- a/toolkit/components/extensions/MatchPattern.h
+++ b/toolkit/components/extensions/MatchPattern.h
@@ -191,7 +191,7 @@ class MOZ_STACK_CLASS CookieInfo final {
class MatchPattern final : public nsISupports, public nsWrapperCache {
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(MatchPattern)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(MatchPattern)
static already_AddRefed<MatchPattern> Constructor(
dom::GlobalObject& aGlobal, const nsAString& aPattern,
@@ -265,7 +265,7 @@ class MatchPattern final : public nsISupports, public nsWrapperCache {
class MatchPatternSet final : public nsISupports, public nsWrapperCache {
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(MatchPatternSet)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(MatchPatternSet)
using ArrayType = nsTArray<RefPtr<MatchPattern>>;
diff --git a/toolkit/components/extensions/WebExtensionContentScript.h b/toolkit/components/extensions/WebExtensionContentScript.h
index 046d141020e6b..3205be1292bd3 100644
--- a/toolkit/components/extensions/WebExtensionContentScript.h
+++ b/toolkit/components/extensions/WebExtensionContentScript.h
@@ -104,7 +104,7 @@ class MOZ_STACK_CLASS DocInfo final {
class MozDocumentMatcher : public nsISupports, public nsWrapperCache {
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(MozDocumentMatcher)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(MozDocumentMatcher)
using MatchGlobArray = nsTArray<RefPtr<MatchGlob>>;
diff --git a/toolkit/components/extensions/WebExtensionPolicy.h b/toolkit/components/extensions/WebExtensionPolicy.h
index bb34d048614be..07cbd0d03c380 100644
--- a/toolkit/components/extensions/WebExtensionPolicy.h
+++ b/toolkit/components/extensions/WebExtensionPolicy.h
@@ -67,7 +67,7 @@ class WebExtensionPolicy final : public nsISupports,
public SupportsWeakPtr {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(WebExtensionPolicy)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(WebExtensionPolicy)
using ScriptArray = nsTArray<RefPtr<WebExtensionContentScript>>;
diff --git a/toolkit/components/extensions/webidl-api/ExtensionAlarms.h b/toolkit/components/extensions/webidl-api/ExtensionAlarms.h
index f0efd734417ed..19681a5706312 100644
--- a/toolkit/components/extensions/webidl-api/ExtensionAlarms.h
+++ b/toolkit/components/extensions/webidl-api/ExtensionAlarms.h
@@ -60,7 +60,7 @@ class ExtensionAlarms final : public nsISupports,
ExtensionEventManager* OnAlarm();
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(ExtensionAlarms)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(ExtensionAlarms)
};
} // namespace extensions
diff --git a/toolkit/components/extensions/webidl-api/ExtensionMockAPI.h b/toolkit/components/extensions/webidl-api/ExtensionMockAPI.h
index cb138ffe40cd6..c203c2755a1a1 100644
--- a/toolkit/components/extensions/webidl-api/ExtensionMockAPI.h
+++ b/toolkit/components/extensions/webidl-api/ExtensionMockAPI.h
@@ -68,7 +68,7 @@ class ExtensionMockAPI final : public nsISupports,
ExtensionEventManager* OnTestEvent();
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(ExtensionMockAPI)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(ExtensionMockAPI)
};
} // namespace extensions
diff --git a/toolkit/components/extensions/webidl-api/ExtensionPort.cpp b/toolkit/components/extensions/webidl-api/ExtensionPort.cpp
index ebefd5fc77a34..481e15387c0ef 100644
--- a/toolkit/components/extensions/webidl-api/ExtensionPort.cpp
+++ b/toolkit/components/extensions/webidl-api/ExtensionPort.cpp
@@ -17,7 +17,7 @@ namespace extensions {
NS_IMPL_CYCLE_COLLECTING_ADDREF(ExtensionPort);
NS_IMPL_CYCLE_COLLECTING_RELEASE(ExtensionPort)
-NS_IMPL_CYCLE_COLLECTION_CLASS(ExtensionPort)
+NS_IMPL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(ExtensionPort)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(ExtensionPort)
// Clean the entry for this instance from the ports lookup map
@@ -34,8 +34,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN(ExtensionPort)
mOnMessageEventMgr)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_WRAPPERCACHE(ExtensionPort)
-
NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(ExtensionPort)
NS_WRAPPERCACHE_INTERFACE_MAP_ENTRY
NS_INTERFACE_MAP_ENTRY(nsISupports)
diff --git a/toolkit/components/extensions/webidl-api/ExtensionPort.h b/toolkit/components/extensions/webidl-api/ExtensionPort.h
index d50ad6a8b1f10..251c4b9aaabd3 100644
--- a/toolkit/components/extensions/webidl-api/ExtensionPort.h
+++ b/toolkit/components/extensions/webidl-api/ExtensionPort.h
@@ -84,7 +84,7 @@ class ExtensionPort final : public nsISupports,
};
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(ExtensionPort)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(ExtensionPort)
};
} // namespace extensions
diff --git a/toolkit/components/extensions/webidl-api/ExtensionRuntime.h b/toolkit/components/extensions/webidl-api/ExtensionRuntime.h
index ef668c5ea3e11..b38947317bb3c 100644
--- a/toolkit/components/extensions/webidl-api/ExtensionRuntime.h
+++ b/toolkit/components/extensions/webidl-api/ExtensionRuntime.h
@@ -75,7 +75,7 @@ class ExtensionRuntime final : public nsISupports,
void GetId(DOMString& aRetval);
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(ExtensionRuntime)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(ExtensionRuntime)
};
} // namespace extensions
diff --git a/toolkit/components/extensions/webidl-api/ExtensionTest.h b/toolkit/components/extensions/webidl-api/ExtensionTest.h
index aed0d6ff0a6bf..917ed2603be14 100644
--- a/toolkit/components/extensions/webidl-api/ExtensionTest.h
+++ b/toolkit/components/extensions/webidl-api/ExtensionTest.h
@@ -92,7 +92,7 @@ class ExtensionTest final : public nsISupports,
ExtensionEventManager* OnMessage();
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(ExtensionTest)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(ExtensionTest)
};
} // namespace extensions
diff --git a/toolkit/components/extensions/webrequest/ChannelWrapper.cpp b/toolkit/components/extensions/webrequest/ChannelWrapper.cpp
index 2bddf9eea521f..61d795ada0cba 100644
--- a/toolkit/components/extensions/webrequest/ChannelWrapper.cpp
+++ b/toolkit/components/extensions/webrequest/ChannelWrapper.cpp
@@ -1240,10 +1240,6 @@ NS_IMPL_CYCLE_COLLECTION_TRAVERSE_BEGIN_INHERITED(ChannelWrapper,
NS_IMPL_CYCLE_COLLECTION_TRAVERSE(mStub)
NS_IMPL_CYCLE_COLLECTION_TRAVERSE_END
-NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN_INHERITED(ChannelWrapper,
- DOMEventTargetHelper)
-NS_IMPL_CYCLE_COLLECTION_TRACE_END
-
NS_IMPL_ADDREF_INHERITED(ChannelWrapper, DOMEventTargetHelper)
NS_IMPL_RELEASE_INHERITED(ChannelWrapper, DOMEventTargetHelper)
diff --git a/toolkit/components/extensions/webrequest/ChannelWrapper.h b/toolkit/components/extensions/webrequest/ChannelWrapper.h
index c39dc076f3656..235ee54d64495 100644
--- a/toolkit/components/extensions/webrequest/ChannelWrapper.h
+++ b/toolkit/components/extensions/webrequest/ChannelWrapper.h
@@ -116,8 +116,7 @@ class ChannelWrapper final : public DOMEventTargetHelper,
private detail::ChannelHolder {
public:
NS_DECL_ISUPPORTS_INHERITED
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS_INHERITED(ChannelWrapper,
- DOMEventTargetHelper)
+ NS_DECL_CYCLE_COLLECTION_CLASS_INHERITED(ChannelWrapper, DOMEventTargetHelper)
NS_DECLARE_STATIC_IID_ACCESSOR(NS_CHANNELWRAPPER_IID)
diff --git a/toolkit/components/glean/bindings/Category.h b/toolkit/components/glean/bindings/Category.h
index 55c7e2d30be2b..47cdef4a1a9d0 100644
--- a/toolkit/components/glean/bindings/Category.h
+++ b/toolkit/components/glean/bindings/Category.h
@@ -17,7 +17,7 @@ namespace mozilla::glean {
class Category final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(Category)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Category)
JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/toolkit/components/glean/bindings/Glean.h b/toolkit/components/glean/bindings/Glean.h
index 83e0fa9edac15..54d300d682f35 100644
--- a/toolkit/components/glean/bindings/Glean.h
+++ b/toolkit/components/glean/bindings/Glean.h
@@ -19,7 +19,7 @@ class Category;
class Glean final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(Glean)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(Glean)
JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/toolkit/components/glean/bindings/GleanPings.h b/toolkit/components/glean/bindings/GleanPings.h
index 55eb1c4c9b860..2dd1ff4b83c32 100644
--- a/toolkit/components/glean/bindings/GleanPings.h
+++ b/toolkit/components/glean/bindings/GleanPings.h
@@ -17,7 +17,7 @@ namespace mozilla::glean {
class GleanPings final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(GleanPings)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(GleanPings)
JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/toolkit/components/glean/bindings/private/Labeled.h b/toolkit/components/glean/bindings/private/Labeled.h
index 474c9978a21e7..be46b3b56eab0 100644
--- a/toolkit/components/glean/bindings/private/Labeled.h
+++ b/toolkit/components/glean/bindings/private/Labeled.h
@@ -49,7 +49,7 @@ class Labeled {
class GleanLabeled final : public nsISupports, public nsWrapperCache {
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(GleanLabeled)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(GleanLabeled)
JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/toolkit/components/sessionstore/SessionStoreFormData.h b/toolkit/components/sessionstore/SessionStoreFormData.h
index 029130a999fd6..fd9f925fcc8db 100644
--- a/toolkit/components/sessionstore/SessionStoreFormData.h
+++ b/toolkit/components/sessionstore/SessionStoreFormData.h
@@ -36,7 +36,7 @@ class SessionStoreFormData final : public nsISupports,
using ChildrenArray = nsTArray<RefPtr<SessionStoreFormData>>;
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(SessionStoreFormData)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(SessionStoreFormData)
nsISupports* GetParentObject() const;
JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/toolkit/components/sessionstore/SessionStoreScrollData.h b/toolkit/components/sessionstore/SessionStoreScrollData.h
index fbdf82954d665..22dd7e19e5aad 100644
--- a/toolkit/components/sessionstore/SessionStoreScrollData.h
+++ b/toolkit/components/sessionstore/SessionStoreScrollData.h
@@ -28,7 +28,7 @@ class SessionStoreScrollData final : public nsISupports,
using ChildrenArray = nsTArray<RefPtr<SessionStoreScrollData>>;
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
- NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS(SessionStoreScrollData)
+ NS_DECL_CYCLE_COLLECTION_WRAPPERCACHE_CLASS(SessionStoreScrollData)
nsISupports* GetParentObject() const;
JSObject* WrapObject(JSContext* aCx,
JS::Handle<JSObject*> aGivenProto) override;
diff --git a/xpcom/base/CycleCollectedJSRuntime.cpp b/xpcom/base/CycleCollectedJSRuntime.cpp
index 5f9318fbd082b..d21fd2152429b 100644
--- a/xpcom/base/CycleCollectedJSRuntime.cpp
+++ b/xpcom/base/CycleCollectedJSRuntime.cpp
@@ -604,7 +604,7 @@ void JSHolderMap::Put(void* aHolder, nsScriptObjectTracer* aTracer,
MOZ_ASSERT(aTracer);
// Don't associate multi-zone holders with a zone, even if one is supplied.
- if (aTracer->IsMultiZoneJSHolder()) {
+ if (!aTracer->IsSingleZoneJSHolder()) {
aZone = nullptr;
}
@@ -1317,14 +1317,8 @@ struct CheckZoneTracer : public TraceCallbacks {
// Additionally, pointers from any holder into the atoms zone are allowed
// since all holders are traced when we collect the atoms zone.
//
- // If you added a holder that has pointers into multiple zones please try to
- // remedy this. Some options are:
- //
- // - wrap all JS GC things into the same compartment
- // - split GC thing pointers between separate cycle collected objects
- //
- // If all else fails, flag the class as containing pointers into multiple
- // zones by using NS_IMPL_CYCLE_COLLECTION_MULTI_ZONE_JSHOLDER_CLASS.
+ // If you added a holder that has pointers into multiple zones do not
+ // use NS_IMPL_CYCLE_COLLECTION_SINGLE_ZONE_SCRIPT_HOLDER_CLASS.
MOZ_CRASH_UNSAFE_PRINTF(
"JS holder %s contains pointers to GC things in more than one zone ("
"found in %s)\n",
@@ -1453,7 +1447,7 @@ bool CycleCollectedJSRuntime::TraceJSHolders(JSTracer* aTracer,
nsScriptObjectTracer* tracer = aIter->mTracer;
#ifdef CHECK_SINGLE_ZONE_JS_HOLDERS
- if (checkSingleZoneHolders && !tracer->IsMultiZoneJSHolder()) {
+ if (checkSingleZoneHolders && tracer->IsSingleZoneJSHolder()) {
CheckHolderIsSingleZone(holder, tracer, aIter.Zone());
}
#else
diff --git a/xpcom/base/nsCycleCollectionParticipant.h b/xpcom/base/nsCycleCollectionParticipant.h
index fc813e5fcd2cd..1dcafb470de33 100644
--- a/xpcom/base/nsCycleCollectionParticipant.h
+++ b/xpcom/base/nsCycleCollectionParticipant.h
@@ -206,9 +206,14 @@ class NS_NO_VTABLE nsCycleCollectionParticipant {
using Flags = uint8_t;
static constexpr Flags FlagMightSkip = 1u << 0;
static constexpr Flags FlagTraverseShouldTrace = 1u << 1;
- static constexpr Flags FlagMultiZoneJSHolder = 1u << 2;
- static constexpr Flags AllFlags =
- FlagMightSkip | FlagTraverseShouldTrace | FlagMultiZoneJSHolder;
+ // The object is a single zone js holder if FlagMaybeSingleZoneJSHolder is set
+ // and FlagMultiZoneJSHolder isn't set. This setup is needed so that
+ // inheriting classes can unset single zone behavior.
+ static constexpr Flags FlagMaybeSingleZoneJSHolder = 1u << 2;
+ static constexpr Flags FlagMultiZoneJSHolder = 1u << 3;
+ static constexpr Flags AllFlags = FlagMightSkip | FlagTraverseShouldTrace |
+ FlagMaybeSingleZoneJSHolder |
+ FlagMultiZoneJSHolder;
constexpr explicit nsCycleCollectionParticipant(Flags aFlags)
: mFlags(aFlags) {
@@ -309,7 +314,10 @@ class NS_NO_VTABLE nsCycleCollectionParticipant {
NS_IMETHOD_(void) DeleteCycleCollectable(void* aPtr) = 0;
- bool IsMultiZoneJSHolder() const { return mFlags & FlagMultiZoneJSHolder; }
+ bool IsSingleZoneJSHolder() const {
+ return (mFlags & FlagMaybeSingleZoneJSHolder) &&
+ !(mFlags & FlagMultiZoneJSHolder);
+ }
protected:
NS_IMETHOD_(bool) CanSkipReal(void* aPtr, bool aRemovingAllowed) {
@@ -782,7 +790,8 @@ T* DowncastCCParticipant(void* aPtr) {
: public NS_CYCLE_COLLECTION_CLASSNAME(_base_class) { \
public: \
constexpr explicit NS_CYCLE_COLLECTION_INNERCLASS( \
- Flags aFlags = FlagMightSkip) /* We always want skippability. */ \
+ Flags aFlags = FlagMightSkip | /* We always want skippability. */ \
+ FlagMultiZoneJSHolder) \
: NS_CYCLE_COLLECTION_CLASSNAME(_base_class)(aFlags | FlagMightSkip) { \
} \
\
@@ -826,21 +835,22 @@ T* DowncastCCParticipant(void* aPtr) {
NS_CHECK_FOR_RIGHT_PARTICIPANT_IMPL_INHERITED(_class) \
static NS_CYCLE_COLLECTION_INNERCLASS NS_CYCLE_COLLECTION_INNERNAME;
-#define NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS_INHERITED(_class, \
- _base_class) \
- class NS_CYCLE_COLLECTION_INNERCLASS \
- : public NS_CYCLE_COLLECTION_CLASSNAME(_base_class) { \
- public: \
- constexpr explicit NS_CYCLE_COLLECTION_INNERCLASS(Flags aFlags = 0) \
- : NS_CYCLE_COLLECTION_CLASSNAME(_base_class)(aFlags) {} \
- \
- private: \
- NS_DECL_CYCLE_COLLECTION_CLASS_INHERITED_BODY(_class, _base_class) \
- NS_IMETHOD_(void) \
- Trace(void* p, const TraceCallbacks& cb, void* closure) override; \
- NS_IMPL_GET_XPCOM_CYCLE_COLLECTION_PARTICIPANT(_class) \
- }; \
- NS_CHECK_FOR_RIGHT_PARTICIPANT_IMPL_INHERITED(_class) \
+#define NS_DECL_CYCLE_COLLECTION_SCRIPT_HOLDER_CLASS_INHERITED(_class, \
+ _base_class) \
+ class NS_CYCLE_COLLECTION_INNERCLASS \
+ : public NS_CYCLE_COLLECTION_CLASSNAME(_base_class) { \
+ public: \
+ constexpr explicit NS_CYCLE_COLLECTION_INNERCLASS(Flags aFlags = 0) \
+ : NS_CYCLE_COLLECTION_CLASSNAME(_base_class)(aFlags | \
+ FlagMultiZoneJSHolder) {} \
+ \
+ private: \
+ NS_DECL_CYCLE_COLLECTION_CLASS_INHERITED_BODY(_class, _base_class) \
+ NS_IMETHOD_(void) \
+ Trace(void* p, const TraceCallbacks& cb, void* closure) override; \
+ NS_IMPL_GET_XPCOM_CYCLE_COLLECTION_PARTICIPANT(_class) \
+ }; \
+ NS_CHECK_FOR_RIGHT_PARTICIPANT_IMPL_INHERITED(_class) \
static NS_CYCLE_COLLECTION_INNERCLASS NS_CYCLE_COLLECTION_INNERNAME;
// Cycle collector participant declarations.
@@ -947,13 +957,12 @@ T* DowncastCCParticipant(void* aPtr) {
#define NS_IMPL_CYCLE_COLLECTION_CLASS(_class) \
_class::NS_CYCLE_COLLECTION_INNERCLASS _class::NS_CYCLE_COLLECTION_INNERNAME;
-// Most JS holder classes should only contain pointers to JS GC things in a
-// single JS zone (excluding pointers into the atoms zone), but there are some
-// exceptions. Such classes should use this macro to tell the system about this.
-#define NS_IMPL_CYCLE_COLLECTION_MULTI_ZONE_JSHOLDER_CLASS(_class) \
- _class::NS_CYCLE_COLLECTION_INNERCLASS \
- _class::NS_CYCLE_COLLECTION_INNERNAME( \
- nsCycleCollectionParticipant::FlagMultiZoneJSHolder);
+// By default JS holders are treated as if they may store pointers to multiple
+// zones, but one may optimize GC handling by using single zone holders.
+#define NS_IMPL_CYCLE_COLLECTION_SINGLE_ZONE_SCRIPT_HOLDER_CLASS(_class) \
+ _class::NS_CYCLE_COLLECTION_INNERCLASS \
+ _class::NS_CYCLE_COLLECTION_INNERNAME( \
+ nsCycleCollectionParticipant::FlagMaybeSingleZoneJSHolder);
// NB: This is not something you usually want to use. It is here to allow
// adding things to the CC graph to help debugging via CC logs, but it does not
@@ -1048,6 +1057,7 @@ inline void ImplCycleCollectionUnlink(JS::Heap<T*>& aField) {
}
#define NS_IMPL_CYCLE_COLLECTION_TRACE_JS_MEMBERS(...) \
+ MOZ_ASSERT(!IsSingleZoneJSHolder()); \
MOZ_FOR_EACH(NS_IMPL_CYCLE_COLLECTION_TRACE_JS_MEMBER_CALLBACK, (), \
(__VA_ARGS__))
diff --git a/xpcom/base/nsCycleCollector.cpp b/xpcom/base/nsCycleCollector.cpp
index 980b7d42addc5..b79e93cb4b892 100644
--- a/xpcom/base/nsCycleCollector.cpp
+++ b/xpcom/base/nsCycleCollector.cpp
@@ -2350,7 +2350,7 @@ class JSPurpleBuffer {
SegmentedVector<JSObject*, kSegmentSize, InfallibleAllocPolicy> mObjects;
};
-NS_IMPL_CYCLE_COLLECTION_MULTI_ZONE_JSHOLDER_CLASS(JSPurpleBuffer)
+NS_IMPL_CYCLE_COLLECTION_CLASS(JSPurpleBuffer)
NS_IMPL_CYCLE_COLLECTION_UNLINK_BEGIN(JSPurpleBuffer)
tmp->Destroy();
diff --git a/xpcom/tests/gtest/TestJSHolderMap.cpp b/xpcom/tests/gtest/TestJSHolderMap.cpp
index 247a63d3b700d..20e99b05eeaf2 100644
--- a/xpcom/tests/gtest/TestJSHolderMap.cpp
+++ b/xpcom/tests/gtest/TestJSHolderMap.cpp
@@ -43,7 +43,8 @@ class MyHolder final : public nsScriptObjectTracer {
private:
Flags FlagsForKind(HolderKind kind) {
- return kind == MultiZone ? FlagMultiZoneJSHolder : 0;
+ return kind == MultiZone ? FlagMultiZoneJSHolder
+ : FlagMaybeSingleZoneJSHolder;
}
};
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the tbb-commits
mailing list