gecko-dev/layout/build
Gerald Squelart b099eab802 Bug 1488684 - Made nsIFrame-derived classes and some others 'final' where possible - r=dbaron
All classes deriving from nsIFrame that did not have any subclasses themselves
(at the time of writing this patch) have been marked with `final`.
Some other Layout classes have also been made final, but this was opportunistic
while working on nsIFrame subclasses, and is definitely not exhaustive, further
patches welcome; refer to bug 1332680.

Advantages of marking a class final include:
- Allowing the compiler to devirtualize some method calls (i.e., calling
  virtual functions directly instead of going through the vtable),
- Indicating that the class is not currently subclassed,
- Preventing subclassing without being aware that this would remove the
  finalization benefits of the parent class.
`final` does not signify that these classes should *never* be subclassed, this
is left for developers to decide.

Differential Revision: https://phabricator.services.mozilla.com/D5020

--HG--
extra : moz-landing-system : lando
2018-09-06 01:23:14 +00:00
..
moz.build Bug 1447924 - part 3: Rename nsTransactionStack to mozilla::TransactionStack r=m_kato 2018-03-22 23:30:48 +09:00
nsContentDLF.cpp Bug 1457813 - Part 2: Replace non-asserting NS_PRECONDITIONs with MOZ_ASSERTs. r=froydnj 2018-04-28 12:50:58 -07:00
nsContentDLF.h Bug 1488684 - Made nsIFrame-derived classes and some others 'final' where possible - r=dbaron 2018-09-06 01:23:14 +00:00
nsLayoutCID.h Bug 1361330 - Part 4: Core implementation; r=asuth 2018-08-20 14:33:03 +02:00
nsLayoutModule.cpp Bug 1488112 - Remove the XPCOM component registration for nsBaseCommandController; r=qdot 2018-09-04 15:03:22 -04:00
nsLayoutStatics.cpp Bug 1486370 - Change nsAutoCopyListener to a static class r=smaug 2018-08-30 07:36:23 +00:00
nsLayoutStatics.h Bug 1412346 part 5: (automated patch) Switch a bunch of C++ files in layout to use our standard mode lines. r=jfkthame 2017-10-27 10:33:53 -07:00