Bug 758992 - Make the classes which use the XPCOM nsISupports implementation macros final, to avoid the warning about deleting using a pointer to a base class with virtual functions and no virtual dtor (content parts); r=bzbarsky

--HG--
extra : rebase_source : e25a064995914ca4f7b1db16b5725eb440d3e531
This commit is contained in:
Ehsan Akhgari 2012-06-18 22:30:09 -04:00
parent 23d36f7d2c
commit 2050b687cc
97 changed files with 259 additions and 164 deletions

View File

@ -9,12 +9,13 @@
#include "nsString.h"
#include "mozIThirdPartyUtil.h"
#include "nsIEffectiveTLDService.h"
#include "mozilla/Attributes.h"
class nsIURI;
class nsIChannel;
class nsIDOMWindow;
class ThirdPartyUtil : public mozIThirdPartyUtil
class ThirdPartyUtil MOZ_FINAL : public mozIThirdPartyUtil
{
public:
NS_DECL_ISUPPORTS

View File

@ -5,10 +5,11 @@
#include "nsIObserver.h"
#include "nsCycleCollectionParticipant.h"
#include "mozilla/Attributes.h"
struct JSTracer;
class nsCCUncollectableMarker : public nsIObserver
class nsCCUncollectableMarker MOZ_FINAL : public nsIObserver
{
NS_DECL_ISUPPORTS
NS_DECL_NSIOBSERVER

View File

@ -181,6 +181,7 @@ static NS_DEFINE_CID(kXTFServiceCID, NS_XTFSERVICE_CID);
#include "nsICharsetDetector.h"
#include "nsICharsetDetectionObserver.h"
#include "nsIPlatformCharset.h"
#include "mozilla/Attributes.h"
extern "C" int MOZ_XMLTranslateEntity(const char* ptr, const char* end,
const char** next, PRUnichar* result);
@ -307,15 +308,15 @@ EventListenerManagerHashClearEntry(PLDHashTable *table, PLDHashEntryHdr *entry)
lm->~EventListenerManagerMapEntry();
}
class SameOriginChecker : public nsIChannelEventSink,
public nsIInterfaceRequestor
class SameOriginChecker MOZ_FINAL : public nsIChannelEventSink,
public nsIInterfaceRequestor
{
NS_DECL_ISUPPORTS
NS_DECL_NSICHANNELEVENTSINK
NS_DECL_NSIINTERFACEREQUESTOR
};
class CharsetDetectionObserver : public nsICharsetDetectionObserver
class CharsetDetectionObserver MOZ_FINAL : public nsICharsetDetectionObserver
{
public:
NS_DECL_ISUPPORTS

View File

@ -809,9 +809,9 @@ nsCORSListenerProxy::UpdateChannel(nsIChannel* aChannel, bool aAllowDataURI)
// Class used as streamlistener and notification callback when
// doing the initial OPTIONS request for a CORS check
class nsCORSPreflightListener : public nsIStreamListener,
public nsIInterfaceRequestor,
public nsIChannelEventSink
class nsCORSPreflightListener MOZ_FINAL : public nsIStreamListener,
public nsIInterfaceRequestor,
public nsIChannelEventSink
{
public:
nsCORSPreflightListener(nsIChannel* aOuterChannel,

View File

@ -15,6 +15,7 @@
#include "nsIInterfaceRequestor.h"
#include "nsIChannelEventSink.h"
#include "nsIAsyncVerifyRedirectCallback.h"
#include "mozilla/Attributes.h"
class nsIURI;
class nsIParser;
@ -31,10 +32,10 @@ NS_StartCORSPreflight(nsIChannel* aRequestChannel,
nsTArray<nsCString>& aACUnsafeHeaders,
nsIChannel** aPreflightChannel);
class nsCORSListenerProxy : public nsIStreamListener,
public nsIInterfaceRequestor,
public nsIChannelEventSink,
public nsIAsyncVerifyRedirectCallback
class nsCORSListenerProxy MOZ_FINAL : public nsIStreamListener,
public nsIInterfaceRequestor,
public nsIChannelEventSink,
public nsIAsyncVerifyRedirectCallback
{
public:
nsCORSListenerProxy(nsIStreamListener* aOuter,

View File

@ -9,6 +9,7 @@
#include "nsDOMFile.h"
#include "mozilla/CheckedInt.h"
#include "mozilla/Attributes.h"
using namespace mozilla;
@ -141,8 +142,8 @@ protected:
PRUint64 mDataBufferLen;
};
class nsDOMBlobBuilder : public nsIDOMMozBlobBuilder,
public nsIJSNativeInitializer
class nsDOMBlobBuilder MOZ_FINAL : public nsIDOMMozBlobBuilder,
public nsIJSNativeInitializer
{
public:
nsDOMBlobBuilder()

View File

@ -31,6 +31,7 @@
#include "nsJSUtils.h"
#include "mozilla/CheckedInt.h"
#include "mozilla/Preferences.h"
#include "mozilla/Attributes.h"
#include "plbase64.h"
#include "prmem.h"
@ -44,8 +45,8 @@ using namespace mozilla::dom;
// ensure that the buffer underlying the stream we get
// from NS_NewByteInputStream is held alive as long as the
// stream is. We do that by passing back this class instead.
class DataOwnerAdapter : public nsIInputStream,
public nsISeekableStream
class DataOwnerAdapter MOZ_FINAL : public nsIInputStream,
public nsISeekableStream
{
typedef nsDOMMemoryFile::DataOwner DataOwner;
public:

View File

@ -44,7 +44,7 @@ public:
}
protected:
~nsDOMTokenList();
virtual ~nsDOMTokenList();
nsresult CheckToken(const nsAString& aStr);
void AddInternal(const nsAttrValue* aAttr, const nsAString& aToken);

View File

@ -20,8 +20,9 @@
#include "nsIContentPolicy.h"
#include "mozilla/Attributes.h"
class nsDataDocumentContentPolicy : public nsIContentPolicy
class nsDataDocumentContentPolicy MOZ_FINAL : public nsIContentPolicy
{
public:
NS_DECL_ISUPPORTS

View File

@ -1169,8 +1169,7 @@ nsExternalResourceMap::ExternalResource::~ExternalResource()
// If we ever have an nsIDocumentObserver notification for stylesheet title
// changes, we could make this inherit from nsDOMStringList instead of
// reimplementing nsIDOMDOMStringList.
class nsDOMStyleSheetSetList : public nsIDOMDOMStringList
class nsDOMStyleSheetSetList MOZ_FINAL : public nsIDOMDOMStringList
{
public:
NS_DECL_ISUPPORTS
@ -7687,7 +7686,7 @@ namespace {
* Stub for LoadSheet(), since all we want is to get the sheet into
* the CSSLoader's style cache
*/
class StubCSSLoaderObserver : public nsICSSLoaderObserver {
class StubCSSLoaderObserver MOZ_FINAL : public nsICSSLoaderObserver {
public:
NS_IMETHOD
StyleSheetLoaded(nsCSSStyleSheet*, bool, nsresult)

View File

@ -68,6 +68,7 @@
#include "nsIInlineEventHandlers.h"
#include "nsDataHashtable.h"
#include "mozilla/TimeStamp.h"
#include "mozilla/Attributes.h"
#define XML_DECLARATION_BITS_DECLARATION_EXISTS (1 << 0)
#define XML_DECLARATION_BITS_ENCODING_EXISTS (1 << 1)
@ -286,7 +287,7 @@ protected:
nsIDocument* mDocument;
};
class nsOnloadBlocker : public nsIRequest
class nsOnloadBlocker MOZ_FINAL : public nsIRequest
{
public:
nsOnloadBlocker() {}
@ -388,7 +389,7 @@ protected:
};
friend class PendingLoad;
class LoadgroupCallbacks : public nsIInterfaceRequestor
class LoadgroupCallbacks MOZ_FINAL : public nsIInterfaceRequestor
{
public:
LoadgroupCallbacks(nsIInterfaceRequestor* aOtherCallbacks)
@ -409,8 +410,8 @@ protected:
// XXXbz I wish we could just derive the _allcaps thing from _i
#define DECL_SHIM(_i, _allcaps) \
class _i##Shim : public nsIInterfaceRequestor, \
public _i \
class _i##Shim MOZ_FINAL : public nsIInterfaceRequestor, \
public _i \
{ \
public: \
_i##Shim(nsIInterfaceRequestor* aIfreq, _i* aRealPtr) \

View File

@ -31,6 +31,7 @@
#include "nsCrossSiteListenerProxy.h"
#include "nsWrapperCacheInlines.h"
#include "nsDOMEventTargetHelper.h"
#include "mozilla/Attributes.h"
using namespace mozilla;
@ -638,7 +639,7 @@ nsEventSource::OnStopRequest(nsIRequest *aRequest,
* Simple helper class that just forwards the redirect callback back
* to the nsEventSource.
*/
class AsyncVerifyRedirectCallbackFwr : public nsIAsyncVerifyRedirectCallback
class AsyncVerifyRedirectCallbackFwr MOZ_FINAL : public nsIAsyncVerifyRedirectCallback
{
public:
AsyncVerifyRedirectCallbackFwr(nsEventSource* aEventsource)

View File

@ -21,6 +21,7 @@
#include "nsFrameMessageManager.h"
#include "Layers.h"
#include "mozilla/dom/Element.h"
#include "mozilla/Attributes.h"
class nsIURI;
class nsSubDocumentFrame;
@ -56,7 +57,7 @@ class QX11EmbedContainer;
* Used to support asynchronous re-paints of content pixels; see
* nsIContentView.
*/
class nsContentView : public nsIContentView
class nsContentView MOZ_FINAL : public nsIContentView
{
public:
typedef mozilla::layers::FrameMetrics::ViewID ViewID;
@ -133,8 +134,8 @@ private:
};
class nsFrameLoader : public nsIFrameLoader,
public nsIContentViewManager
class nsFrameLoader MOZ_FINAL : public nsIFrameLoader,
public nsIContentViewManager
{
friend class AutoResetInShow;
typedef mozilla::dom::PBrowserParent PBrowserParent;

View File

@ -20,6 +20,7 @@
#include "mozilla/Services.h"
#include "nsIObserverService.h"
#include "nsThreadUtils.h"
#include "mozilla/Attributes.h"
namespace mozilla {
namespace dom {
@ -46,8 +47,8 @@ typedef bool (*nsAsyncMessageCallback)(void* aCallbackData,
const nsAString& aMessage,
const nsAString& aJSON);
class nsFrameMessageManager : public nsIContentFrameMessageManager,
public nsIChromeFrameMessageManager
class nsFrameMessageManager MOZ_FINAL : public nsIContentFrameMessageManager,
public nsIChromeFrameMessageManager
{
public:
nsFrameMessageManager(bool aChrome,
@ -236,7 +237,7 @@ public:
nsFrameScriptExecutor* mExec;
};
class nsScriptCacheCleaner : public nsIObserver
class nsScriptCacheCleaner MOZ_FINAL : public nsIObserver
{
NS_DECL_ISUPPORTS

View File

@ -34,6 +34,7 @@
#include "nsIDOMTouchEvent.h"
#include "nsIInlineEventHandlers.h"
#include "mozilla/CORSMode.h"
#include "mozilla/Attributes.h"
#include "nsISMILAttr.h"
@ -62,7 +63,7 @@ typedef PRUptrdiff PtrBits;
* and Item to its existing child list.
* @see nsIDOMNodeList
*/
class nsChildContentList : public nsINodeList
class nsChildContentList MOZ_FINAL : public nsINodeList
{
public:
nsChildContentList(nsINode* aNode)
@ -126,7 +127,7 @@ private:
* A class that implements nsIWeakReference
*/
class nsNodeWeakReference : public nsIWeakReference
class nsNodeWeakReference MOZ_FINAL : public nsIWeakReference
{
public:
nsNodeWeakReference(nsINode* aNode)
@ -154,7 +155,7 @@ private:
/**
* Tearoff to use for nodes to implement nsISupportsWeakReference
*/
class nsNodeSupportsWeakRefTearoff : public nsISupportsWeakReference
class nsNodeSupportsWeakRefTearoff MOZ_FINAL : public nsISupportsWeakReference
{
public:
nsNodeSupportsWeakRefTearoff(nsINode* aNode)
@ -177,7 +178,7 @@ private:
/**
* A tearoff class for nsGenericElement to implement NodeSelector
*/
class nsNodeSelectorTearoff : public nsIDOMNodeSelector
class nsNodeSelectorTearoff MOZ_FINAL : public nsIDOMNodeSelector
{
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
@ -1038,7 +1039,7 @@ _elementName::Clone(nsINodeInfo *aNodeInfo, nsINode **aResult) const \
/**
* Tearoff class to implement nsITouchEventReceiver
*/
class nsTouchEventReceiverTearoff : public nsITouchEventReceiver
class nsTouchEventReceiverTearoff MOZ_FINAL : public nsITouchEventReceiver
{
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
@ -1058,7 +1059,7 @@ private:
/**
* Tearoff class to implement nsIInlineEventHandlers
*/
class nsInlineEventHandlersTearoff : public nsIInlineEventHandlers
class nsInlineEventHandlersTearoff MOZ_FINAL : public nsIInlineEventHandlers
{
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS

View File

@ -14,12 +14,13 @@
#include "nsAttrAndChildArray.h"
#include "nsMappedAttributeElement.h"
#include "nsIStyleRule.h"
#include "mozilla/Attributes.h"
class nsIAtom;
class nsHTMLStyleSheet;
class nsRuleWalker;
class nsMappedAttributes : public nsIStyleRule
class nsMappedAttributes MOZ_FINAL : public nsIStyleRule
{
public:
nsMappedAttributes(nsHTMLStyleSheet* aSheet,

View File

@ -20,8 +20,9 @@
#include "nsIContentPolicy.h"
#include "mozilla/Attributes.h"
class nsNoDataProtocolContentPolicy : public nsIContentPolicy
class nsNoDataProtocolContentPolicy MOZ_FINAL : public nsIContentPolicy
{
public:
NS_DECL_ISUPPORTS

View File

@ -45,6 +45,7 @@
#include "mozilla/FunctionTimer.h"
#include "mozilla/CORSMode.h"
#include "mozilla/Attributes.h"
#ifdef PR_LOGGING
static PRLogModuleInfo* gCspPRLog;
@ -57,7 +58,7 @@ using namespace mozilla::dom;
// Per-request data structure
//////////////////////////////////////////////////////////////
class nsScriptLoadRequest : public nsISupports {
class nsScriptLoadRequest MOZ_FINAL : public nsISupports {
public:
nsScriptLoadRequest(nsIScriptElement* aElement,
PRUint32 aVersion,

View File

@ -76,6 +76,7 @@
#include "mozilla/dom/XMLHttpRequestBinding.h"
#include "nsIDOMFormData.h"
#include "DictionaryHelpers.h"
#include "mozilla/Attributes.h"
#include "nsWrapperCacheInlines.h"
#include "nsStreamListenerWrapper.h"
@ -3546,7 +3547,7 @@ nsXMLHttpRequest::ChangeState(PRUint32 aState, bool aBroadcast)
* Simple helper class that just forwards the redirect callback back
* to the nsXMLHttpRequest.
*/
class AsyncVerifyRedirectCallbackForwarder : public nsIAsyncVerifyRedirectCallback
class AsyncVerifyRedirectCallbackForwarder MOZ_FINAL : public nsIAsyncVerifyRedirectCallback
{
public:
AsyncVerifyRedirectCallbackForwarder(nsXMLHttpRequest *xhr)

View File

@ -18,6 +18,7 @@
#include "nsAutoPtr.h"
#include "nsIFile.h"
#include "nsDOMFile.h"
#include "mozilla/Attributes.h"
class nsITransferable;
@ -34,7 +35,7 @@ struct TransferItem {
nsCOMPtr<nsIVariant> mData;
};
class nsDOMDataTransfer : public nsIDOMDataTransfer
class nsDOMDataTransfer MOZ_FINAL : public nsIDOMDataTransfer
{
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS

View File

@ -7,8 +7,9 @@
#include "nsIDOMDeviceMotionEvent.h"
#include "nsDOMEvent.h"
#include "mozilla/Attributes.h"
class nsDOMDeviceRotationRate : public nsIDOMDeviceRotationRate
class nsDOMDeviceRotationRate MOZ_FINAL : public nsIDOMDeviceRotationRate
{
public:
NS_DECL_ISUPPORTS
@ -23,7 +24,7 @@ protected:
double mAlpha, mBeta, mGamma;
};
class nsDOMDeviceAcceleration : public nsIDOMDeviceAcceleration
class nsDOMDeviceAcceleration MOZ_FINAL : public nsIDOMDeviceAcceleration
{
public:
NS_DECL_ISUPPORTS
@ -38,8 +39,8 @@ protected:
double mX, mY, mZ;
};
class nsDOMDeviceMotionEvent : public nsDOMEvent,
public nsIDOMDeviceMotionEvent
class nsDOMDeviceMotionEvent MOZ_FINAL : public nsDOMEvent,
public nsIDOMDeviceMotionEvent
{
public:

View File

@ -17,8 +17,9 @@
#include "nsIScriptContext.h"
#include "nsWrapperCache.h"
#include "mozilla/ErrorResult.h"
#include "mozilla/Attributes.h"
class nsDOMEventListenerWrapper : public nsIDOMEventListener
class nsDOMEventListenerWrapper MOZ_FINAL : public nsIDOMEventListener
{
public:
nsDOMEventListenerWrapper(nsIDOMEventListener* aListener)

View File

@ -11,8 +11,9 @@
#include "nsTArray.h"
#include "nsIDocument.h"
#include "dombindings.h"
#include "mozilla/Attributes.h"
class nsDOMTouch : public nsIDOMTouch
class nsDOMTouch MOZ_FINAL : public nsIDOMTouch
{
public:
nsDOMTouch(nsIDOMEventTarget* aTarget,

View File

@ -12,6 +12,7 @@
#include "nsString.h"
#include "nsCycleCollectionParticipant.h"
#include "jsapi.h"
#include "mozilla/Attributes.h"
class nsEventListenerInfo : public nsIEventListenerInfo
@ -38,7 +39,7 @@ protected:
bool mInSystemEventGroup;
};
class nsEventListenerService : public nsIEventListenerService
class nsEventListenerService MOZ_FINAL : public nsIEventListenerService
{
public:
NS_DECL_ISUPPORTS

View File

@ -96,6 +96,7 @@
#include "mozilla/Preferences.h"
#include "mozilla/LookAndFeel.h"
#include "mozilla/Attributes.h"
#include "sampler.h"
#include "nsIDOMClientRect.h"
@ -217,7 +218,7 @@ PrintDocTreeAll(nsIDocShellTreeItem* aItem)
}
#endif
class nsUITimerCallback : public nsITimerCallback
class nsUITimerCallback MOZ_FINAL : public nsITimerCallback
{
public:
nsUITimerCallback() : mPreviousCount(0) {}

View File

@ -34,6 +34,7 @@
#include "nsIFormControl.h"
#include "nsIForm.h"
#include "nsHTMLFormElement.h"
#include "mozilla/Attributes.h"
using namespace mozilla::widget;
@ -386,8 +387,8 @@ nsIMEStateManager::GetWidget(nsPresContext* aPresContext)
// sTextStateObserver points to the currently active nsTextStateManager
// sTextStateObserver is null if there is no focused editor
class nsTextStateManager : public nsISelectionListener,
public nsStubMutationObserver
class nsTextStateManager MOZ_FINAL : public nsISelectionListener,
public nsStubMutationObserver
{
public:
nsTextStateManager();

View File

@ -11,8 +11,9 @@
#include "nsPresContext.h"
#include "nsIDOMEvent.h"
#include "dombindings.h"
#include "mozilla/Attributes.h"
class nsPaintRequest : public nsIDOMPaintRequest
class nsPaintRequest MOZ_FINAL : public nsIDOMPaintRequest
{
public:
NS_DECL_ISUPPORTS

View File

@ -9,8 +9,9 @@
#include "nsIPrivateTextRange.h"
#include "nsTArray.h"
#include "nsAutoPtr.h"
#include "mozilla/Attributes.h"
class nsPrivateTextRange : public nsIPrivateTextRange
class nsPrivateTextRange MOZ_FINAL : public nsIPrivateTextRange
{
NS_DECL_ISUPPORTS
public:
@ -31,7 +32,7 @@ protected:
nsTextRangeStyle mRangeStyle;
};
class nsPrivateTextRangeList: public nsIPrivateTextRangeList
class nsPrivateTextRangeList MOZ_FINAL : public nsIPrivateTextRangeList
{
NS_DECL_ISUPPORTS
public:

View File

@ -14,13 +14,14 @@
#include "nsInterfaceHashtable.h"
#include "nsIAtom.h"
#include "nsStubDocumentObserver.h"
#include "mozilla/Attributes.h"
/*
* The implementation of the XML Events Basic profile
*/
class nsXMLEventsManager;
class nsXMLEventsListener : public nsIDOMEventListener {
class nsXMLEventsListener MOZ_FINAL : public nsIDOMEventListener {
public:
static bool InitXMLEventsListener(nsIDocument * aDocument,
nsXMLEventsManager * aManager,
@ -57,7 +58,7 @@ private:
};
class nsXMLEventsManager : public nsStubDocumentObserver {
class nsXMLEventsManager MOZ_FINAL : public nsStubDocumentObserver {
public:
nsXMLEventsManager();
~nsXMLEventsManager();

View File

@ -15,6 +15,7 @@
#include "nsIChannelEventSink.h"
#include "nsIInterfaceRequestor.h"
#include "nsMediaCache.h"
#include "mozilla/Attributes.h"
// For HTTP seeking, if number of bytes needing to be
// seeked forward is less than this value then a read is
@ -390,9 +391,9 @@ public:
virtual bool IsSuspendedByCache(MediaResource** aActiveResource);
virtual bool IsSuspended();
class Listener : public nsIStreamListener,
public nsIInterfaceRequestor,
public nsIChannelEventSink
class Listener MOZ_FINAL : public nsIStreamListener,
public nsIInterfaceRequestor,
public nsIChannelEventSink
{
public:
Listener(ChannelMediaResource* aResource) : mResource(aResource) {}

View File

@ -17,6 +17,7 @@
#include "nsXPCOMCIDInternal.h"
#include "prlog.h"
#include "VideoUtils.h"
#include "mozilla/Attributes.h"
using namespace mozilla::layers;
@ -1469,7 +1470,7 @@ public:
}
};
class MediaStreamGraphShutdownObserver : public nsIObserver
class MediaStreamGraphShutdownObserver MOZ_FINAL : public nsIObserver
{
public:
NS_DECL_ISUPPORTS

View File

@ -20,6 +20,7 @@
#include "prlog.h"
#include "mozilla/Preferences.h"
#include "FileBlockCache.h"
#include "mozilla/Attributes.h"
using namespace mozilla;
@ -59,8 +60,8 @@ static const PRUint32 FREE_BLOCK_SCAN_LIMIT = 16;
// size limits).
static nsMediaCache* gMediaCache;
class nsMediaCacheFlusher : public nsIObserver,
public nsSupportsWeakReference {
class nsMediaCacheFlusher MOZ_FINAL : public nsIObserver,
public nsSupportsWeakReference {
nsMediaCacheFlusher() {}
~nsMediaCacheFlusher();
public:

View File

@ -11,6 +11,7 @@
#include "nsCycleCollectionParticipant.h"
#include "nsIDOMSVGAnimatedLengthList.h"
#include "nsSVGElement.h"
#include "mozilla/Attributes.h"
namespace mozilla {
@ -103,7 +104,7 @@ class DOMSVGLengthList;
* One drawback of this design is that objects must look up their parent
* chain to find their element, but that overhead is relatively small.
*/
class DOMSVGAnimatedLengthList : public nsIDOMSVGAnimatedLengthList
class DOMSVGAnimatedLengthList MOZ_FINAL : public nsIDOMSVGAnimatedLengthList
{
friend class DOMSVGLengthList;

View File

@ -11,6 +11,7 @@
#include "nsCycleCollectionParticipant.h"
#include "nsIDOMSVGAnimatedNumberList.h"
#include "nsSVGElement.h"
#include "mozilla/Attributes.h"
namespace mozilla {
@ -33,7 +34,7 @@ class SVGNumberList;
* out our pointers to them when they die (making our pointers to them true
* weak refs).
*/
class DOMSVGAnimatedNumberList : public nsIDOMSVGAnimatedNumberList
class DOMSVGAnimatedNumberList MOZ_FINAL : public nsIDOMSVGAnimatedNumberList
{
friend class DOMSVGNumberList;

View File

@ -12,6 +12,7 @@
#include "nsCycleCollectionParticipant.h"
#include "nsIDOMSVGAnimTransformList.h"
#include "nsSVGElement.h"
#include "mozilla/Attributes.h"
namespace mozilla {
@ -34,7 +35,7 @@ class SVGAnimatedTransformList;
* nulling out our pointers to them when they die (making our pointers to them
* true weak refs).
*/
class DOMSVGAnimatedTransformList : public nsIDOMSVGAnimatedTransformList
class DOMSVGAnimatedTransformList MOZ_FINAL : public nsIDOMSVGAnimatedTransformList
{
friend class DOMSVGTransformList;

View File

@ -13,6 +13,7 @@
#include "nsIDOMSVGLength.h"
#include "nsTArray.h"
#include "SVGLength.h"
#include "mozilla/Attributes.h"
class nsSVGElement;
@ -65,7 +66,7 @@ namespace mozilla {
* if-else as appropriate. The bug for doing that work is:
* https://bugzilla.mozilla.org/show_bug.cgi?id=571734
*/
class DOMSVGLength : public nsIDOMSVGLength
class DOMSVGLength MOZ_FINAL : public nsIDOMSVGLength
{
public:
NS_DECLARE_STATIC_IID_ACCESSOR(MOZILLA_DOMSVGLENGTH_IID)

View File

@ -13,6 +13,7 @@
#include "nsIDOMSVGLengthList.h"
#include "nsTArray.h"
#include "SVGLengthList.h"
#include "mozilla/Attributes.h"
class nsIDOMSVGLength;
class nsSVGElement;
@ -38,8 +39,8 @@ class DOMSVGLength;
*
* Our DOM items are created lazily on demand as and when script requests them.
*/
class DOMSVGLengthList : public nsIDOMSVGLengthList,
public nsWrapperCache
class DOMSVGLengthList MOZ_FINAL : public nsIDOMSVGLengthList,
public nsWrapperCache
{
friend class DOMSVGLength;

View File

@ -42,6 +42,7 @@
#include "nsAutoPtr.h"
#include "nsCycleCollectionParticipant.h"
#include "nsIDOMSVGMatrix.h"
#include "mozilla/Attributes.h"
// We make DOMSVGMatrix a pseudo-interface to allow us to QI to it in order
// to check that the objects that scripts pass in are our *native* matrix
@ -57,7 +58,7 @@ namespace mozilla {
/**
* DOM wrapper for an SVG matrix.
*/
class DOMSVGMatrix : public nsIDOMSVGMatrix
class DOMSVGMatrix MOZ_FINAL : public nsIDOMSVGMatrix
{
public:
NS_DECLARE_STATIC_IID_ACCESSOR(MOZILLA_DOMSVGMATRIX_IID)

View File

@ -11,6 +11,7 @@
#include "nsCycleCollectionParticipant.h"
#include "nsIDOMSVGNumber.h"
#include "nsTArray.h"
#include "mozilla/Attributes.h"
class nsSVGElement;
@ -40,7 +41,7 @@ namespace mozilla {
*
* See the comment in DOMSVGLength.h (yes, LENGTH), which applies here too.
*/
class DOMSVGNumber : public nsIDOMSVGNumber
class DOMSVGNumber MOZ_FINAL : public nsIDOMSVGNumber
{
public:
NS_DECLARE_STATIC_IID_ACCESSOR(MOZILLA_DOMSVGNUMBER_IID)

View File

@ -13,6 +13,7 @@
#include "nsIDOMSVGNumberList.h"
#include "nsTArray.h"
#include "SVGNumberList.h"
#include "mozilla/Attributes.h"
class nsSVGElement;
@ -37,8 +38,8 @@ class DOMSVGNumber;
*
* Our DOM items are created lazily on demand as and when script requests them.
*/
class DOMSVGNumberList : public nsIDOMSVGNumberList,
public nsWrapperCache
class DOMSVGNumberList MOZ_FINAL : public nsIDOMSVGNumberList,
public nsWrapperCache
{
friend class DOMSVGNumber;

View File

@ -14,6 +14,7 @@
#include "nsSVGElement.h"
#include "nsTArray.h"
#include "SVGPathData.h" // IWYU pragma: keep
#include "mozilla/Attributes.h"
class nsIDOMSVGPathSeg;
@ -47,8 +48,8 @@ class SVGAnimatedPathSegList;
*
* Our DOM items are created lazily on demand as and when script requests them.
*/
class DOMSVGPathSegList : public nsIDOMSVGPathSegList,
public nsWrapperCache
class DOMSVGPathSegList MOZ_FINAL : public nsIDOMSVGPathSegList,
public nsWrapperCache
{
friend class DOMSVGPathSeg;

View File

@ -14,6 +14,7 @@
#include "nsIDOMSVGPoint.h"
#include "nsTArray.h"
#include "SVGPoint.h"
#include "mozilla/Attributes.h"
class nsSVGElement;
@ -44,7 +45,7 @@ namespace mozilla {
* See the architecture comment in DOMSVGLength.h (yes, LENGTH) for an overview
* of the important points regarding how this specific class works.
*/
class DOMSVGPoint : public nsIDOMSVGPoint
class DOMSVGPoint MOZ_FINAL : public nsIDOMSVGPoint
{
public:
NS_DECLARE_STATIC_IID_ACCESSOR(MOZILLA_DOMSVGPOINT_IID)

View File

@ -14,6 +14,7 @@
#include "nsSVGElement.h"
#include "nsTArray.h"
#include "SVGPointList.h" // IWYU pragma: keep
#include "mozilla/Attributes.h"
class nsIDOMSVGPoint;
@ -47,8 +48,8 @@ class SVGAnimatedPointList;
*
* Our DOM items are created lazily on demand as and when script requests them.
*/
class DOMSVGPointList : public nsIDOMSVGPointList,
public nsWrapperCache
class DOMSVGPointList MOZ_FINAL : public nsIDOMSVGPointList,
public nsWrapperCache
{
friend class DOMSVGPoint;

View File

@ -11,6 +11,7 @@
#include "nsCycleCollectionParticipant.h"
#include "nsIDOMSVGStringList.h"
#include "nsSVGElement.h"
#include "mozilla/Attributes.h"
namespace mozilla {
@ -42,7 +43,7 @@ class SVGStringList;
* them so it can return the same objects each time. It simply returns a new
* string each time any given item is requested.
*/
class DOMSVGStringList : public nsIDOMSVGStringList
class DOMSVGStringList MOZ_FINAL : public nsIDOMSVGStringList
{
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS

View File

@ -24,6 +24,8 @@ public:
NS_DECL_ISUPPORTS
NS_DECL_NSIDOMSVGTESTS
virtual ~DOMSVGTests() {}
friend class mozilla::DOMSVGStringList;
typedef mozilla::SVGStringList SVGStringList;

View File

@ -15,6 +15,7 @@
#include "nsIDOMSVGTransform.h"
#include "nsTArray.h"
#include "SVGTransform.h"
#include "mozilla/Attributes.h"
class nsSVGElement;
@ -38,7 +39,7 @@ class DOMSVGMatrix;
/**
* DOM wrapper for an SVG transform. See DOMSVGLength.h.
*/
class DOMSVGTransform : public nsIDOMSVGTransform
class DOMSVGTransform MOZ_FINAL : public nsIDOMSVGTransform
{
public:
NS_DECLARE_STATIC_IID_ACCESSOR(MOZILLA_DOMSVGTRANSFORM_IID)

View File

@ -14,6 +14,7 @@
#include "nsIDOMSVGTransformList.h"
#include "nsTArray.h"
#include "SVGTransformList.h"
#include "mozilla/Attributes.h"
class nsIDOMSVGTransform;
class nsSVGElement;
@ -30,8 +31,8 @@ class DOMSVGTransform;
*
* See the architecture comment in DOMSVGAnimatedTransformList.h.
*/
class DOMSVGTransformList : public nsIDOMSVGTransformList,
public nsWrapperCache
class DOMSVGTransformList MOZ_FINAL : public nsIDOMSVGTransformList,
public nsWrapperCache
{
friend class DOMSVGTransform;

View File

@ -14,6 +14,7 @@
#include "nsIDOMSVGPresAspectRatio.h"
#include "nsISMILAttr.h"
#include "nsSVGElement.h"
#include "mozilla/Attributes.h"
class nsISMILAnimationElement;
class nsSMILValue;
@ -147,7 +148,7 @@ private:
nsSVGElement* aSVGElement);
public:
struct DOMBaseVal : public nsIDOMSVGPreserveAspectRatio
struct DOMBaseVal MOZ_FINAL : public nsIDOMSVGPreserveAspectRatio
{
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
NS_DECL_CYCLE_COLLECTION_CLASS(DOMBaseVal)
@ -169,7 +170,7 @@ public:
{ return mVal->SetBaseMeetOrSlice(aMeetOrSlice, mSVGElement); }
};
struct DOMAnimVal : public nsIDOMSVGPreserveAspectRatio
struct DOMAnimVal MOZ_FINAL : public nsIDOMSVGPreserveAspectRatio
{
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
NS_DECL_CYCLE_COLLECTION_CLASS(DOMAnimVal)
@ -201,7 +202,7 @@ public:
{ return NS_ERROR_DOM_NO_MODIFICATION_ALLOWED_ERR; }
};
struct DOMAnimPAspectRatio : public nsIDOMSVGAnimatedPreserveAspectRatio
struct DOMAnimPAspectRatio MOZ_FINAL : public nsIDOMSVGAnimatedPreserveAspectRatio
{
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
NS_DECL_CYCLE_COLLECTION_CLASS(DOMAnimPAspectRatio)
@ -222,7 +223,7 @@ public:
{ return mVal->ToDOMAnimVal(aAnimVal, mSVGElement); }
};
struct SMILPreserveAspectRatio : public nsISMILAttr
struct SMILPreserveAspectRatio MOZ_FINAL : public nsISMILAttr
{
public:
SMILPreserveAspectRatio(SVGAnimatedPreserveAspectRatio* aVal,

View File

@ -14,6 +14,7 @@
#include "nsContentUtils.h" // NS_ENSURE_FINITE
#include "nsSMILValue.h"
#include "SVGOrientSMILType.h"
#include "mozilla/Attributes.h"
using namespace mozilla;
@ -25,7 +26,7 @@ using namespace mozilla;
* any DOMSVGAngle passed in. Perhaps this is wrong and inconsistent with
* other parts of SVG, but it's how the code works for now.
*/
class DOMSVGAngle : public nsIDOMSVGAngle
class DOMSVGAngle MOZ_FINAL : public nsIDOMSVGAngle
{
public:
NS_DECL_ISUPPORTS

View File

@ -14,6 +14,7 @@
#include "nsIDOMSVGAnimatedAngle.h"
#include "nsISMILAttr.h"
#include "nsSVGElement.h"
#include "mozilla/Attributes.h"
class nsISMILAnimationElement;
class nsSMILValue;
@ -77,7 +78,7 @@ private:
nsresult ToDOMAnimVal(nsIDOMSVGAngle **aResult, nsSVGElement* aSVGElement);
public:
struct DOMBaseVal : public nsIDOMSVGAngle
struct DOMBaseVal MOZ_FINAL : public nsIDOMSVGAngle
{
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
NS_DECL_CYCLE_COLLECTION_CLASS(DOMBaseVal)
@ -116,7 +117,7 @@ public:
{ return mVal->ConvertToSpecifiedUnits(unitType, mSVGElement); }
};
struct DOMAnimVal : public nsIDOMSVGAngle
struct DOMAnimVal MOZ_FINAL : public nsIDOMSVGAngle
{
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
NS_DECL_CYCLE_COLLECTION_CLASS(DOMAnimVal)
@ -153,7 +154,7 @@ public:
{ return NS_ERROR_DOM_NO_MODIFICATION_ALLOWED_ERR; }
};
struct DOMAnimatedAngle : public nsIDOMSVGAnimatedAngle
struct DOMAnimatedAngle MOZ_FINAL : public nsIDOMSVGAnimatedAngle
{
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
NS_DECL_CYCLE_COLLECTION_CLASS(DOMAnimatedAngle)
@ -176,7 +177,7 @@ public:
// 'marker' element, and 'orient' must be special cased since it can also
// take the value 'auto', making it a more complex type.
struct SMILOrient : public nsISMILAttr
struct SMILOrient MOZ_FINAL : public nsISMILAttr
{
public:
SMILOrient(nsSVGOrientType* aOrientType,

View File

@ -13,6 +13,7 @@
#include "nsISMILAttr.h"
#include "nsISupportsImpl.h"
#include "nsSVGElement.h"
#include "mozilla/Attributes.h"
class nsISMILAnimationElement;
class nsSMILValue;
@ -51,7 +52,7 @@ private:
PRUint8 mAttrEnum; // element specified tracking for attribute
public:
struct DOMAnimatedBoolean : public nsIDOMSVGAnimatedBoolean
struct DOMAnimatedBoolean MOZ_FINAL : public nsIDOMSVGAnimatedBoolean
{
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
NS_DECL_CYCLE_COLLECTION_CLASS(DOMAnimatedBoolean)

View File

@ -12,6 +12,7 @@
#include "nsIDOMSVGAnimatedString.h"
#include "nsISMILAttr.h"
#include "nsString.h"
#include "mozilla/Attributes.h"
class nsSVGStylableElement;
@ -43,7 +44,7 @@ private:
nsAutoPtr<nsString> mAnimVal;
public:
struct DOMAnimatedString : public nsIDOMSVGAnimatedString
struct DOMAnimatedString MOZ_FINAL : public nsIDOMSVGAnimatedString
{
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
NS_DECL_CYCLE_COLLECTION_CLASS(DOMAnimatedString)

View File

@ -12,6 +12,7 @@
#include "nsIDOMSVGAnimatedEnum.h"
#include "nsISMILAttr.h"
#include "nsSVGElement.h"
#include "mozilla/Attributes.h"
class nsIAtom;
class nsISMILAnimationElement;
@ -62,7 +63,7 @@ private:
nsSVGEnumMapping *GetMapping(nsSVGElement *aSVGElement);
public:
struct DOMAnimatedEnum : public nsIDOMSVGAnimatedEnumeration
struct DOMAnimatedEnum MOZ_FINAL : public nsIDOMSVGAnimatedEnumeration
{
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
NS_DECL_CYCLE_COLLECTION_CLASS(DOMAnimatedEnum)

View File

@ -12,6 +12,7 @@
#include "nsIDOMSVGAnimatedInteger.h"
#include "nsISMILAttr.h"
#include "nsSVGElement.h"
#include "mozilla/Attributes.h"
class nsISMILAnimationElement;
class nsSMILValue;
@ -61,7 +62,7 @@ private:
bool mIsBaseSet;
public:
struct DOMAnimatedInteger : public nsIDOMSVGAnimatedInteger
struct DOMAnimatedInteger MOZ_FINAL : public nsIDOMSVGAnimatedInteger
{
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
NS_DECL_CYCLE_COLLECTION_CLASS(DOMAnimatedInteger)

View File

@ -12,6 +12,7 @@
#include "nsIDOMSVGAnimatedInteger.h"
#include "nsISMILAttr.h"
#include "nsSVGElement.h"
#include "mozilla/Attributes.h"
class nsISMILAnimationElement;
class nsSMILValue;
@ -68,7 +69,7 @@ private:
bool mIsBaseSet;
public:
struct DOMAnimatedInteger : public nsIDOMSVGAnimatedInteger
struct DOMAnimatedInteger MOZ_FINAL : public nsIDOMSVGAnimatedInteger
{
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
NS_DECL_CYCLE_COLLECTION_CLASS(DOMAnimatedInteger)

View File

@ -15,6 +15,7 @@
#include "nsSVGLength2.h"
#include "nsSVGViewBox.h"
#include "SVGAnimatedPreserveAspectRatio.h"
#include "mozilla/Attributes.h"
class nsSVGOrientType
{
@ -46,7 +47,7 @@ private:
nsSVGEnumValue mAnimVal;
nsSVGEnumValue mBaseVal;
struct DOMAnimatedEnum : public nsIDOMSVGAnimatedEnumeration
struct DOMAnimatedEnum MOZ_FINAL : public nsIDOMSVGAnimatedEnumeration
{
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
NS_DECL_CYCLE_COLLECTION_CLASS(DOMAnimatedEnum)

View File

@ -12,8 +12,9 @@
#include "nsSMILValue.h"
#include "nsSMILFloatType.h"
#include "nsIDOMSVGNumber.h"
#include "mozilla/Attributes.h"
class DOMSVGNumber : public nsIDOMSVGNumber
class DOMSVGNumber MOZ_FINAL : public nsIDOMSVGNumber
{
public:
NS_DECL_ISUPPORTS

View File

@ -13,6 +13,7 @@
#include "nsISMILAttr.h"
#include "nsMathUtils.h"
#include "nsSVGElement.h"
#include "mozilla/Attributes.h"
class nsISMILAnimationElement;
class nsSMILValue;
@ -61,7 +62,7 @@ private:
bool mIsBaseSet;
public:
struct DOMAnimatedNumber : public nsIDOMSVGAnimatedNumber
struct DOMAnimatedNumber MOZ_FINAL : public nsIDOMSVGAnimatedNumber
{
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
NS_DECL_CYCLE_COLLECTION_CLASS(DOMAnimatedNumber)

View File

@ -13,6 +13,7 @@
#include "nsISMILAttr.h"
#include "nsMathUtils.h"
#include "nsSVGElement.h"
#include "mozilla/Attributes.h"
class nsISMILAnimationElement;
class nsSMILValue;
@ -69,7 +70,7 @@ private:
bool mIsBaseSet;
public:
struct DOMAnimatedNumber : public nsIDOMSVGAnimatedNumber
struct DOMAnimatedNumber MOZ_FINAL : public nsIDOMSVGAnimatedNumber
{
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
NS_DECL_CYCLE_COLLECTION_CLASS(DOMAnimatedNumber)

View File

@ -8,6 +8,7 @@
#include "gfxRect.h"
#include "nsIDOMSVGRect.h"
#include "mozilla/Attributes.h"
nsresult
NS_NewSVGRect(nsIDOMSVGRect** result,
@ -20,7 +21,7 @@ NS_NewSVGRect(nsIDOMSVGRect** result, const gfxRect& rect);
////////////////////////////////////////////////////////////////////////
// nsSVGRect class
class nsSVGRect : public nsIDOMSVGRect
class nsSVGRect MOZ_FINAL : public nsIDOMSVGRect
{
public:
nsSVGRect(float x=0.0f, float y=0.0f, float w=0.0f, float h=0.0f);

View File

@ -18,6 +18,7 @@
#include "nsSVGStylableElement.h"
#include "nsSVGViewBox.h"
#include "SVGAnimatedPreserveAspectRatio.h"
#include "mozilla/Attributes.h"
class nsIDOMSVGMatrix;
class nsSMILTimeContainer;
@ -59,7 +60,7 @@ public:
private:
struct DOMVal : public nsIDOMSVGPoint {
struct DOMVal MOZ_FINAL : public nsIDOMSVGPoint {
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
NS_DECL_CYCLE_COLLECTION_CLASS(DOMVal)

View File

@ -9,6 +9,7 @@
#include "nsDOMError.h"
#include "nsIDOMSVGAnimatedString.h"
#include "nsSVGElement.h"
#include "mozilla/Attributes.h"
class nsSVGString
{
@ -49,7 +50,7 @@ private:
bool mIsBaseSet;
public:
struct DOMAnimatedString : public nsIDOMSVGAnimatedString
struct DOMAnimatedString MOZ_FINAL : public nsIDOMSVGAnimatedString
{
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
NS_DECL_CYCLE_COLLECTION_CLASS(DOMAnimatedString)

View File

@ -14,6 +14,7 @@
#include "nsIDOMSVGRect.h"
#include "nsISMILAttr.h"
#include "nsSVGElement.h"
#include "mozilla/Attributes.h"
class nsISMILAnimationElement;
class nsSMILValue;
@ -78,7 +79,7 @@ private:
nsAutoPtr<nsSVGViewBoxRect> mAnimVal;
bool mHasBaseVal;
struct DOMBaseVal : public nsIDOMSVGRect
struct DOMBaseVal MOZ_FINAL : public nsIDOMSVGRect
{
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
NS_DECL_CYCLE_COLLECTION_CLASS(DOMBaseVal)
@ -104,7 +105,7 @@ private:
NS_IMETHOD SetHeight(float aHeight);
};
struct DOMAnimVal : public nsIDOMSVGRect
struct DOMAnimVal MOZ_FINAL : public nsIDOMSVGRect
{
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
NS_DECL_CYCLE_COLLECTION_CLASS(DOMAnimVal)
@ -153,7 +154,7 @@ private:
};
public:
struct DOMAnimatedRect : public nsIDOMSVGAnimatedRect
struct DOMAnimatedRect MOZ_FINAL : public nsIDOMSVGAnimatedRect
{
NS_DECL_CYCLE_COLLECTING_ISUPPORTS
NS_DECL_CYCLE_COLLECTION_CLASS(DOMAnimatedRect)

View File

@ -53,6 +53,7 @@
#include "nsIDOMEventListener.h"
#include "mozilla/Preferences.h"
#include "mozilla/dom/Element.h"
#include "mozilla/Attributes.h"
using namespace mozilla;
@ -182,7 +183,8 @@ static const PRInt32 kInitialSize = sizeof(nsXBLBindingRequest) * kNumElements;
// nsXBLStreamListener, a helper class used for
// asynchronous parsing of URLs
/* Header file */
class nsXBLStreamListener : public nsIStreamListener, public nsIDOMEventListener
class nsXBLStreamListener MOZ_FINAL : public nsIStreamListener,
public nsIDOMEventListener
{
public:
NS_DECL_ISUPPORTS

View File

@ -14,12 +14,13 @@
#include "txResultRecycler.h"
#include "nsAgg.h"
#include "nsTArray.h"
#include "mozilla/Attributes.h"
/**
* A class for evaluating an XPath expression string
*/
class nsXPathEvaluator : public nsIDOMXPathEvaluator,
public nsIXPathEvaluatorInternal
class nsXPathEvaluator MOZ_FINAL : public nsIDOMXPathEvaluator,
public nsIXPathEvaluatorInternal
{
public:
nsXPathEvaluator(nsISupports *aOuter);

View File

@ -12,6 +12,7 @@
#include "txResultRecycler.h"
#include "nsAutoPtr.h"
#include "nsCycleCollectionParticipant.h"
#include "mozilla/Attributes.h"
class Expr;
class txXPathNode;
@ -19,8 +20,8 @@ class txXPathNode;
/**
* A class for evaluating an XPath expression string
*/
class nsXPathExpression : public nsIDOMXPathExpression,
public nsIDOMNSXPathExpression
class nsXPathExpression MOZ_FINAL : public nsIDOMXPathExpression,
public nsIDOMNSXPathExpression
{
public:
nsXPathExpression(nsAutoPtr<Expr>& aExpression, txResultRecycler* aRecycler,

View File

@ -10,11 +10,12 @@
#include "nsIDOMNode.h"
#include "nsCOMPtr.h"
#include "nsCycleCollectionParticipant.h"
#include "mozilla/Attributes.h"
/**
* A class for evaluating an XPath expression string
*/
class nsXPathNSResolver : public nsIDOMXPathNSResolver
class nsXPathNSResolver MOZ_FINAL : public nsIDOMXPathNSResolver
{
public:
nsXPathNSResolver(nsIDOMNode* aNode);

View File

@ -14,6 +14,7 @@
#include "nsCOMArray.h"
#include "nsWeakPtr.h"
#include "nsCycleCollectionParticipant.h"
#include "mozilla/Attributes.h"
// {662f2c9a-c7cd-4cab-9349-e733df5a838c}
#define NS_IXPATHRESULT_IID \
@ -35,9 +36,9 @@ NS_DEFINE_STATIC_IID_ACCESSOR(nsIXPathResult, NS_IXPATHRESULT_IID)
/**
* A class for evaluating an XPath expression string
*/
class nsXPathResult : public nsIDOMXPathResult,
public nsStubMutationObserver,
public nsIXPathResult
class nsXPathResult MOZ_FINAL : public nsIDOMXPathResult,
public nsStubMutationObserver,
public nsIXPathResult
{
public:
nsXPathResult();

View File

@ -16,10 +16,11 @@
#include "txXPathTreeWalker.h"
#include "xptcall.h"
#include "txXPathObjectAdaptor.h"
#include "mozilla/Attributes.h"
NS_IMPL_ISUPPORTS1(txXPathObjectAdaptor, txIXPathObject)
class txFunctionEvaluationContext : public txIFunctionEvaluationContext
class txFunctionEvaluationContext MOZ_FINAL : public txIFunctionEvaluationContext
{
public:
txFunctionEvaluationContext(txIEvalContext *aContext, nsISupports *aState);

View File

@ -24,6 +24,7 @@ public:
"Don't create a txXPathObjectAdaptor if you don't have a "
"txAExprResult");
}
virtual ~txXPathObjectAdaptor() {}
NS_DECL_ISUPPORTS

View File

@ -40,6 +40,7 @@
#include "nsCrossSiteListenerProxy.h"
#include "nsDOMError.h"
#include "mozilla/dom/Element.h"
#include "mozilla/Attributes.h"
using namespace mozilla;
@ -63,10 +64,10 @@ getSpec(nsIChannel* aChannel, nsAString& aSpec)
AppendUTF8toUTF16(spec, aSpec);
}
class txStylesheetSink : public nsIXMLContentSink,
public nsIExpatSink,
public nsIStreamListener,
public nsIInterfaceRequestor
class txStylesheetSink MOZ_FINAL : public nsIXMLContentSink,
public nsIExpatSink,
public nsIStreamListener,
public nsIInterfaceRequestor
{
public:
txStylesheetSink(txStylesheetCompiler* aCompiler, nsIParser* aParser);
@ -363,7 +364,7 @@ txStylesheetSink::GetInterface(const nsIID& aIID, void** aResult)
return NS_ERROR_NO_INTERFACE;
}
class txCompileObserver : public txACompileObserver
class txCompileObserver MOZ_FINAL : public txACompileObserver
{
public:
txCompileObserver(txMozillaXSLTProcessor* aProcessor,
@ -596,7 +597,7 @@ handleNode(nsINode* aNode, txStylesheetCompiler* aCompiler)
return NS_OK;
}
class txSyncCompileObserver : public txACompileObserver
class txSyncCompileObserver MOZ_FINAL : public txACompileObserver
{
public:
txSyncCompileObserver(txMozillaXSLTProcessor* aProcessor);

View File

@ -13,6 +13,7 @@
#include "nsCOMArray.h"
#include "nsICSSLoaderObserver.h"
#include "txStack.h"
#include "mozilla/Attributes.h"
class nsIContent;
class nsIDOMDocument;
@ -26,8 +27,8 @@ class nsNodeInfoManager;
class nsIDocument;
class nsINode;
class txTransformNotifier : public nsIScriptLoaderObserver,
public nsICSSLoaderObserver
class txTransformNotifier MOZ_FINAL : public nsIScriptLoaderObserver,
public nsICSSLoaderObserver
{
public:
txTransformNotifier();

View File

@ -15,6 +15,7 @@
#include "txNamespaceMap.h"
#include "nsIJSNativeInitializer.h"
#include "nsCycleCollectionParticipant.h"
#include "mozilla/Attributes.h"
class nsIDOMNode;
class nsIPrincipal;
@ -36,11 +37,11 @@ class txIGlobalParameter;
/**
* txMozillaXSLTProcessor is a front-end to the XSLT Processor.
*/
class txMozillaXSLTProcessor : public nsIXSLTProcessor,
public nsIXSLTProcessorPrivate,
public nsIDocumentTransformer,
public nsStubMutationObserver,
public nsIJSNativeInitializer
class txMozillaXSLTProcessor MOZ_FINAL : public nsIXSLTProcessor,
public nsIXSLTProcessorPrivate,
public nsIDocumentTransformer,
public nsStubMutationObserver,
public nsIJSNativeInitializer
{
public:
/**

View File

@ -20,10 +20,11 @@
#include "nsNodeInfoManager.h"
#include "nsContentCreatorFunctions.h"
#include "nsContentUtils.h"
#include "mozilla/Attributes.h"
static NS_DEFINE_CID(kXMLDocumentCID, NS_XMLDOCUMENT_CID);
class nsXMLContentBuilder : public nsIXMLContentBuilder
class nsXMLContentBuilder MOZ_FINAL : public nsIXMLContentBuilder
{
protected:
friend nsresult NS_NewXMLContentBuilder(nsIXMLContentBuilder** aResult);

View File

@ -10,6 +10,7 @@
#include "nsXMLElement.h"
#include "nsIXTFAttributeHandler.h"
#include "nsIXTFElement.h"
#include "mozilla/Attributes.h"
typedef nsXMLElement nsXTFElementWrapperBase;
class nsXTFClassInfo;
@ -166,7 +167,7 @@ protected:
NS_DEFINE_STATIC_IID_ACCESSOR(nsXTFElementWrapper, NS_XTFELEMENTWRAPPER_IID)
class nsXTFClassInfo : public nsXPCClassInfo
class nsXTFClassInfo MOZ_FINAL : public nsXPCClassInfo
{
public:
nsXTFClassInfo(nsXTFElementWrapper* aWrapper) : mWrapper(aWrapper) {}

View File

@ -9,6 +9,7 @@
#include "nsIInterfaceInfoManager.h"
#include "nsServiceManagerUtils.h"
#include "nsAutoPtr.h"
#include "mozilla/Attributes.h"
#ifdef DEBUG
#include <stdio.h>
#endif
@ -16,7 +17,7 @@
////////////////////////////////////////////////////////////////////////
// nsXTFInterfaceAggregator class
class nsXTFInterfaceAggregator : protected nsAutoXPTCStub
class nsXTFInterfaceAggregator MOZ_FINAL : protected nsAutoXPTCStub
{
protected:
friend nsresult

View File

@ -12,11 +12,12 @@
#include "nsInterfaceHashtable.h"
#include "nsString.h"
#include "nsXTFElementWrapper.h"
#include "mozilla/Attributes.h"
////////////////////////////////////////////////////////////////////////
// nsXTFService class
class nsXTFService : public nsIXTFService
class nsXTFService MOZ_FINAL : public nsIXTFService
{
protected:
friend nsresult NS_NewXTFService(nsIXTFService** aResult);

View File

@ -9,6 +9,7 @@
#include "nsIInterfaceInfoManager.h"
#include "nsServiceManagerUtils.h"
#include "nsAutoPtr.h"
#include "mozilla/Attributes.h"
#ifdef DEBUG
#include <stdio.h>
#endif
@ -16,7 +17,7 @@
////////////////////////////////////////////////////////////////////////
// nsXTFWeakTearoff class
class nsXTFWeakTearoff : protected nsAutoXPTCStub
class nsXTFWeakTearoff MOZ_FINAL : protected nsAutoXPTCStub
{
protected:
~nsXTFWeakTearoff();

View File

@ -87,6 +87,7 @@
#include "rdf.h"
#include "nsIControllers.h"
#include "nsAttrValueOrString.h"
#include "mozilla/Attributes.h"
// The XUL doc interface
#include "nsIDOMXULDocument.h"
@ -106,7 +107,7 @@ namespace css = mozilla::css;
/**
* A tearoff class for nsXULElement to implement nsIScriptEventHandlerOwner.
*/
class nsScriptEventHandlerOwnerTearoff : public nsIScriptEventHandlerOwner
class nsScriptEventHandlerOwnerTearoff MOZ_FINAL : public nsIScriptEventHandlerOwner
{
public:
nsScriptEventHandlerOwnerTearoff(nsXULElement* aElement)
@ -145,8 +146,8 @@ PRUint32 nsXULPrototypeAttribute::gNumCacheSets;
PRUint32 nsXULPrototypeAttribute::gNumCacheFills;
#endif
class nsXULElementTearoff : public nsIDOMElementCSSInlineStyle,
public nsIFrameLoaderOwner
class nsXULElementTearoff MOZ_FINAL : public nsIDOMElementCSSInlineStyle,
public nsIFrameLoaderOwner
{
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS

View File

@ -9,6 +9,7 @@
#include "nsAutoPtr.h"
#include "nsISimpleEnumerator.h"
#include "nsCycleCollectionParticipant.h"
#include "mozilla/Attributes.h"
#define NS_ITEMPLATERDFQUERY_IID \
{0x8929ff60, 0x1c9c, 0x4d87, \
@ -36,7 +37,7 @@ public:
virtual void ClearCachedResults() = 0;
};
class nsRDFQuery : public nsITemplateRDFQuery
class nsRDFQuery MOZ_FINAL : public nsITemplateRDFQuery
{
public:

View File

@ -9,6 +9,7 @@
#include "nsAutoPtr.h"
#include "nsIAtom.h"
#include "nsCycleCollectionParticipant.h"
#include "mozilla/Attributes.h"
class nsXULTemplateResultXML;
class nsXMLBindingValues;
@ -42,7 +43,7 @@ struct nsXMLBinding {
* a collection of <binding> descriptors. This object is refcounted by
* nsXMLBindingValues objects and the query processor.
*/
class nsXMLBindingSet
class nsXMLBindingSet MOZ_FINAL
{
public:

View File

@ -30,6 +30,7 @@
#include "nsClassHashtable.h"
#include "nsRefPtrHashtable.h"
#include "nsCycleCollectionParticipant.h"
#include "mozilla/Attributes.h"
#include "prlog.h"
#ifdef PR_LOGGING
@ -42,8 +43,8 @@ class nsXULTemplateResultRDF;
/**
* An object that generates results from a query on an RDF graph
*/
class nsXULTemplateQueryProcessorRDF : public nsIXULTemplateQueryProcessor,
public nsIRDFObserver
class nsXULTemplateQueryProcessorRDF MOZ_FINAL : public nsIXULTemplateQueryProcessor,
public nsIRDFObserver
{
public:

View File

@ -16,10 +16,11 @@
#include "mozIStorageValueArray.h"
#include "mozIStorageStatement.h"
#include "mozIStorageConnection.h"
#include "mozilla/Attributes.h"
class nsXULTemplateQueryProcessorStorage;
class nsXULTemplateResultSetStorage : public nsISimpleEnumerator
class nsXULTemplateResultSetStorage MOZ_FINAL : public nsISimpleEnumerator
{
private:
@ -43,7 +44,7 @@ public:
};
class nsXULTemplateQueryProcessorStorage : public nsIXULTemplateQueryProcessor
class nsXULTemplateQueryProcessorStorage MOZ_FINAL : public nsIXULTemplateQueryProcessor
{
public:

View File

@ -21,6 +21,7 @@
#include "nsXMLBinding.h"
#include "nsCycleCollectionParticipant.h"
#include "nsIXMLHttpRequest.h"
#include "mozilla/Attributes.h"
class nsXULTemplateQueryProcessorXML;
@ -28,7 +29,7 @@ class nsXULTemplateQueryProcessorXML;
{0x0358d692, 0xccce, 0x4a97, \
{ 0xb2, 0x51, 0xba, 0x8f, 0x17, 0x0f, 0x3b, 0x6f }}
class nsXMLQuery : public nsISupports
class nsXMLQuery MOZ_FINAL : public nsISupports
{
public:
NS_DECLARE_STATIC_IID_ACCESSOR(NS_IXMLQUERY_IID)
@ -79,7 +80,7 @@ class nsXMLQuery : public nsISupports
NS_DEFINE_STATIC_IID_ACCESSOR(nsXMLQuery, NS_IXMLQUERY_IID)
class nsXULTemplateResultSetXML : public nsISimpleEnumerator
class nsXULTemplateResultSetXML MOZ_FINAL : public nsISimpleEnumerator
{
private:
@ -113,8 +114,8 @@ public:
{}
};
class nsXULTemplateQueryProcessorXML : public nsIXULTemplateQueryProcessor,
public nsIDOMEventListener
class nsXULTemplateQueryProcessorXML MOZ_FINAL : public nsIXULTemplateQueryProcessor,
public nsIDOMEventListener
{
public:

View File

@ -13,11 +13,12 @@
#include "nsRuleNetwork.h"
#include "nsIXULTemplateResult.h"
#include "nsRDFBinding.h"
#include "mozilla/Attributes.h"
/**
* A single result of a query on an RDF graph
*/
class nsXULTemplateResultRDF : public nsIXULTemplateResult
class nsXULTemplateResultRDF MOZ_FINAL : public nsIXULTemplateResult
{
public:
NS_DECL_CYCLE_COLLECTING_ISUPPORTS

View File

@ -11,6 +11,7 @@
#include "nsRuleNetwork.h"
#include "nsRDFQuery.h"
#include "nsXULTemplateResultRDF.h"
#include "mozilla/Attributes.h"
class nsXULTemplateQueryProcessorRDF;
class nsXULTemplateResultRDF;
@ -18,7 +19,7 @@ class nsXULTemplateResultRDF;
/**
* An enumerator used to iterate over a set of results.
*/
class nsXULTemplateResultSetRDF : public nsISimpleEnumerator
class nsXULTemplateResultSetRDF MOZ_FINAL : public nsISimpleEnumerator
{
private:
nsXULTemplateQueryProcessorRDF* mProcessor;

View File

@ -10,11 +10,12 @@
#include "nsIRDFResource.h"
#include "nsIXULTemplateResult.h"
#include "nsAutoPtr.h"
#include "mozilla/Attributes.h"
/**
* A single result of a query from mozstorage
*/
class nsXULTemplateResultStorage : public nsIXULTemplateResult
class nsXULTemplateResultStorage MOZ_FINAL : public nsIXULTemplateResult
{
public:
NS_DECL_ISUPPORTS

View File

@ -11,11 +11,12 @@
#include "nsIRDFResource.h"
#include "nsXULTemplateQueryProcessorXML.h"
#include "nsIXULTemplateResult.h"
#include "mozilla/Attributes.h"
/**
* An single result of an query
*/
class nsXULTemplateResultXML : public nsIXULTemplateResult
class nsXULTemplateResultXML MOZ_FINAL : public nsIXULTemplateResult
{
public:
NS_DECL_ISUPPORTS

View File

@ -12,6 +12,7 @@
#include "nsIAnonymousContentCreator.h"
#include "nsICapturePicker.h"
#include "nsCOMPtr.h"
#include "mozilla/Attributes.h"
class nsTextControlFrame;
class nsIDOMDragEvent;
@ -77,7 +78,7 @@ protected:
class MouseListener;
friend class MouseListener;
class MouseListener : public nsIDOMEventListener {
class MouseListener MOZ_FINAL : public nsIDOMEventListener {
public:
NS_DECL_ISUPPORTS

View File

@ -10,13 +10,14 @@
#include "nsIDocumentViewerPrint.h"
#include "nsPrintObject.h"
#include "mozilla/Attributes.h"
class nsPrintEngine;
//---------------------------------------------------
//-- Page Timer Class
//---------------------------------------------------
class nsPagePrintTimer : public nsITimerCallback
class nsPagePrintTimer MOZ_FINAL : public nsITimerCallback
{
public:

View File

@ -12,6 +12,7 @@
#include "nsPrintObject.h"
#include "nsPrintData.h"
#include "nsFrameList.h"
#include "mozilla/Attributes.h"
// Interfaces
#include "nsIDocument.h"
@ -32,7 +33,7 @@ class nsIWeakReference;
// nsPrintEngine Class
//
//------------------------------------------------------------------------
class nsPrintEngine : public nsIObserver
class nsPrintEngine MOZ_FINAL : public nsIObserver
{
public:
// nsISupports interface...

View File

@ -12,6 +12,7 @@
#include "nsIDOMEventTarget.h"
// Helper Classes
#include "nsCOMPtr.h"
#include "mozilla/Attributes.h"
//
// class nsPrintPreviewListener
@ -21,7 +22,7 @@
// with the DOM with AddChromeListeners() and removing itself with
// RemoveChromeListeners().
//
class nsPrintPreviewListener : public nsIDOMEventListener
class nsPrintPreviewListener MOZ_FINAL : public nsIDOMEventListener
{
public:

View File

@ -15,6 +15,7 @@
#include "mozilla/dom/Element.h"
#include "nsSMILKeySpline.h"
#include "nsStyleStruct.h"
#include "mozilla/Attributes.h"
class nsPresContext;
@ -66,7 +67,7 @@ protected:
/**
* A style rule that maps property-nsStyleAnimation::Value pairs.
*/
class AnimValuesStyleRule : public nsIStyleRule
class AnimValuesStyleRule MOZ_FINAL : public nsIStyleRule
{
public:
// nsISupports implementation

View File

@ -18,6 +18,7 @@
#include "nsTArray.h"
#include "nsTObserverArray.h"
#include "nsURIHashKey.h"
#include "mozilla/Attributes.h"
class nsIAtom;
class nsICSSLoaderObserver;
@ -106,7 +107,7 @@ enum StyleSheetState {
eSheetComplete
};
class Loader {
class Loader MOZ_FINAL {
public:
Loader();
Loader(nsIDocument*);

View File

@ -10,6 +10,7 @@
#include "nsITreeBoxObject.h"
#include "nsIContent.h"
#include "nsIFrame.h"
#include "mozilla/Attributes.h"
class nsTreeBodyFrame;
class nsTreeColumns;
@ -24,7 +25,7 @@ class nsTreeColumns;
// This class is our column info. We use it to iterate our columns and to obtain
// information about each column.
class nsTreeColumn : public nsITreeColumn {
class nsTreeColumn MOZ_FINAL : public nsITreeColumn {
public:
nsTreeColumn(nsTreeColumns* aColumns, nsIContent* aContent);
~nsTreeColumn();
@ -110,7 +111,7 @@ private:
NS_DEFINE_STATIC_IID_ACCESSOR(nsTreeColumn, NS_TREECOLUMN_IMPL_CID)
class nsTreeColumns : public nsITreeColumns {
class nsTreeColumns MOZ_FINAL : public nsITreeColumns {
public:
nsTreeColumns(nsITreeBoxObject* aTree);
~nsTreeColumns();

View File

@ -15,14 +15,15 @@
#include "nsITreeView.h"
#include "nsITreeContentView.h"
#include "nsITreeSelection.h"
#include "mozilla/Attributes.h"
class Row;
nsresult NS_NewTreeContentView(nsITreeView** aResult);
class nsTreeContentView : public nsINativeTreeView,
public nsITreeContentView,
public nsStubDocumentObserver
class nsTreeContentView MOZ_FINAL : public nsINativeTreeView,
public nsITreeContentView,
public nsStubDocumentObserver
{
public:
nsTreeContentView(void);

View File

@ -11,9 +11,10 @@
#include "nsITreeColumns.h"
#include "nsStubImageDecoderObserver.h"
#include "nsTreeBodyFrame.h"
#include "mozilla/Attributes.h"
// This class handles image load observation.
class nsTreeImageListener : public nsStubImageDecoderObserver
class nsTreeImageListener MOZ_FINAL : public nsStubImageDecoderObserver
{
public:
nsTreeImageListener(nsTreeBodyFrame *aTreeFrame);