gecko-dev/dom/xul/templates
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
..
crashtests
tests/chrome
moz.build
nsContentSupportMap.cpp
nsContentSupportMap.h
nsContentTestNode.cpp
nsContentTestNode.h Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00
nsInstantiationNode.cpp
nsInstantiationNode.h
nsIXULBuilderListener.idl
nsIXULSortService.idl
nsIXULTemplateBuilder.idl
nsIXULTemplateQueryProcessor.idl
nsIXULTemplateResult.idl
nsIXULTemplateRuleFilter.idl
nsRDFBinding.cpp
nsRDFBinding.h Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00
nsRDFConInstanceTestNode.cpp
nsRDFConInstanceTestNode.h Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00
nsRDFConMemberTestNode.cpp
nsRDFConMemberTestNode.h Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00
nsRDFPropertyTestNode.cpp
nsRDFPropertyTestNode.h Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00
nsRDFQuery.cpp
nsRDFQuery.h Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00
nsRDFTestNode.h
nsResourceSet.cpp
nsResourceSet.h
nsRuleNetwork.cpp
nsRuleNetwork.h Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00
nsTemplateMap.h
nsTemplateMatch.cpp
nsTemplateMatch.h
nsTemplateRule.cpp
nsTemplateRule.h Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00
nsTreeRows.cpp
nsTreeRows.h
nsXMLBinding.cpp
nsXMLBinding.h Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00
nsXULContentBuilder.cpp Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00
nsXULContentUtils.cpp
nsXULContentUtils.h
nsXULResourceList.h
nsXULSortService.cpp Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00
nsXULSortService.h Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00
nsXULTemplateBuilder.cpp Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00
nsXULTemplateBuilder.h Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00
nsXULTemplateQueryProcessorRDF.cpp Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00
nsXULTemplateQueryProcessorRDF.h Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00
nsXULTemplateQueryProcessorStorage.cpp Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00
nsXULTemplateQueryProcessorStorage.h Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00
nsXULTemplateQueryProcessorXML.cpp Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00
nsXULTemplateQueryProcessorXML.h Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00
nsXULTemplateResultRDF.cpp
nsXULTemplateResultRDF.h
nsXULTemplateResultSetRDF.cpp
nsXULTemplateResultSetRDF.h
nsXULTemplateResultStorage.cpp
nsXULTemplateResultStorage.h
nsXULTemplateResultXML.cpp Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00
nsXULTemplateResultXML.h
nsXULTreeBuilder.cpp Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00
nsXULTreeBuilder.h Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00