зеркало из https://github.com/mozilla/gecko-dev.git
dfd3b7e7aa
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 |
||
---|---|---|
.. | ||
gtest | ||
unit | ||
windows | ||
Makefile.in | ||
NotXPCOMTest.idl | ||
RegFactory.cpp | ||
SizeTest01.cpp | ||
SizeTest02.cpp | ||
SizeTest03.cpp | ||
SizeTest04.cpp | ||
SizeTest05.cpp | ||
SizeTest06.cpp | ||
TestArguments.cpp | ||
TestBlockingProcess.cpp | ||
TestHarness.h | ||
TestPRIntN.cpp | ||
TestQuickReturn.cpp | ||
TestShutdown.cpp | ||
TestStackCrawl.cpp | ||
TestStreamUtils.cpp | ||
TestUnicodeArguments.cpp | ||
TestWinReg.js | ||
TestingAtomList.h | ||
moz.build | ||
resources.h | ||
test.properties |