gecko-dev/parser/htmlparser
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
..
tests Bug 863246 - Fix test failures r=Gijs 2017-07-19 17:30:01 +08:00
CNavDTD.cpp
CNavDTD.h
CParserContext.cpp Bug 1378011 (part 1) - Remove nsToken.h, because it is unused. r=mrbkap. 2017-07-04 11:25:09 +10:00
CParserContext.h
moz.build Bug 1395828 (part 4) - Remove nsIParserService/nsParserService. r=mrbkap. 2017-09-05 20:19:06 +10:00
nsElementTable.cpp Bug 1403150 - Ignore the formatting on gHTMLElements r=smaug 2017-09-26 14:40:06 +02:00
nsElementTable.h Bug 1400777 (part 5) - Clean up nsElementTable.{cpp,h}. r=mrbkap. 2017-09-20 08:32:51 +10:00
nsExpatDriver.cpp Bug 1388253 - Convert nsTextFormatter:[v]smprintf() use to [v]ssprintf(). r=erahm. 2017-08-09 10:41:14 +10:00
nsExpatDriver.h
nsHTMLTagList.h Bug 1396584 - Remove support for multiple ShadowRoots, r=mrbkap 2017-09-25 18:09:26 +03:00
nsHTMLTags.cpp Bug 1400459 (part 2) - Devirtualize nsIAtom. r=heycam. 2017-09-26 08:33:21 +10:00
nsHTMLTags.h Bug 1400777 (part 1) - Remove eHTMLTags. r=mrbkap. 2017-09-19 11:07:49 +10:00
nsHTMLTokenizer.cpp Bug 1325494 (part 5) - Slim down nsParserConstants.h. r=hsivonen. 2016-12-23 13:51:04 +11:00
nsHTMLTokenizer.h
nsIContentSink.h Bug 1373984 - Turn nsIDocument::mCharacterSet into mozilla::NotNull<const mozilla::Encoding*>. r=hsivonen 2017-06-18 20:37:50 +09:00
nsIDTD.h
nsIExpatSink.idl
nsIExtendedExpatSink.idl
nsIFragmentContentSink.h
nsIHTMLContentSink.h
nsIParser.h Bug 1391803 - Use nsStringFwd.h for forward declaring string classes. r=froydnj 2017-08-16 16:48:52 -07:00
nsITokenizer.h
nsParser.cpp merge mozilla-inbound to mozilla-central a=merge 2017-06-27 10:56:41 +02:00
nsParser.h Bug 1373984 - Turn nsIDocument::mCharacterSet into mozilla::NotNull<const mozilla::Encoding*>. r=hsivonen 2017-06-18 20:37:50 +09:00
nsParserBase.h
nsParserCIID.h Bug 1402769 - Remove unused stuff in and around nsParserModule.cpp. r=mrbkap. 2017-09-05 20:43:30 +10:00
nsParserConstants.h Bug 1325494 (part 5) - Slim down nsParserConstants.h. r=hsivonen. 2016-12-23 13:51:04 +11:00
nsParserModule.cpp Bug 1402769 - Remove unused stuff in and around nsParserModule.cpp. r=mrbkap. 2017-09-05 20:43:30 +10:00
nsParserMsgUtils.cpp Bug 1390428 (part 9) - Remove nsXPIDLCString. r=erahm. 2017-08-17 15:29:03 +10:00
nsParserMsgUtils.h
nsScanner.cpp Bug 1373984 - Turn nsIDocument::mCharacterSet into mozilla::NotNull<const mozilla::Encoding*>. r=hsivonen 2017-06-18 20:37:50 +09:00
nsScanner.h Bug 1373984 - Turn nsIDocument::mCharacterSet into mozilla::NotNull<const mozilla::Encoding*>. r=hsivonen 2017-06-18 20:37:50 +09:00
nsScannerString.cpp Bug 1374580 (part 3) - Remove ns{,C}Substring typedefs. r=froydnj. 2017-06-20 19:19:52 +10:00
nsScannerString.h Bug 1374580 (part 3) - Remove ns{,C}Substring typedefs. r=froydnj. 2017-06-20 19:19:52 +10:00