gecko-dev/dom/xml
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
resources Bug 863246 - Move resources that need to be exposed to web content to locations that are marked as contentaccessible r=billm 2017-06-08 17:52:46 +08:00
test Bug 1365506 - fix XHTML/XUL tests that use data: URI. r=smaug 2017-05-23 09:02:06 +08:00
CDATASection.cpp
CDATASection.h
ProcessingInstruction.cpp Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00
ProcessingInstruction.h
XMLDocument.cpp Bug 1393806 part 3. Change dom::ReparentWrapper to take an ErrorResult. r=peterv 2017-09-13 13:34:55 -04:00
XMLDocument.h Bug 1387956 (part 1) - Change |nsWindowSizes*| arguments to |nsWindowSizes&|. r=mccr8. 2017-08-10 14:13:22 +10:00
XMLStylesheetProcessingInstruction.cpp Bug 1395636 - Convert code to use NS_IMPL_ISUPPORTS_CYCLE_COLLECTION_INHERITED. r=peterv 2017-08-31 16:29:22 -07:00
XMLStylesheetProcessingInstruction.h
htmlmathml-f.ent
moz.build Bug 1335099 - add BUG_COMPONENT to many dom/* subdir files. r=overholt 2017-02-06 09:45:55 -05:00
nsIXMLContentSink.h Bug 1378712 - Remove all trailing whitespaces r=Ehsan 2017-07-06 14:00:35 +02:00
nsXMLContentSink.cpp Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00
nsXMLContentSink.h Bug 1384493 - LoadStyleLink and LoadInlineStyle should use correct referrer policy. r=heycam 2017-08-15 00:05:00 -04:00
nsXMLElement.cpp Bug 1355351: Add a node property to access the ::before and ::after pseudo-elements. r=heycam 2017-04-16 17:29:49 +02:00
nsXMLElement.h Bug 1359556 - Optimize cloneNode by preinitializing attribute and child arrays r=bz 2017-04-20 12:57:48 -07:00
nsXMLFragmentContentSink.cpp Bug 1391005 - Eliminate NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED. r=peterv 2017-08-29 16:02:48 -07:00
nsXMLPrettyPrinter.cpp Bug 1378712 - Remove all trailing whitespaces r=Ehsan 2017-07-06 14:00:35 +02:00
nsXMLPrettyPrinter.h