mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-27 23:02:20 +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 |
||
---|---|---|
.. | ||
tests | ||
BasePrincipal.cpp | ||
BasePrincipal.h | ||
ContentPrincipal.cpp | ||
ContentPrincipal.h | ||
DomainPolicy.cpp | ||
DomainPolicy.h | ||
ExpandedPrincipal.cpp | ||
ExpandedPrincipal.h | ||
moz.build | ||
nsIAddonPolicyService.idl | ||
nsIDomainPolicy.idl | ||
nsIPrincipal.idl | ||
nsIScriptSecurityManager.idl | ||
nsJSPrincipals.cpp | ||
nsJSPrincipals.h | ||
nsScriptSecurityManager.cpp | ||
nsScriptSecurityManager.h | ||
NullPrincipal.cpp | ||
NullPrincipal.h | ||
NullPrincipalURI.cpp | ||
NullPrincipalURI.h | ||
OriginAttributes.cpp | ||
OriginAttributes.h | ||
SystemPrincipal.cpp | ||
SystemPrincipal.h |