gecko-dev/xpcom/tests
Nicholas Nethercote dfd3b7e7aa Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam.
This patch merges nsAtom into nsIAtom. For the moment, both names can be used
interchangeably due to a typedef. The patch also devirtualizes nsIAtom, by
making it not inherit from nsISupports, removing NS_DECL_NSIATOM, and dropping
the use of NS_IMETHOD_. It also removes nsIAtom's IIDs.

These changes trigger knock-on changes throughout the codebase, changing the
types of lots of things as follows.

- nsCOMPtr<nsIAtom> --> RefPtr<nsIAtom>

- nsCOMArray<nsIAtom> --> nsTArray<RefPtr<nsIAtom>>
  - Count() --> Length()
  - ObjectAt() --> ElementAt()
  - AppendObject() --> AppendElement()
  - RemoveObjectAt() --> RemoveElementAt()

- ns*Hashtable<nsISupportsHashKey, ...> -->
  ns*Hashtable<nsRefPtrHashKey<nsIAtom>, ...>

- nsInterfaceHashtable<T, nsIAtom> --> nsRefPtrHashtable<T, nsIAtom>
  - This requires adding a Get() method to nsRefPtrHashtable that it lacks but
    nsInterfaceHashtable has.

- nsCOMPtr<nsIMutableArray> --> nsTArray<RefPtr<nsIAtom>>
  - nsArrayBase::Create() --> nsTArray()
  - GetLength() --> Length()
  - do_QueryElementAt() --> operator[]

The patch also has some changes to Rust code that manipulates nsIAtom.

MozReview-Commit-ID: DykOl8aEnUJ

--HG--
extra : rebase_source : 254404e318e94b4c93ec8d4081ff0f0fda8aa7d1
2017-09-26 08:33:21 +10:00
..
gtest Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00
unit Bug 1394989 - Prevent test_nsIProcess.js from running on linux64-ccov. r=Aryx 2017-09-03 17:46:57 -04:00
windows Bug 1378712 - Remove all trailing whitespaces r=Ehsan 2017-07-06 14:00:35 +02:00
Makefile.in Bug 1333135 - Install test programs from xpcom/tests with moz.build rather than Makefile.in. r=mshal 2017-01-27 13:57:04 -08:00
NotXPCOMTest.idl
RegFactory.cpp Bug 1378712 - Remove all trailing whitespaces r=Ehsan 2017-07-06 14:00:35 +02:00
SizeTest01.cpp
SizeTest02.cpp Bug 1378712 - Remove all trailing whitespaces r=Ehsan 2017-07-06 14:00:35 +02:00
SizeTest03.cpp Bug 1378712 - Remove all trailing whitespaces r=Ehsan 2017-07-06 14:00:35 +02:00
SizeTest04.cpp
SizeTest05.cpp
SizeTest06.cpp Bug 1378712 - Remove all trailing whitespaces r=Ehsan 2017-07-06 14:00:35 +02:00
TestArguments.cpp Bug 1378712 - Remove all trailing whitespaces r=Ehsan 2017-07-06 14:00:35 +02:00
TestBlockingProcess.cpp Bug 1317638 - Fix build fail in TestBlockingProcess.cpp if enabling warnings as errors. r=erahm 2016-11-15 16:33:59 +08:00
TestHarness.h Bug 870698 - Part 4: Replace Equals("") with EqualsLiteral(""). r=erahm 2017-09-06 01:13:45 -07:00
TestPRIntN.cpp
TestQuickReturn.cpp
TestShutdown.cpp
TestStackCrawl.cpp
TestStreamUtils.cpp Bug 1378712 - Remove all trailing whitespaces r=Ehsan 2017-07-06 14:00:35 +02:00
TestUnicodeArguments.cpp
TestWinReg.js
TestingAtomList.h
moz.build Bug 1333135 - Install test programs from xpcom/tests with moz.build rather than Makefile.in. r=mshal 2017-01-27 13:57:04 -08:00
resources.h
test.properties