mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-25 03:05:34 +00:00
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 |
||
---|---|---|
.. | ||
crashtests | ||
moz.build | ||
nsITreeBoxObject.idl | ||
nsITreeColumns.idl | ||
nsITreeContentView.idl | ||
nsITreeSelection.idl | ||
nsITreeView.idl | ||
nsTreeBodyFrame.cpp | ||
nsTreeBodyFrame.h | ||
nsTreeColFrame.cpp | ||
nsTreeColFrame.h | ||
nsTreeColumns.cpp | ||
nsTreeColumns.h | ||
nsTreeContentView.cpp | ||
nsTreeContentView.h | ||
nsTreeImageListener.cpp | ||
nsTreeImageListener.h | ||
nsTreeSelection.cpp | ||
nsTreeSelection.h | ||
nsTreeStyleCache.cpp | ||
nsTreeStyleCache.h | ||
nsTreeUtils.cpp | ||
nsTreeUtils.h | ||
TreeBoxObject.cpp | ||
TreeBoxObject.h |