--- a/parser/html/nsHtml5AttributeName.cpp
+++ b/parser/html/nsHtml5AttributeName.cpp
@@ -96,42 +96,40 @@ nsHtml5AttributeName::SAME_LOCAL(nsIAtom
{
nsIAtom** arr = new nsIAtom*[4];
arr[0] = name;
arr[1] = name;
arr[2] = name;
return arr;
}
-nsHtml5AttributeName::nsHtml5AttributeName(int32_t* uri,
- nsIAtom** local,
- nsIAtom** prefix)
- : uri(uri)
- , local(local)
- , prefix(prefix)
- , custom(false)
+
+nsHtml5AttributeName::nsHtml5AttributeName(int32_t* uri, nsIAtom** local, nsIAtom** prefix)
+ : uri(uri),
+ local(local),
+ prefix(prefix),
+ custom(false)
{
MOZ_COUNT_CTOR(nsHtml5AttributeName);
}
+
nsHtml5AttributeName::nsHtml5AttributeName()
- : uri(nsHtml5AttributeName::ALL_NO_NS)
- , local(nsHtml5AttributeName::SAME_LOCAL(nullptr))
- , prefix(ALL_NO_PREFIX)
- , custom(true)
+ : uri(nsHtml5AttributeName::ALL_NO_NS),
+ local(nsHtml5AttributeName::SAME_LOCAL(nullptr)),
+ prefix(ALL_NO_PREFIX),
+ custom(true)
{
MOZ_COUNT_CTOR(nsHtml5AttributeName);
}
-nsHtml5AttributeName*
+nsHtml5AttributeName*
nsHtml5AttributeName::createAttributeName(nsIAtom* name)
{
- return new nsHtml5AttributeName(nsHtml5AttributeName::ALL_NO_NS,
- nsHtml5AttributeName::SAME_LOCAL(name),
- ALL_NO_PREFIX);
+ return new nsHtml5AttributeName(nsHtml5AttributeName::ALL_NO_NS, nsHtml5AttributeName::SAME_LOCAL(name), ALL_NO_PREFIX);
}
nsHtml5AttributeName::~nsHtml5AttributeName()
{
MOZ_COUNT_DTOR(nsHtml5AttributeName);
delete[] local;
}
@@ -152,18 +150,17 @@ nsIAtom*
nsHtml5AttributeName::getPrefix(int32_t mode)
{
return prefix[mode];
}
bool
nsHtml5AttributeName::equalsAnother(nsHtml5AttributeName* another)
{
- return this->getLocal(nsHtml5AttributeName::HTML) ==
- another->getLocal(nsHtml5AttributeName::HTML);
+ return this->getLocal(nsHtml5AttributeName::HTML) == another->getLocal(nsHtml5AttributeName::HTML);
}
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ALT = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_DIR = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_DUR = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_END = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_FOR = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_IN2 = nullptr;
@@ -209,18 +206,17 @@ nsHtml5AttributeName* nsHtml5AttributeNa
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ARIA_INVALID = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ARIA_TEMPLATEID = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ARIA_VALUEMIN = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ARIA_MULTISELECTABLE = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ARIA_CONTROLS = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ARIA_MULTILINE = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ARIA_READONLY = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ARIA_OWNS = nullptr;
-nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ARIA_ACTIVEDESCENDANT =
- nullptr;
+nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ARIA_ACTIVEDESCENDANT = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ARIA_RELEVANT = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ARIA_DATATYPE = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ARIA_VALUENOW = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ARIA_SORT = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ARIA_AUTOCOMPLETE = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ARIA_FLOWTO = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ARIA_BUSY = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ARIA_LIVE = nullptr;
@@ -472,18 +468,17 @@ nsHtml5AttributeName* nsHtml5AttributeNa
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_AUTOPLAY = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_AUTOCOMPLETE = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_AUTOFOCUS = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_BGCOLOR = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_COLOR_PROFILE = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_COLOR_RENDERING = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_COLOR_INTERPOLATION = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_COLOR = nullptr;
-nsHtml5AttributeName* nsHtml5AttributeName::ATTR_COLOR_INTERPOLATION_FILTERS =
- nullptr;
+nsHtml5AttributeName* nsHtml5AttributeName::ATTR_COLOR_INTERPOLATION_FILTERS = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ENCODING = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_EXPONENT = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_FLOOD_COLOR = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_FLOOD_OPACITY = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_LQUOTE = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_NUMOCTAVES = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ONLOAD = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_ONMOUSEWHEEL = nullptr;
@@ -513,20 +508,18 @@ nsHtml5AttributeName* nsHtml5AttributeNa
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_STROKE_OPACITY = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_COMPACT = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_CLIP = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_CLIP_RULE = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_CLIP_PATH = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_CLIPPATHUNITS = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_DISPLAY = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_DISPLAYSTYLE = nullptr;
-nsHtml5AttributeName* nsHtml5AttributeName::ATTR_GLYPH_ORIENTATION_VERTICAL =
- nullptr;
-nsHtml5AttributeName* nsHtml5AttributeName::ATTR_GLYPH_ORIENTATION_HORIZONTAL =
- nullptr;
+nsHtml5AttributeName* nsHtml5AttributeName::ATTR_GLYPH_ORIENTATION_VERTICAL = nullptr;
+nsHtml5AttributeName* nsHtml5AttributeName::ATTR_GLYPH_ORIENTATION_HORIZONTAL = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_GLYPHREF = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_HTTP_EQUIV = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_KEYPOINTS = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_LOOP = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_PROPERTY = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_SCOPED = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_STEP = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_SHAPE_RENDERING = nullptr;
@@ -652,100 +645,17 @@ nsHtml5AttributeName* nsHtml5AttributeNa
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_REFX = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_BY = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_CY = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_DY = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_FY = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_RY = nullptr;
nsHtml5AttributeName* nsHtml5AttributeName::ATTR_REFY = nullptr;
nsHtml5AttributeName** nsHtml5AttributeName::ATTRIBUTE_NAMES = 0;
-static int32_t const ATTRIBUTE_HASHES_DATA[] = {
- 1872034503, 1748971848, 1972744954, 1680511804, 1786740932, 1917953597,
- 2007021895, 1680159328, 1723309623, 1754907227, 1820262641, 1905902311,
- 1933123337, 1991625270, 2026893641, 71827457, 1680251485, 1689130184,
- 1747295467, 1754606246, 1757053236, 1804069019, 1854302364, 1889633006,
- 1910503637, 1922679610, 1941440197, 1983347764, 2001710298, 2016810187,
- 2073034754, 57205395, 911736834, 1680181850, 1680347981, 1684319541,
- 1704262346, 1734404167, 1747906667, 1752985897, 1754792749, 1756471625,
- 1776114564, 1790814502, 1814558026, 1823841492, 1864698185, 1881750231,
- 1902640276, 1908462185, 1916210285, 1922566877, 1924583073, 1937336473,
- 1966384692, 1972996699, 1988784439, 2000752725, 2004846654, 2009079867,
- 2024647008, 2060474743, 2082471938, 53006051, 60345635, 885522434,
- 1038141480, 1680165487, 1680198381, 1680323325, 1680433915, 1681969220,
- 1687164232, 1691145478, 1716303957, 1732771842, 1740096054, 1747479606,
- 1748503880, 1749856356, 1754214628, 1754645079, 1754858317, 1756190926,
- 1756804936, 1767875272, 1782518297, 1787193500, 1801312388, 1804978712,
- 1814986837, 1822002839, 1825677514, 1854474395, 1867448617, 1874261045,
- 1884267068, 1894552650, 1905541832, 1906421049, 1910441627, 1915025672,
- 1916337499, 1922400908, 1922665179, 1924443742, 1924773438, 1934917290,
- 1941286708, 1943317364, 1972151670, 1972908839, 1982640164, 1983461061,
- 1990107683, 2000096287, 2001634458, 2001826027, 2006459190, 2008401563,
- 2010716309, 2019887833, 2024794274, 2034765641, 2065694722, 2081423362,
- 2089811970, 52488851, 55077603, 59825747, 68157441, 878182402,
- 901775362, 1037879561, 1680140893, 1680165436, 1680165613, 1680185931,
- 1680230940, 1680311085, 1680345685, 1680411449, 1680446153, 1681733672,
- 1682587945, 1685902598, 1687751191, 1689788441, 1692933184, 1714745560,
- 1721305962, 1723336528, 1733919469, 1739583824, 1740130375, 1747309881,
- 1747800157, 1748021284, 1748566068, 1749350104, 1751679545, 1753297133,
- 1754546894, 1754643237, 1754647353, 1754798923, 1754872618, 1754958648,
- 1756302628, 1756737685, 1756874572, 1765800271, 1772032615, 1780975314,
- 1785174319, 1786821704, 1788254870, 1791070327, 1804036350, 1804235064,
- 1805715716, 1814656326, 1816144023, 1820928104, 1823580230, 1824377064,
- 1853862084, 1854464212, 1854497003, 1865910347, 1867620412, 1873590471,
- 1874698443, 1884142379, 1884343396, 1891186903, 1898428101, 1903659239,
- 1905672729, 1906408598, 1907660596, 1909819252, 1910441773, 1910527802,
- 1915341049, 1916278099, 1917327080, 1921894426, 1922413307, 1922607670,
- 1922677495, 1923088386, 1924517489, 1924629705, 1932959284, 1933369607,
- 1934970504, 1939976792, 1941435445, 1941550652, 1965512429, 1966442279,
- 1972656710, 1972904518, 1972922984, 1975062341, 1983266615, 1983416119,
- 1987422362, 1989522022, 1991220282, 1993343287, 2000160071, 2001527900,
- 2001669449, 2001732764, 2001898809, 2005342360, 2006824246, 2007064819,
- 2009041198, 2009231684, 2016711994, 2017010843, 2023342821, 2024763702,
- 2026741958, 2026975253, 2060302634, 2065170434, 2066743298, 2075005220,
- 2081947650, 2083520514, 2091784484, 50917059, 52489043, 53537523,
- 56685811, 57210387, 59830867, 60817409, 71303169, 72351745,
- 884998146, 894959618, 902299650, 928514050, 1038063816, 1680095865,
- 1680159327, 1680165421, 1680165437, 1680165533, 1680165692, 1680181996,
- 1680198203, 1680229115, 1680231247, 1680282148, 1680315086, 1680343801,
- 1680345965, 1680368221, 1680413393, 1680437801, 1680452349, 1681174213,
- 1681879063, 1682440540, 1683805446, 1685882101, 1686731997, 1687620127,
- 1689048326, 1689324870, 1689839946, 1692408896, 1699185409, 1704526375,
- 1714763319, 1721189160, 1721347639, 1723336432, 1731048742, 1733874289,
- 1734182982, 1739561208, 1739927860, 1740119884, 1742183484, 1747299630,
- 1747446838, 1747792072, 1747839118, 1747939528, 1748306996, 1748552744,
- 1748869205, 1749027145, 1749399124, 1751507685, 1751755561, 1753049109,
- 1753550036, 1754434872, 1754579720, 1754612424, 1754644293, 1754647074,
- 1754698327, 1754794646, 1754835516, 1754860061, 1754899031, 1754927689,
- 1756147974, 1756219733, 1756360955, 1756704824, 1756762256, 1756836998,
- 1756889417, 1757421892, 1767725700, 1771569964, 1773606972, 1780879045,
- 1781007934, 1784574102, 1786622296, 1786775671, 1786851500, 1787365531,
- 1788842244, 1791068279, 1797886599, 1803561214, 1804054854, 1804081401,
- 1804405895, 1805715690, 1814517574, 1814560070, 1814656840, 1816104145,
- 1816178925, 1820727381, 1821958888, 1823574314, 1823829083, 1824159037,
- 1825437894, 1848600826, 1854285018, 1854366938, 1854466380, 1854497001,
- 1854497008, 1865910331, 1866496199, 1867462756, 1871251689, 1872343590,
- 1873656984, 1874270021, 1874788501, 1884079398, 1884246821, 1884295780,
- 1889569526, 1890996553, 1891937366, 1898415413, 1900544002, 1903612236,
- 1903759600, 1905628916, 1905754853, 1906408542, 1906419001, 1906423097,
- 1907701479, 1909438149, 1910328970, 1910441770, 1910487243, 1910507338,
- 1910572893, 1915295948, 1915757815, 1916247343, 1916286197, 1917295176,
- 1917857531, 1921061206, 1922319046, 1922413292, 1922470745, 1922567078,
- 1922665052, 1922671417, 1922679386, 1922699851, 1924206934, 1924462384,
- 1924570799, 1924585254, 1924738716, 1932870919, 1932986153, 1933145837,
- 1933508940, 1934917372, 1935597338, 1937777860, 1941253366, 1941409583,
- 1941438085, 1941454586, 1942026440, 1965349396, 1965561677, 1966439670,
- 1966454567, 1972196486, 1972744939, 1972863609, 1972904522, 1972909592,
- 1972962123, 1974849131, 1982254612, 1983157559, 1983290011, 1983398182,
- 1983432389, 1987410233, 1988132214, 1988788535, 1990062797, 1991021879,
- 1991392548, 1991643278, 1999273799, 2000125224, 2000162011, 2001210183,
- 2001578182, 2001634459, 2001669450, 2001710299, 2001814704, 2001898808,
- 2004199576, 2004957380, 2005925890, 2006516551, 2007019632, 2007064812,
- 2008084807, 2008408414, 2009071951, 2009141482, 2010452700, 2015950026,
- 2016787611, 2016910397, 2018908874, 2023146024, 2024616088
-};
+static int32_t const ATTRIBUTE_HASHES_DATA[] = { 1872034503, 1748971848, 1972744954, 1680511804, 1786740932, 1917953597, 2007021895, 1680159328, 1723309623, 1754907227, 1820262641, 1905902311, 1933123337, 1991625270, 2026893641, 71827457, 1680251485, 1689130184, 1747295467, 1754606246, 1757053236, 1804069019, 1854302364, 1889633006, 1910503637, 1922679610, 1941440197, 1983347764, 2001710298, 2016810187, 2073034754, 57205395, 911736834, 1680181850, 1680347981, 1684319541, 1704262346, 1734404167, 1747906667, 1752985897, 1754792749, 1756471625, 1776114564, 1790814502, 1814558026, 1823841492, 1864698185, 1881750231, 1902640276, 1908462185, 1916210285, 1922566877, 1924583073, 1937336473, 1966384692, 1972996699, 1988784439, 2000752725, 2004846654, 2009079867, 2024647008, 2060474743, 2082471938, 53006051, 60345635, 885522434, 1038141480, 1680165487, 1680198381, 1680323325, 1680433915, 1681969220, 1687164232, 1691145478, 1716303957, 1732771842, 1740096054, 1747479606, 1748503880, 1749856356, 1754214628, 1754645079, 1754858317, 1756190926, 1756804936, 1767875272, 1782518297, 1787193500, 1801312388, 1804978712, 1814986837, 1822002839, 1825677514, 1854474395, 1867448617, 1874261045, 1884267068, 1894552650, 1905541832, 1906421049, 1910441627, 1915025672, 1916337499, 1922400908, 1922665179, 1924443742, 1924773438, 1934917290, 1941286708, 1943317364, 1972151670, 1972908839, 1982640164, 1983461061, 1990107683, 2000096287, 2001634458, 2001826027, 2006459190, 2008401563, 2010716309, 2019887833, 2024794274, 2034765641, 2065694722, 2081423362, 2089811970, 52488851, 55077603, 59825747, 68157441, 878182402, 901775362, 1037879561, 1680140893, 1680165436, 1680165613, 1680185931, 1680230940, 1680311085, 1680345685, 1680411449, 1680446153, 1681733672, 1682587945, 1685902598, 1687751191, 1689788441, 1692933184, 1714745560, 1721305962, 1723336528, 1733919469, 1739583824, 1740130375, 1747309881, 1747800157, 1748021284, 1748566068, 1749350104, 1751679545, 1753297133, 1754546894, 1754643237, 1754647353, 1754798923, 1754872618, 1754958648, 1756302628, 1756737685, 1756874572, 1765800271, 1772032615, 1780975314, 1785174319, 1786821704, 1788254870, 1791070327, 1804036350, 1804235064, 1805715716, 1814656326, 1816144023, 1820928104, 1823580230, 1824377064, 1853862084, 1854464212, 1854497003, 1865910347, 1867620412, 1873590471, 1874698443, 1884142379, 1884343396, 1891186903, 1898428101, 1903659239, 1905672729, 1906408598, 1907660596, 1909819252, 1910441773, 1910527802, 1915341049, 1916278099, 1917327080, 1921894426, 1922413307, 1922607670, 1922677495, 1923088386, 1924517489, 1924629705, 1932959284, 1933369607, 1934970504, 1939976792, 1941435445, 1941550652, 1965512429, 1966442279, 1972656710, 1972904518, 1972922984, 1975062341, 1983266615, 1983416119, 1987422362, 1989522022, 1991220282, 1993343287, 2000160071, 2001527900, 2001669449, 2001732764, 2001898809, 2005342360, 2006824246, 2007064819, 2009041198, 2009231684, 2016711994, 2017010843, 2023342821, 2024763702, 2026741958, 2026975253, 2060302634, 2065170434, 2066743298, 2075005220, 2081947650, 2083520514, 2091784484, 50917059, 52489043, 53537523, 56685811, 57210387, 59830867, 60817409, 71303169, 72351745, 884998146, 894959618, 902299650, 928514050, 1038063816, 1680095865, 1680159327, 1680165421, 1680165437, 1680165533, 1680165692, 1680181996, 1680198203, 1680229115, 1680231247, 1680282148, 1680315086, 1680343801, 1680345965, 1680368221, 1680413393, 1680437801, 1680452349, 1681174213, 1681879063, 1682440540, 1683805446, 1685882101, 1686731997, 1687620127, 1689048326, 1689324870, 1689839946, 1692408896, 1699185409, 1704526375, 1714763319, 1721189160, 1721347639, 1723336432, 1731048742, 1733874289, 1734182982, 1739561208, 1739927860, 1740119884, 1742183484, 1747299630, 1747446838, 1747792072, 1747839118, 1747939528, 1748306996, 1748552744, 1748869205, 1749027145, 1749399124, 1751507685, 1751755561, 1753049109, 1753550036, 1754434872, 1754579720, 1754612424, 1754644293, 1754647074, 1754698327, 1754794646, 1754835516, 1754860061, 1754899031, 1754927689, 1756147974, 1756219733, 1756360955, 1756704824, 1756762256, 1756836998, 1756889417, 1757421892, 1767725700, 1771569964, 1773606972, 1780879045, 1781007934, 1784574102, 1786622296, 1786775671, 1786851500, 1787365531, 1788842244, 1791068279, 1797886599, 1803561214, 1804054854, 1804081401, 1804405895, 1805715690, 1814517574, 1814560070, 1814656840, 1816104145, 1816178925, 1820727381, 1821958888, 1823574314, 1823829083, 1824159037, 1825437894, 1848600826, 1854285018, 1854366938, 1854466380, 1854497001, 1854497008, 1865910331, 1866496199, 1867462756, 1871251689, 1872343590, 1873656984, 1874270021, 1874788501, 1884079398, 1884246821, 1884295780, 1889569526, 1890996553, 1891937366, 1898415413, 1900544002, 1903612236, 1903759600, 1905628916, 1905754853, 1906408542, 1906419001, 1906423097, 1907701479, 1909438149, 1910328970, 1910441770, 1910487243, 1910507338, 1910572893, 1915295948, 1915757815, 1916247343, 1916286197, 1917295176, 1917857531, 1921061206, 1922319046, 1922413292, 1922470745, 1922567078, 1922665052, 1922671417, 1922679386, 1922699851, 1924206934, 1924462384, 1924570799, 1924585254, 1924738716, 1932870919, 1932986153, 1933145837, 1933508940, 1934917372, 1935597338, 1937777860, 1941253366, 1941409583, 1941438085, 1941454586, 1942026440, 1965349396, 1965561677, 1966439670, 1966454567, 1972196486, 1972744939, 1972863609, 1972904522, 1972909592, 1972962123, 1974849131, 1982254612, 1983157559, 1983290011, 1983398182, 1983432389, 1987410233, 1988132214, 1988788535, 1990062797, 1991021879, 1991392548, 1991643278, 1999273799, 2000125224, 2000162011, 2001210183, 2001578182, 2001634459, 2001669450, 2001710299, 2001814704, 2001898808, 2004199576, 2004957380, 2005925890, 2006516551, 2007019632, 2007064812, 2008084807, 2008408414, 2009071951, 2009141482, 2010452700, 2015950026, 2016787611, 2016910397, 2018908874, 2023146024, 2024616088 };
staticJArray<int32_t,int32_t> nsHtml5AttributeName::ATTRIBUTE_HASHES = { ATTRIBUTE_HASHES_DATA, MOZ_ARRAY_LENGTH(ATTRIBUTE_HASHES_DATA) };
void
nsHtml5AttributeName::initializeStatics()
{
ALL_NO_NS = new int32_t[3];
ALL_NO_NS[0] = kNameSpaceID_None;
ALL_NO_NS[1] = kNameSpaceID_None;
ALL_NO_NS[2] = kNameSpaceID_None;
@@ -772,1136 +682,507 @@ nsHtml5AttributeName::initializeStatics(
XLINK_PREFIX = new nsIAtom*[3];
XLINK_PREFIX[0] = nullptr;
XLINK_PREFIX[1] = nsGkAtoms::xlink;
XLINK_PREFIX[2] = nsGkAtoms::xlink;
XML_PREFIX = new nsIAtom*[3];
XML_PREFIX[0] = nullptr;
XML_PREFIX[1] = nsGkAtoms::xml;
XML_PREFIX[2] = nsGkAtoms::xml;
- ATTR_ALT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::alt), ALL_NO_PREFIX);
- ATTR_DIR = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::dir), ALL_NO_PREFIX);
- ATTR_DUR = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::dur), ALL_NO_PREFIX);
- ATTR_END = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::end), ALL_NO_PREFIX);
- ATTR_FOR = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::_for), ALL_NO_PREFIX);
- ATTR_IN2 = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::in2), ALL_NO_PREFIX);
- ATTR_LOW = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::low), ALL_NO_PREFIX);
- ATTR_MIN = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::min), ALL_NO_PREFIX);
- ATTR_MAX = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::max), ALL_NO_PREFIX);
- ATTR_REL = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rel), ALL_NO_PREFIX);
- ATTR_REV = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rev), ALL_NO_PREFIX);
- ATTR_SRC = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::src), ALL_NO_PREFIX);
- ATTR_D = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::d), ALL_NO_PREFIX);
- ATTR_R = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::r), ALL_NO_PREFIX);
- ATTR_X = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::x), ALL_NO_PREFIX);
- ATTR_Y = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::y), ALL_NO_PREFIX);
- ATTR_Z = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::z), ALL_NO_PREFIX);
- ATTR_K1 = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::k1), ALL_NO_PREFIX);
- ATTR_X1 = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::x1), ALL_NO_PREFIX);
- ATTR_Y1 = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::y1), ALL_NO_PREFIX);
- ATTR_K2 = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::k2), ALL_NO_PREFIX);
- ATTR_X2 = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::x2), ALL_NO_PREFIX);
- ATTR_Y2 = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::y2), ALL_NO_PREFIX);
- ATTR_K3 = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::k3), ALL_NO_PREFIX);
- ATTR_K4 = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::k4), ALL_NO_PREFIX);
- ATTR_XML_SPACE = new nsHtml5AttributeName(
- XML_NS,
- COLONIFIED_LOCAL(nsGkAtoms::xml_space, nsGkAtoms::space),
- XML_PREFIX);
- ATTR_XML_LANG = new nsHtml5AttributeName(
- XML_NS, COLONIFIED_LOCAL(nsGkAtoms::xml_lang, nsGkAtoms::lang), XML_PREFIX);
- ATTR_XML_BASE = new nsHtml5AttributeName(
- XML_NS, COLONIFIED_LOCAL(nsGkAtoms::xml_base, nsGkAtoms::base), XML_PREFIX);
- ATTR_ARIA_GRAB = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_grab), ALL_NO_PREFIX);
- ATTR_ARIA_VALUEMAX = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_valuemax), ALL_NO_PREFIX);
- ATTR_ARIA_LABELLEDBY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_labelledby), ALL_NO_PREFIX);
- ATTR_ARIA_DESCRIBEDBY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_describedby), ALL_NO_PREFIX);
- ATTR_ARIA_DISABLED = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_disabled), ALL_NO_PREFIX);
- ATTR_ARIA_CHECKED = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_checked), ALL_NO_PREFIX);
- ATTR_ARIA_SELECTED = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_selected), ALL_NO_PREFIX);
- ATTR_ARIA_DROPEFFECT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_dropeffect), ALL_NO_PREFIX);
- ATTR_ARIA_REQUIRED = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_required), ALL_NO_PREFIX);
- ATTR_ARIA_EXPANDED = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_expanded), ALL_NO_PREFIX);
- ATTR_ARIA_PRESSED = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_pressed), ALL_NO_PREFIX);
- ATTR_ARIA_LEVEL = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_level), ALL_NO_PREFIX);
- ATTR_ARIA_CHANNEL = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_channel), ALL_NO_PREFIX);
- ATTR_ARIA_HIDDEN = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_hidden), ALL_NO_PREFIX);
- ATTR_ARIA_SECRET = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_secret), ALL_NO_PREFIX);
- ATTR_ARIA_POSINSET = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_posinset), ALL_NO_PREFIX);
- ATTR_ARIA_ATOMIC = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_atomic), ALL_NO_PREFIX);
- ATTR_ARIA_INVALID = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_invalid), ALL_NO_PREFIX);
- ATTR_ARIA_TEMPLATEID = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_templateid), ALL_NO_PREFIX);
- ATTR_ARIA_VALUEMIN = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_valuemin), ALL_NO_PREFIX);
- ATTR_ARIA_MULTISELECTABLE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_multiselectable), ALL_NO_PREFIX);
- ATTR_ARIA_CONTROLS = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_controls), ALL_NO_PREFIX);
- ATTR_ARIA_MULTILINE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_multiline), ALL_NO_PREFIX);
- ATTR_ARIA_READONLY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_readonly), ALL_NO_PREFIX);
- ATTR_ARIA_OWNS = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_owns), ALL_NO_PREFIX);
- ATTR_ARIA_ACTIVEDESCENDANT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_activedescendant), ALL_NO_PREFIX);
- ATTR_ARIA_RELEVANT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_relevant), ALL_NO_PREFIX);
- ATTR_ARIA_DATATYPE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_datatype), ALL_NO_PREFIX);
- ATTR_ARIA_VALUENOW = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_valuenow), ALL_NO_PREFIX);
- ATTR_ARIA_SORT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_sort), ALL_NO_PREFIX);
- ATTR_ARIA_AUTOCOMPLETE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_autocomplete), ALL_NO_PREFIX);
- ATTR_ARIA_FLOWTO = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_flowto), ALL_NO_PREFIX);
- ATTR_ARIA_BUSY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_busy), ALL_NO_PREFIX);
- ATTR_ARIA_LIVE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_live), ALL_NO_PREFIX);
- ATTR_ARIA_HASPOPUP = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_haspopup), ALL_NO_PREFIX);
- ATTR_ARIA_SETSIZE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_setsize), ALL_NO_PREFIX);
- ATTR_CLEAR = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::clear), ALL_NO_PREFIX);
- ATTR_DISABLED = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::disabled), ALL_NO_PREFIX);
- ATTR_DEFAULT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::_default), ALL_NO_PREFIX);
- ATTR_DATA = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::data), ALL_NO_PREFIX);
- ATTR_EQUALCOLUMNS = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::equalcolumns_), ALL_NO_PREFIX);
- ATTR_EQUALROWS = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::equalrows_), ALL_NO_PREFIX);
- ATTR_HSPACE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::hspace), ALL_NO_PREFIX);
- ATTR_ISMAP = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::ismap), ALL_NO_PREFIX);
- ATTR_LOCAL = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::local), ALL_NO_PREFIX);
- ATTR_LSPACE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::lspace_), ALL_NO_PREFIX);
- ATTR_MOVABLELIMITS = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::movablelimits_), ALL_NO_PREFIX);
- ATTR_NOTATION = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::notation_), ALL_NO_PREFIX);
- ATTR_ONDATAAVAILABLE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::ondataavailable), ALL_NO_PREFIX);
- ATTR_ONPASTE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onpaste), ALL_NO_PREFIX);
- ATTR_RSPACE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rspace_), ALL_NO_PREFIX);
- ATTR_ROWALIGN = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rowalign_), ALL_NO_PREFIX);
- ATTR_ROTATE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rotate), ALL_NO_PREFIX);
- ATTR_SEPARATOR = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::separator_), ALL_NO_PREFIX);
- ATTR_SEPARATORS = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::separators_), ALL_NO_PREFIX);
- ATTR_VSPACE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::vspace), ALL_NO_PREFIX);
- ATTR_XCHANNELSELECTOR = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::xchannelselector, nsGkAtoms::xChannelSelector),
- ALL_NO_PREFIX);
- ATTR_YCHANNELSELECTOR = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::ychannelselector, nsGkAtoms::yChannelSelector),
- ALL_NO_PREFIX);
- ATTR_ENABLE_BACKGROUND = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::enable_background), ALL_NO_PREFIX);
- ATTR_ONDBLCLICK = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::ondblclick), ALL_NO_PREFIX);
- ATTR_ONABORT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onabort), ALL_NO_PREFIX);
- ATTR_CALCMODE = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::calcmode, nsGkAtoms::calcMode),
- ALL_NO_PREFIX);
- ATTR_CHECKED = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::checked), ALL_NO_PREFIX);
- ATTR_FENCE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::fence_), ALL_NO_PREFIX);
- ATTR_ONSCROLL = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onscroll), ALL_NO_PREFIX);
- ATTR_ONACTIVATE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onactivate), ALL_NO_PREFIX);
- ATTR_OPACITY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::opacity), ALL_NO_PREFIX);
- ATTR_SPACING = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::spacing), ALL_NO_PREFIX);
- ATTR_SPECULAREXPONENT = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::specularexponent, nsGkAtoms::specularExponent),
- ALL_NO_PREFIX);
- ATTR_SPECULARCONSTANT = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::specularconstant, nsGkAtoms::specularConstant),
- ALL_NO_PREFIX);
- ATTR_BORDER = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::border), ALL_NO_PREFIX);
- ATTR_ID = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::id), ALL_NO_PREFIX);
- ATTR_GRADIENTTRANSFORM = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::gradienttransform, nsGkAtoms::gradientTransform),
- ALL_NO_PREFIX);
- ATTR_GRADIENTUNITS = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::gradientunits, nsGkAtoms::gradientUnits),
- ALL_NO_PREFIX);
- ATTR_HIDDEN = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::hidden), ALL_NO_PREFIX);
- ATTR_HEADERS = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::headers), ALL_NO_PREFIX);
- ATTR_READONLY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::readonly), ALL_NO_PREFIX);
- ATTR_RENDERING_INTENT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rendering_intent), ALL_NO_PREFIX);
- ATTR_SEED = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::seed), ALL_NO_PREFIX);
- ATTR_SRCDOC = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::srcdoc), ALL_NO_PREFIX);
- ATTR_STDDEVIATION = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::stddeviation, nsGkAtoms::stdDeviation),
- ALL_NO_PREFIX);
- ATTR_SANDBOX = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::sandbox), ALL_NO_PREFIX);
- ATTR_WORD_SPACING = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::word_spacing), ALL_NO_PREFIX);
- ATTR_ACCENTUNDER = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::accentunder_), ALL_NO_PREFIX);
- ATTR_ACCEPT_CHARSET = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::acceptcharset), ALL_NO_PREFIX);
- ATTR_ACCESSKEY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::accesskey), ALL_NO_PREFIX);
- ATTR_ACCENT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::accent_), ALL_NO_PREFIX);
- ATTR_ACCEPT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::accept), ALL_NO_PREFIX);
- ATTR_BEVELLED = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::bevelled_), ALL_NO_PREFIX);
- ATTR_BASEFREQUENCY = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::basefrequency, nsGkAtoms::baseFrequency),
- ALL_NO_PREFIX);
- ATTR_BASELINE_SHIFT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::baseline_shift), ALL_NO_PREFIX);
- ATTR_BASEPROFILE = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::baseprofile, nsGkAtoms::baseProfile),
- ALL_NO_PREFIX);
- ATTR_BASELINE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::baseline), ALL_NO_PREFIX);
- ATTR_BASE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::base), ALL_NO_PREFIX);
- ATTR_CODE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::code), ALL_NO_PREFIX);
- ATTR_CODETYPE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::codetype), ALL_NO_PREFIX);
- ATTR_CODEBASE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::codebase), ALL_NO_PREFIX);
- ATTR_CITE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::cite), ALL_NO_PREFIX);
- ATTR_DEFER = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::defer), ALL_NO_PREFIX);
- ATTR_DATETIME = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::datetime), ALL_NO_PREFIX);
- ATTR_DIRECTION = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::direction), ALL_NO_PREFIX);
- ATTR_EDGEMODE = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::edgemode, nsGkAtoms::edgeMode),
- ALL_NO_PREFIX);
- ATTR_EDGE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::edge_), ALL_NO_PREFIX);
- ATTR_FACE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::face), ALL_NO_PREFIX);
- ATTR_INDEX = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::index), ALL_NO_PREFIX);
- ATTR_INTERCEPT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::intercept), ALL_NO_PREFIX);
- ATTR_INTEGRITY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::integrity), ALL_NO_PREFIX);
- ATTR_LINEBREAK = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::linebreak_), ALL_NO_PREFIX);
- ATTR_LABEL = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::label), ALL_NO_PREFIX);
- ATTR_LINETHICKNESS = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::linethickness_), ALL_NO_PREFIX);
- ATTR_MODE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::mode), ALL_NO_PREFIX);
- ATTR_NAME = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::name), ALL_NO_PREFIX);
- ATTR_NORESIZE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::noresize), ALL_NO_PREFIX);
- ATTR_ONBEFOREUNLOAD = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onbeforeunload), ALL_NO_PREFIX);
- ATTR_ONREPEAT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onrepeat), ALL_NO_PREFIX);
- ATTR_OBJECT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::object), ALL_NO_PREFIX);
- ATTR_ONSELECT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onselect), ALL_NO_PREFIX);
- ATTR_ORDER = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::order), ALL_NO_PREFIX);
- ATTR_OTHER = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::other), ALL_NO_PREFIX);
- ATTR_ONRESET = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onreset), ALL_NO_PREFIX);
- ATTR_ONREADYSTATECHANGE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onreadystatechange), ALL_NO_PREFIX);
- ATTR_ONMESSAGE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onmessage), ALL_NO_PREFIX);
- ATTR_ONBEGIN = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onbegin), ALL_NO_PREFIX);
- ATTR_ONBEFOREPRINT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onbeforeprint), ALL_NO_PREFIX);
- ATTR_ORIENT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::orient), ALL_NO_PREFIX);
- ATTR_ORIENTATION = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::orientation), ALL_NO_PREFIX);
- ATTR_ONBEFORECOPY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onbeforecopy), ALL_NO_PREFIX);
- ATTR_ONSELECTSTART = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onselectstart), ALL_NO_PREFIX);
- ATTR_ONBEFOREPASTE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onbeforepaste), ALL_NO_PREFIX);
- ATTR_ONKEYPRESS = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onkeypress), ALL_NO_PREFIX);
- ATTR_ONKEYUP = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onkeyup), ALL_NO_PREFIX);
- ATTR_ONBEFORECUT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onbeforecut), ALL_NO_PREFIX);
- ATTR_ONKEYDOWN = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onkeydown), ALL_NO_PREFIX);
- ATTR_ONRESIZE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onresize), ALL_NO_PREFIX);
- ATTR_REPEAT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::repeat), ALL_NO_PREFIX);
- ATTR_REFERRERPOLICY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::referrerpolicy), ALL_NO_PREFIX);
- ATTR_RULES = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rules), ALL_NO_PREFIX);
- ATTR_ROLE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::role), ALL_NO_PREFIX);
- ATTR_REPEATCOUNT = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::repeatcount, nsGkAtoms::repeatCount),
- ALL_NO_PREFIX);
- ATTR_REPEATDUR = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::repeatdur, nsGkAtoms::repeatDur),
- ALL_NO_PREFIX);
- ATTR_SELECTED = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::selected), ALL_NO_PREFIX);
- ATTR_SIZES = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::sizes), ALL_NO_PREFIX);
- ATTR_SUPERSCRIPTSHIFT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::superscriptshift_), ALL_NO_PREFIX);
- ATTR_STRETCHY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::stretchy_), ALL_NO_PREFIX);
- ATTR_SCHEME = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::scheme), ALL_NO_PREFIX);
- ATTR_SPREADMETHOD = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::spreadmethod, nsGkAtoms::spreadMethod),
- ALL_NO_PREFIX);
- ATTR_SELECTION = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::selection_), ALL_NO_PREFIX);
- ATTR_SIZE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::size), ALL_NO_PREFIX);
- ATTR_TYPE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::type), ALL_NO_PREFIX);
- ATTR_DIFFUSECONSTANT = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::diffuseconstant, nsGkAtoms::diffuseConstant),
- ALL_NO_PREFIX);
- ATTR_HREF = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::href), ALL_NO_PREFIX);
- ATTR_HREFLANG = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::hreflang), ALL_NO_PREFIX);
- ATTR_ONAFTERPRINT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onafterprint), ALL_NO_PREFIX);
- ATTR_PROFILE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::profile), ALL_NO_PREFIX);
- ATTR_SURFACESCALE = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::surfacescale, nsGkAtoms::surfaceScale),
- ALL_NO_PREFIX);
- ATTR_XREF = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::xref_), ALL_NO_PREFIX);
- ATTR_ALIGN = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::align), ALL_NO_PREFIX);
- ATTR_ALIGNMENT_BASELINE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::alignment_baseline), ALL_NO_PREFIX);
- ATTR_ALIGNMENTSCOPE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::alignmentscope_), ALL_NO_PREFIX);
- ATTR_DRAGGABLE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::draggable), ALL_NO_PREFIX);
- ATTR_HEIGHT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::height), ALL_NO_PREFIX);
- ATTR_IMAGE_RENDERING = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::image_rendering), ALL_NO_PREFIX);
- ATTR_LANGUAGE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::language), ALL_NO_PREFIX);
- ATTR_LANG = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::lang), ALL_NO_PREFIX);
- ATTR_LARGEOP = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::largeop_), ALL_NO_PREFIX);
- ATTR_LONGDESC = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::longdesc), ALL_NO_PREFIX);
- ATTR_LENGTHADJUST = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::lengthadjust, nsGkAtoms::lengthAdjust),
- ALL_NO_PREFIX);
- ATTR_MARGINHEIGHT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::marginheight), ALL_NO_PREFIX);
- ATTR_MARGINWIDTH = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::marginwidth), ALL_NO_PREFIX);
- ATTR_ORIGIN = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::origin), ALL_NO_PREFIX);
- ATTR_PING = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::ping), ALL_NO_PREFIX);
- ATTR_TARGET = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::target), ALL_NO_PREFIX);
- ATTR_TARGETX = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::targetx, nsGkAtoms::targetX),
- ALL_NO_PREFIX);
- ATTR_TARGETY = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::targety, nsGkAtoms::targetY),
- ALL_NO_PREFIX);
- ATTR_ARCHIVE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::archive), ALL_NO_PREFIX);
- ATTR_HIGH = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::high), ALL_NO_PREFIX);
- ATTR_LIGHTING_COLOR = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::lighting_color), ALL_NO_PREFIX);
- ATTR_MATHBACKGROUND = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::mathbackground_), ALL_NO_PREFIX);
- ATTR_METHOD = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::method), ALL_NO_PREFIX);
- ATTR_MATHVARIANT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::mathvariant_), ALL_NO_PREFIX);
- ATTR_MATHCOLOR = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::mathcolor_), ALL_NO_PREFIX);
- ATTR_MATHSIZE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::mathsize_), ALL_NO_PREFIX);
- ATTR_NOSHADE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::noshade), ALL_NO_PREFIX);
- ATTR_ONCHANGE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onchange), ALL_NO_PREFIX);
- ATTR_PATHLENGTH = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::pathlength, nsGkAtoms::pathLength),
- ALL_NO_PREFIX);
- ATTR_PATH = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::path), ALL_NO_PREFIX);
- ATTR_ALTIMG = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::altimg_), ALL_NO_PREFIX);
- ATTR_ACTIONTYPE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::actiontype_), ALL_NO_PREFIX);
- ATTR_ACTION = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::action), ALL_NO_PREFIX);
- ATTR_ACTIVE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::active), ALL_NO_PREFIX);
- ATTR_ADDITIVE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::additive), ALL_NO_PREFIX);
- ATTR_BEGIN = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::begin), ALL_NO_PREFIX);
- ATTR_DOMINANT_BASELINE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::dominant_baseline), ALL_NO_PREFIX);
- ATTR_DIVISOR = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::divisor), ALL_NO_PREFIX);
- ATTR_DEFINITIONURL = new nsHtml5AttributeName(
- ALL_NO_NS,
- MATH_DIFFERENT(nsGkAtoms::definitionurl, nsGkAtoms::definitionURL_),
- ALL_NO_PREFIX);
- ATTR_LIMITINGCONEANGLE = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::limitingconeangle, nsGkAtoms::limitingConeAngle),
- ALL_NO_PREFIX);
- ATTR_MEDIA = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::media), ALL_NO_PREFIX);
- ATTR_MANIFEST = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::manifest), ALL_NO_PREFIX);
- ATTR_ONFINISH = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onfinish), ALL_NO_PREFIX);
- ATTR_OPTIMUM = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::optimum), ALL_NO_PREFIX);
- ATTR_RADIOGROUP = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::radiogroup), ALL_NO_PREFIX);
- ATTR_RADIUS = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::radius), ALL_NO_PREFIX);
- ATTR_SCRIPTLEVEL = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::scriptlevel_), ALL_NO_PREFIX);
- ATTR_SCRIPTSIZEMULTIPLIER = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::scriptsizemultiplier_), ALL_NO_PREFIX);
- ATTR_SCRIPTMINSIZE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::scriptminsize_), ALL_NO_PREFIX);
- ATTR_TABINDEX = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::tabindex), ALL_NO_PREFIX);
- ATTR_VALIGN = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::valign), ALL_NO_PREFIX);
- ATTR_VISIBILITY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::visibility), ALL_NO_PREFIX);
- ATTR_BACKGROUND = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::background), ALL_NO_PREFIX);
- ATTR_LINK = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::link), ALL_NO_PREFIX);
- ATTR_MARKER_MID = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::marker_mid), ALL_NO_PREFIX);
- ATTR_MARKERHEIGHT = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::markerheight, nsGkAtoms::markerHeight),
- ALL_NO_PREFIX);
- ATTR_MARKER_END = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::marker_end), ALL_NO_PREFIX);
- ATTR_MASK = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::mask), ALL_NO_PREFIX);
- ATTR_MARKER_START = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::marker_start), ALL_NO_PREFIX);
- ATTR_MARKERWIDTH = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::markerwidth, nsGkAtoms::markerWidth),
- ALL_NO_PREFIX);
- ATTR_MASKUNITS = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::maskunits, nsGkAtoms::maskUnits),
- ALL_NO_PREFIX);
- ATTR_MARKERUNITS = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::markerunits, nsGkAtoms::markerUnits),
- ALL_NO_PREFIX);
- ATTR_MASKCONTENTUNITS = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::maskcontentunits, nsGkAtoms::maskContentUnits),
- ALL_NO_PREFIX);
- ATTR_AMPLITUDE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::amplitude), ALL_NO_PREFIX);
- ATTR_CELLSPACING = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::cellspacing), ALL_NO_PREFIX);
- ATTR_CELLPADDING = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::cellpadding), ALL_NO_PREFIX);
- ATTR_DECLARE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::declare), ALL_NO_PREFIX);
- ATTR_FILL_RULE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::fill_rule), ALL_NO_PREFIX);
- ATTR_FILL = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::fill), ALL_NO_PREFIX);
- ATTR_FILL_OPACITY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::fill_opacity), ALL_NO_PREFIX);
- ATTR_MAXLENGTH = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::maxlength), ALL_NO_PREFIX);
- ATTR_ONCLICK = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onclick), ALL_NO_PREFIX);
- ATTR_ONBLUR = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onblur), ALL_NO_PREFIX);
- ATTR_REPLACE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::replace), ALL_NO_PREFIX);
- ATTR_ROWLINES = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rowlines_), ALL_NO_PREFIX);
- ATTR_SCALE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::scale), ALL_NO_PREFIX);
- ATTR_STYLE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::style), ALL_NO_PREFIX);
- ATTR_TABLEVALUES = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::tablevalues, nsGkAtoms::tableValues),
- ALL_NO_PREFIX);
- ATTR_TITLE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::title), ALL_NO_PREFIX);
- ATTR_AZIMUTH = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::azimuth), ALL_NO_PREFIX);
- ATTR_FORMAT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::format), ALL_NO_PREFIX);
- ATTR_FRAMEBORDER = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::frameborder), ALL_NO_PREFIX);
- ATTR_FRAME = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::frame), ALL_NO_PREFIX);
- ATTR_FRAMESPACING = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::framespacing_), ALL_NO_PREFIX);
- ATTR_FROM = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::from), ALL_NO_PREFIX);
- ATTR_FORM = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::form), ALL_NO_PREFIX);
- ATTR_PROMPT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::prompt), ALL_NO_PREFIX);
- ATTR_PRIMITIVEUNITS = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::primitiveunits, nsGkAtoms::primitiveUnits),
- ALL_NO_PREFIX);
- ATTR_SYMMETRIC = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::symmetric_), ALL_NO_PREFIX);
- ATTR_SUMMARY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::summary), ALL_NO_PREFIX);
- ATTR_USEMAP = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::usemap), ALL_NO_PREFIX);
- ATTR_ZOOMANDPAN = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::zoomandpan, nsGkAtoms::zoomAndPan),
- ALL_NO_PREFIX);
- ATTR_ASYNC = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::async), ALL_NO_PREFIX);
- ATTR_ALINK = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::alink), ALL_NO_PREFIX);
- ATTR_IN = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::in), ALL_NO_PREFIX);
- ATTR_ICON = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::icon), ALL_NO_PREFIX);
- ATTR_KERNELMATRIX = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::kernelmatrix, nsGkAtoms::kernelMatrix),
- ALL_NO_PREFIX);
- ATTR_KERNING = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::kerning), ALL_NO_PREFIX);
- ATTR_KERNELUNITLENGTH = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::kernelunitlength, nsGkAtoms::kernelUnitLength),
- ALL_NO_PREFIX);
- ATTR_ONUNLOAD = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onunload), ALL_NO_PREFIX);
- ATTR_OPEN = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::open), ALL_NO_PREFIX);
- ATTR_ONINVALID = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::oninvalid), ALL_NO_PREFIX);
- ATTR_ONEND = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onend), ALL_NO_PREFIX);
- ATTR_ONINPUT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::oninput), ALL_NO_PREFIX);
- ATTR_POINTER_EVENTS = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::pointer_events), ALL_NO_PREFIX);
- ATTR_POINTS = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::points), ALL_NO_PREFIX);
- ATTR_POINTSATX = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::pointsatx, nsGkAtoms::pointsAtX),
- ALL_NO_PREFIX);
- ATTR_POINTSATY = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::pointsaty, nsGkAtoms::pointsAtY),
- ALL_NO_PREFIX);
- ATTR_POINTSATZ = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::pointsatz, nsGkAtoms::pointsAtZ),
- ALL_NO_PREFIX);
- ATTR_SPAN = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::span), ALL_NO_PREFIX);
- ATTR_STANDBY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::standby), ALL_NO_PREFIX);
- ATTR_TRANSFORM = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::transform), ALL_NO_PREFIX);
- ATTR_VLINK = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::vlink), ALL_NO_PREFIX);
- ATTR_WHEN = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::when), ALL_NO_PREFIX);
- ATTR_XLINK_HREF = new nsHtml5AttributeName(
- XLINK_NS,
- COLONIFIED_LOCAL(nsGkAtoms::xlink_href, nsGkAtoms::href),
- XLINK_PREFIX);
- ATTR_XLINK_TITLE = new nsHtml5AttributeName(
- XLINK_NS,
- COLONIFIED_LOCAL(nsGkAtoms::xlink_title, nsGkAtoms::title),
- XLINK_PREFIX);
- ATTR_XLINK_ROLE = new nsHtml5AttributeName(
- XLINK_NS,
- COLONIFIED_LOCAL(nsGkAtoms::xlink_role, nsGkAtoms::role),
- XLINK_PREFIX);
- ATTR_XLINK_ARCROLE = new nsHtml5AttributeName(
- XLINK_NS,
- COLONIFIED_LOCAL(nsGkAtoms::xlink_arcrole, nsGkAtoms::arcrole),
- XLINK_PREFIX);
- ATTR_XMLNS_XLINK = new nsHtml5AttributeName(
- XMLNS_NS,
- COLONIFIED_LOCAL(nsGkAtoms::xmlns_xlink, nsGkAtoms::xlink),
- XMLNS_PREFIX);
- ATTR_XMLNS = new nsHtml5AttributeName(
- XMLNS_NS, SAME_LOCAL(nsGkAtoms::xmlns), ALL_NO_PREFIX);
- ATTR_XLINK_TYPE = new nsHtml5AttributeName(
- XLINK_NS,
- COLONIFIED_LOCAL(nsGkAtoms::xlink_type, nsGkAtoms::type),
- XLINK_PREFIX);
- ATTR_XLINK_SHOW = new nsHtml5AttributeName(
- XLINK_NS,
- COLONIFIED_LOCAL(nsGkAtoms::xlink_show, nsGkAtoms::show),
- XLINK_PREFIX);
- ATTR_XLINK_ACTUATE = new nsHtml5AttributeName(
- XLINK_NS,
- COLONIFIED_LOCAL(nsGkAtoms::xlink_actuate, nsGkAtoms::actuate),
- XLINK_PREFIX);
- ATTR_AUTOPLAY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::autoplay), ALL_NO_PREFIX);
- ATTR_AUTOCOMPLETE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::autocomplete), ALL_NO_PREFIX);
- ATTR_AUTOFOCUS = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::autofocus), ALL_NO_PREFIX);
- ATTR_BGCOLOR = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::bgcolor), ALL_NO_PREFIX);
- ATTR_COLOR_PROFILE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::colorProfile), ALL_NO_PREFIX);
- ATTR_COLOR_RENDERING = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::color_rendering), ALL_NO_PREFIX);
- ATTR_COLOR_INTERPOLATION = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::colorInterpolation), ALL_NO_PREFIX);
- ATTR_COLOR = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::color), ALL_NO_PREFIX);
- ATTR_COLOR_INTERPOLATION_FILTERS = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::colorInterpolationFilters), ALL_NO_PREFIX);
- ATTR_ENCODING = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::encoding), ALL_NO_PREFIX);
- ATTR_EXPONENT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::exponent), ALL_NO_PREFIX);
- ATTR_FLOOD_COLOR = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::flood_color), ALL_NO_PREFIX);
- ATTR_FLOOD_OPACITY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::flood_opacity), ALL_NO_PREFIX);
- ATTR_LQUOTE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::lquote_), ALL_NO_PREFIX);
- ATTR_NUMOCTAVES = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::numoctaves, nsGkAtoms::numOctaves),
- ALL_NO_PREFIX);
- ATTR_ONLOAD = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onload), ALL_NO_PREFIX);
- ATTR_ONMOUSEWHEEL = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onmousewheel), ALL_NO_PREFIX);
- ATTR_ONMOUSEENTER = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onmouseenter), ALL_NO_PREFIX);
- ATTR_ONMOUSEOVER = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onmouseover), ALL_NO_PREFIX);
- ATTR_ONFOCUSIN = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onfocusin), ALL_NO_PREFIX);
- ATTR_ONCONTEXTMENU = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::oncontextmenu), ALL_NO_PREFIX);
- ATTR_ONZOOM = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onzoom), ALL_NO_PREFIX);
- ATTR_ONCOPY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::oncopy), ALL_NO_PREFIX);
- ATTR_ONMOUSELEAVE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onmouseleave), ALL_NO_PREFIX);
- ATTR_ONMOUSEMOVE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onmousemove), ALL_NO_PREFIX);
- ATTR_ONMOUSEUP = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onmouseup), ALL_NO_PREFIX);
- ATTR_ONFOCUS = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onfocus), ALL_NO_PREFIX);
- ATTR_ONMOUSEOUT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onmouseout), ALL_NO_PREFIX);
- ATTR_ONFOCUSOUT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onfocusout), ALL_NO_PREFIX);
- ATTR_ONMOUSEDOWN = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onmousedown), ALL_NO_PREFIX);
- ATTR_TO = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::to), ALL_NO_PREFIX);
- ATTR_RQUOTE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rquote_), ALL_NO_PREFIX);
- ATTR_STROKE_LINECAP = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::stroke_linecap), ALL_NO_PREFIX);
- ATTR_STROKE_DASHARRAY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::stroke_dasharray), ALL_NO_PREFIX);
- ATTR_STROKE_DASHOFFSET = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::stroke_dashoffset), ALL_NO_PREFIX);
- ATTR_STROKE_LINEJOIN = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::stroke_linejoin), ALL_NO_PREFIX);
- ATTR_STROKE_MITERLIMIT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::stroke_miterlimit), ALL_NO_PREFIX);
- ATTR_STROKE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::stroke), ALL_NO_PREFIX);
- ATTR_SCROLLING = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::scrolling), ALL_NO_PREFIX);
- ATTR_STROKE_WIDTH = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::stroke_width), ALL_NO_PREFIX);
- ATTR_STROKE_OPACITY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::stroke_opacity), ALL_NO_PREFIX);
- ATTR_COMPACT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::compact), ALL_NO_PREFIX);
- ATTR_CLIP = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::clip), ALL_NO_PREFIX);
- ATTR_CLIP_RULE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::clip_rule), ALL_NO_PREFIX);
- ATTR_CLIP_PATH = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::clip_path), ALL_NO_PREFIX);
- ATTR_CLIPPATHUNITS = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::clippathunits, nsGkAtoms::clipPathUnits),
- ALL_NO_PREFIX);
- ATTR_DISPLAY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::display), ALL_NO_PREFIX);
- ATTR_DISPLAYSTYLE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::displaystyle_), ALL_NO_PREFIX);
- ATTR_GLYPH_ORIENTATION_VERTICAL =
- new nsHtml5AttributeName(ALL_NO_NS,
- SAME_LOCAL(nsGkAtoms::glyph_orientation_vertical),
- ALL_NO_PREFIX);
- ATTR_GLYPH_ORIENTATION_HORIZONTAL = new nsHtml5AttributeName(
- ALL_NO_NS,
- SAME_LOCAL(nsGkAtoms::glyph_orientation_horizontal),
- ALL_NO_PREFIX);
- ATTR_GLYPHREF = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::glyphref, nsGkAtoms::glyphRef),
- ALL_NO_PREFIX);
- ATTR_HTTP_EQUIV = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::httpEquiv), ALL_NO_PREFIX);
- ATTR_KEYPOINTS = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::keypoints, nsGkAtoms::keyPoints),
- ALL_NO_PREFIX);
- ATTR_LOOP = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::loop), ALL_NO_PREFIX);
- ATTR_PROPERTY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::property), ALL_NO_PREFIX);
- ATTR_SCOPED = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::scoped), ALL_NO_PREFIX);
- ATTR_STEP = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::step), ALL_NO_PREFIX);
- ATTR_SHAPE_RENDERING = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::shape_rendering), ALL_NO_PREFIX);
- ATTR_SCOPE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::scope), ALL_NO_PREFIX);
- ATTR_SHAPE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::shape), ALL_NO_PREFIX);
- ATTR_SLOPE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::slope), ALL_NO_PREFIX);
- ATTR_STOP_COLOR = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::stop_color), ALL_NO_PREFIX);
- ATTR_STOP_OPACITY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::stop_opacity), ALL_NO_PREFIX);
- ATTR_TEMPLATE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::_template), ALL_NO_PREFIX);
- ATTR_WRAP = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::wrap), ALL_NO_PREFIX);
- ATTR_ABBR = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::abbr), ALL_NO_PREFIX);
- ATTR_ATTRIBUTENAME = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::attributename, nsGkAtoms::attributeName),
- ALL_NO_PREFIX);
- ATTR_ATTRIBUTETYPE = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::attributetype, nsGkAtoms::attributeType),
- ALL_NO_PREFIX);
- ATTR_CHAR = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::_char), ALL_NO_PREFIX);
- ATTR_COORDS = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::coords), ALL_NO_PREFIX);
- ATTR_CHAROFF = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::charoff), ALL_NO_PREFIX);
- ATTR_CHARSET = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::charset), ALL_NO_PREFIX);
- ATTR_NOWRAP = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::nowrap), ALL_NO_PREFIX);
- ATTR_NOHREF = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::nohref), ALL_NO_PREFIX);
- ATTR_ONDRAG = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::ondrag), ALL_NO_PREFIX);
- ATTR_ONDRAGENTER = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::ondragenter), ALL_NO_PREFIX);
- ATTR_ONDRAGOVER = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::ondragover), ALL_NO_PREFIX);
- ATTR_ONDRAGEND = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::ondragend), ALL_NO_PREFIX);
- ATTR_ONDROP = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::ondrop), ALL_NO_PREFIX);
- ATTR_ONDRAGDROP = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::ondragdrop), ALL_NO_PREFIX);
- ATTR_ONERROR = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onerror), ALL_NO_PREFIX);
- ATTR_OPERATOR = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::_operator), ALL_NO_PREFIX);
- ATTR_OVERFLOW = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::overflow), ALL_NO_PREFIX);
- ATTR_ONDRAGSTART = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::ondragstart), ALL_NO_PREFIX);
- ATTR_ONDRAGLEAVE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::ondragleave), ALL_NO_PREFIX);
- ATTR_STARTOFFSET = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::startoffset, nsGkAtoms::startOffset),
- ALL_NO_PREFIX);
- ATTR_START = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::start), ALL_NO_PREFIX);
- ATTR_AXIS = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::axis), ALL_NO_PREFIX);
- ATTR_BIAS = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::bias), ALL_NO_PREFIX);
- ATTR_COLSPAN = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::colspan), ALL_NO_PREFIX);
- ATTR_CLASSID = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::classid), ALL_NO_PREFIX);
- ATTR_CROSSORIGIN = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::crossorigin), ALL_NO_PREFIX);
- ATTR_COLS = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::cols), ALL_NO_PREFIX);
- ATTR_CURSOR = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::cursor), ALL_NO_PREFIX);
- ATTR_CLOSURE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::closure_), ALL_NO_PREFIX);
- ATTR_CLOSE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::close), ALL_NO_PREFIX);
- ATTR_CLASS = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::_class), ALL_NO_PREFIX);
- ATTR_KEYSYSTEM = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::keysystem), ALL_NO_PREFIX);
- ATTR_KEYSPLINES = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::keysplines, nsGkAtoms::keySplines),
- ALL_NO_PREFIX);
- ATTR_LOWSRC = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::lowsrc), ALL_NO_PREFIX);
- ATTR_MAXSIZE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::maxsize_), ALL_NO_PREFIX);
- ATTR_MINSIZE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::minsize_), ALL_NO_PREFIX);
- ATTR_OFFSET = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::offset), ALL_NO_PREFIX);
- ATTR_PRESERVEALPHA = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::preservealpha, nsGkAtoms::preserveAlpha),
- ALL_NO_PREFIX);
- ATTR_PRESERVEASPECTRATIO =
- new nsHtml5AttributeName(ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::preserveaspectratio,
- nsGkAtoms::preserveAspectRatio),
- ALL_NO_PREFIX);
- ATTR_ROWSPAN = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rowspan), ALL_NO_PREFIX);
- ATTR_ROWSPACING = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rowspacing_), ALL_NO_PREFIX);
- ATTR_ROWS = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rows), ALL_NO_PREFIX);
- ATTR_SRCSET = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::srcset), ALL_NO_PREFIX);
- ATTR_SUBSCRIPTSHIFT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::subscriptshift_), ALL_NO_PREFIX);
- ATTR_VERSION = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::version), ALL_NO_PREFIX);
- ATTR_ALTTEXT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::alttext), ALL_NO_PREFIX);
- ATTR_CONTENTEDITABLE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::contenteditable), ALL_NO_PREFIX);
- ATTR_CONTROLS = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::controls), ALL_NO_PREFIX);
- ATTR_CONTENT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::content), ALL_NO_PREFIX);
- ATTR_CONTEXTMENU = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::contextmenu), ALL_NO_PREFIX);
- ATTR_DEPTH = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::depth_), ALL_NO_PREFIX);
- ATTR_ENCTYPE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::enctype), ALL_NO_PREFIX);
- ATTR_FONT_STRETCH = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::font_stretch), ALL_NO_PREFIX);
- ATTR_FILTER = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::filter), ALL_NO_PREFIX);
- ATTR_FONTWEIGHT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::fontweight_), ALL_NO_PREFIX);
- ATTR_FONT_WEIGHT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::fontWeight), ALL_NO_PREFIX);
- ATTR_FONTSTYLE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::fontstyle_), ALL_NO_PREFIX);
- ATTR_FONT_STYLE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::font_style), ALL_NO_PREFIX);
- ATTR_FONTFAMILY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::fontfamily_), ALL_NO_PREFIX);
- ATTR_FONT_FAMILY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::font_family), ALL_NO_PREFIX);
- ATTR_FONT_VARIANT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::font_variant), ALL_NO_PREFIX);
- ATTR_FONT_SIZE_ADJUST = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::font_size_adjust), ALL_NO_PREFIX);
- ATTR_FILTERUNITS = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::filterunits, nsGkAtoms::filterUnits),
- ALL_NO_PREFIX);
- ATTR_FONTSIZE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::fontsize_), ALL_NO_PREFIX);
- ATTR_FONT_SIZE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::font_size), ALL_NO_PREFIX);
- ATTR_KEYTIMES = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::keytimes, nsGkAtoms::keyTimes),
- ALL_NO_PREFIX);
- ATTR_LETTER_SPACING = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::letter_spacing), ALL_NO_PREFIX);
- ATTR_LIST = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::list_), ALL_NO_PREFIX);
- ATTR_MULTIPLE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::multiple), ALL_NO_PREFIX);
- ATTR_RT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rt), ALL_NO_PREFIX);
- ATTR_ONSTOP = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onstop), ALL_NO_PREFIX);
- ATTR_ONSTART = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onstart), ALL_NO_PREFIX);
- ATTR_POSTER = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::poster), ALL_NO_PREFIX);
- ATTR_PATTERNTRANSFORM = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::patterntransform, nsGkAtoms::patternTransform),
- ALL_NO_PREFIX);
- ATTR_PATTERN = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::pattern), ALL_NO_PREFIX);
- ATTR_PATTERNUNITS = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::patternunits, nsGkAtoms::patternUnits),
- ALL_NO_PREFIX);
- ATTR_PATTERNCONTENTUNITS =
- new nsHtml5AttributeName(ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::patterncontentunits,
- nsGkAtoms::patternContentUnits),
- ALL_NO_PREFIX);
- ATTR_RESTART = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::restart), ALL_NO_PREFIX);
- ATTR_STITCHTILES = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::stitchtiles, nsGkAtoms::stitchTiles),
- ALL_NO_PREFIX);
- ATTR_SYSTEMLANGUAGE = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::systemlanguage, nsGkAtoms::systemLanguage),
- ALL_NO_PREFIX);
- ATTR_TEXT_RENDERING = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::text_rendering), ALL_NO_PREFIX);
- ATTR_TEXT_DECORATION = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::text_decoration), ALL_NO_PREFIX);
- ATTR_TEXT_ANCHOR = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::text_anchor), ALL_NO_PREFIX);
- ATTR_TEXTLENGTH = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::textlength, nsGkAtoms::textLength),
- ALL_NO_PREFIX);
- ATTR_TEXT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::text), ALL_NO_PREFIX);
- ATTR_WRITING_MODE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::writing_mode), ALL_NO_PREFIX);
- ATTR_WIDTH = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::width), ALL_NO_PREFIX);
- ATTR_ACCUMULATE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::accumulate), ALL_NO_PREFIX);
- ATTR_COLUMNSPAN = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::columnspan_), ALL_NO_PREFIX);
- ATTR_COLUMNLINES = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::columnlines_), ALL_NO_PREFIX);
- ATTR_COLUMNALIGN = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::columnalign_), ALL_NO_PREFIX);
- ATTR_COLUMNSPACING = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::columnspacing_), ALL_NO_PREFIX);
- ATTR_COLUMNWIDTH = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::columnwidth_), ALL_NO_PREFIX);
- ATTR_GROUPALIGN = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::groupalign_), ALL_NO_PREFIX);
- ATTR_INPUTMODE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::inputmode), ALL_NO_PREFIX);
- ATTR_ONSUBMIT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onsubmit), ALL_NO_PREFIX);
- ATTR_ONCUT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::oncut), ALL_NO_PREFIX);
- ATTR_REQUIRED = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::required), ALL_NO_PREFIX);
- ATTR_REQUIREDFEATURES = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::requiredfeatures, nsGkAtoms::requiredFeatures),
- ALL_NO_PREFIX);
- ATTR_RESULT = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::result), ALL_NO_PREFIX);
- ATTR_REQUIREDEXTENSIONS = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::requiredextensions, nsGkAtoms::requiredExtensions),
- ALL_NO_PREFIX);
- ATTR_VALUES = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::values), ALL_NO_PREFIX);
- ATTR_VALUETYPE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::valuetype), ALL_NO_PREFIX);
- ATTR_VALUE = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::value), ALL_NO_PREFIX);
- ATTR_ELEVATION = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::elevation), ALL_NO_PREFIX);
- ATTR_VIEWTARGET = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::viewtarget, nsGkAtoms::viewTarget),
- ALL_NO_PREFIX);
- ATTR_VIEWBOX = new nsHtml5AttributeName(
- ALL_NO_NS,
- SVG_DIFFERENT(nsGkAtoms::viewbox, nsGkAtoms::viewBox),
- ALL_NO_PREFIX);
- ATTR_CX = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::cx), ALL_NO_PREFIX);
- ATTR_DX = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::dx), ALL_NO_PREFIX);
- ATTR_FX = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::fx), ALL_NO_PREFIX);
- ATTR_RX = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rx), ALL_NO_PREFIX);
- ATTR_REFX = new nsHtml5AttributeName(
- ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::refx, nsGkAtoms::refX), ALL_NO_PREFIX);
- ATTR_BY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::by), ALL_NO_PREFIX);
- ATTR_CY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::cy), ALL_NO_PREFIX);
- ATTR_DY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::dy), ALL_NO_PREFIX);
- ATTR_FY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::fy), ALL_NO_PREFIX);
- ATTR_RY = new nsHtml5AttributeName(
- ALL_NO_NS, SAME_LOCAL(nsGkAtoms::ry), ALL_NO_PREFIX);
- ATTR_REFY = new nsHtml5AttributeName(
- ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::refy, nsGkAtoms::refY), ALL_NO_PREFIX);
+ ATTR_ALT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::alt), ALL_NO_PREFIX);
+ ATTR_DIR = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::dir), ALL_NO_PREFIX);
+ ATTR_DUR = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::dur), ALL_NO_PREFIX);
+ ATTR_END = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::end), ALL_NO_PREFIX);
+ ATTR_FOR = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::_for), ALL_NO_PREFIX);
+ ATTR_IN2 = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::in2), ALL_NO_PREFIX);
+ ATTR_LOW = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::low), ALL_NO_PREFIX);
+ ATTR_MIN = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::min), ALL_NO_PREFIX);
+ ATTR_MAX = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::max), ALL_NO_PREFIX);
+ ATTR_REL = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rel), ALL_NO_PREFIX);
+ ATTR_REV = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rev), ALL_NO_PREFIX);
+ ATTR_SRC = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::src), ALL_NO_PREFIX);
+ ATTR_D = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::d), ALL_NO_PREFIX);
+ ATTR_R = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::r), ALL_NO_PREFIX);
+ ATTR_X = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::x), ALL_NO_PREFIX);
+ ATTR_Y = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::y), ALL_NO_PREFIX);
+ ATTR_Z = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::z), ALL_NO_PREFIX);
+ ATTR_K1 = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::k1), ALL_NO_PREFIX);
+ ATTR_X1 = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::x1), ALL_NO_PREFIX);
+ ATTR_Y1 = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::y1), ALL_NO_PREFIX);
+ ATTR_K2 = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::k2), ALL_NO_PREFIX);
+ ATTR_X2 = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::x2), ALL_NO_PREFIX);
+ ATTR_Y2 = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::y2), ALL_NO_PREFIX);
+ ATTR_K3 = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::k3), ALL_NO_PREFIX);
+ ATTR_K4 = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::k4), ALL_NO_PREFIX);
+ ATTR_XML_SPACE = new nsHtml5AttributeName(XML_NS, COLONIFIED_LOCAL(nsGkAtoms::xml_space, nsGkAtoms::space), XML_PREFIX);
+ ATTR_XML_LANG = new nsHtml5AttributeName(XML_NS, COLONIFIED_LOCAL(nsGkAtoms::xml_lang, nsGkAtoms::lang), XML_PREFIX);
+ ATTR_XML_BASE = new nsHtml5AttributeName(XML_NS, COLONIFIED_LOCAL(nsGkAtoms::xml_base, nsGkAtoms::base), XML_PREFIX);
+ ATTR_ARIA_GRAB = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_grab), ALL_NO_PREFIX);
+ ATTR_ARIA_VALUEMAX = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_valuemax), ALL_NO_PREFIX);
+ ATTR_ARIA_LABELLEDBY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_labelledby), ALL_NO_PREFIX);
+ ATTR_ARIA_DESCRIBEDBY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_describedby), ALL_NO_PREFIX);
+ ATTR_ARIA_DISABLED = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_disabled), ALL_NO_PREFIX);
+ ATTR_ARIA_CHECKED = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_checked), ALL_NO_PREFIX);
+ ATTR_ARIA_SELECTED = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_selected), ALL_NO_PREFIX);
+ ATTR_ARIA_DROPEFFECT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_dropeffect), ALL_NO_PREFIX);
+ ATTR_ARIA_REQUIRED = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_required), ALL_NO_PREFIX);
+ ATTR_ARIA_EXPANDED = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_expanded), ALL_NO_PREFIX);
+ ATTR_ARIA_PRESSED = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_pressed), ALL_NO_PREFIX);
+ ATTR_ARIA_LEVEL = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_level), ALL_NO_PREFIX);
+ ATTR_ARIA_CHANNEL = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_channel), ALL_NO_PREFIX);
+ ATTR_ARIA_HIDDEN = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_hidden), ALL_NO_PREFIX);
+ ATTR_ARIA_SECRET = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_secret), ALL_NO_PREFIX);
+ ATTR_ARIA_POSINSET = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_posinset), ALL_NO_PREFIX);
+ ATTR_ARIA_ATOMIC = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_atomic), ALL_NO_PREFIX);
+ ATTR_ARIA_INVALID = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_invalid), ALL_NO_PREFIX);
+ ATTR_ARIA_TEMPLATEID = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_templateid), ALL_NO_PREFIX);
+ ATTR_ARIA_VALUEMIN = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_valuemin), ALL_NO_PREFIX);
+ ATTR_ARIA_MULTISELECTABLE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_multiselectable), ALL_NO_PREFIX);
+ ATTR_ARIA_CONTROLS = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_controls), ALL_NO_PREFIX);
+ ATTR_ARIA_MULTILINE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_multiline), ALL_NO_PREFIX);
+ ATTR_ARIA_READONLY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_readonly), ALL_NO_PREFIX);
+ ATTR_ARIA_OWNS = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_owns), ALL_NO_PREFIX);
+ ATTR_ARIA_ACTIVEDESCENDANT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_activedescendant), ALL_NO_PREFIX);
+ ATTR_ARIA_RELEVANT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_relevant), ALL_NO_PREFIX);
+ ATTR_ARIA_DATATYPE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_datatype), ALL_NO_PREFIX);
+ ATTR_ARIA_VALUENOW = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_valuenow), ALL_NO_PREFIX);
+ ATTR_ARIA_SORT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_sort), ALL_NO_PREFIX);
+ ATTR_ARIA_AUTOCOMPLETE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_autocomplete), ALL_NO_PREFIX);
+ ATTR_ARIA_FLOWTO = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_flowto), ALL_NO_PREFIX);
+ ATTR_ARIA_BUSY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_busy), ALL_NO_PREFIX);
+ ATTR_ARIA_LIVE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_live), ALL_NO_PREFIX);
+ ATTR_ARIA_HASPOPUP = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_haspopup), ALL_NO_PREFIX);
+ ATTR_ARIA_SETSIZE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::aria_setsize), ALL_NO_PREFIX);
+ ATTR_CLEAR = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::clear), ALL_NO_PREFIX);
+ ATTR_DISABLED = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::disabled), ALL_NO_PREFIX);
+ ATTR_DEFAULT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::_default), ALL_NO_PREFIX);
+ ATTR_DATA = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::data), ALL_NO_PREFIX);
+ ATTR_EQUALCOLUMNS = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::equalcolumns_), ALL_NO_PREFIX);
+ ATTR_EQUALROWS = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::equalrows_), ALL_NO_PREFIX);
+ ATTR_HSPACE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::hspace), ALL_NO_PREFIX);
+ ATTR_ISMAP = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::ismap), ALL_NO_PREFIX);
+ ATTR_LOCAL = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::local), ALL_NO_PREFIX);
+ ATTR_LSPACE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::lspace_), ALL_NO_PREFIX);
+ ATTR_MOVABLELIMITS = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::movablelimits_), ALL_NO_PREFIX);
+ ATTR_NOTATION = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::notation_), ALL_NO_PREFIX);
+ ATTR_ONDATAAVAILABLE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::ondataavailable), ALL_NO_PREFIX);
+ ATTR_ONPASTE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onpaste), ALL_NO_PREFIX);
+ ATTR_RSPACE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rspace_), ALL_NO_PREFIX);
+ ATTR_ROWALIGN = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rowalign_), ALL_NO_PREFIX);
+ ATTR_ROTATE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rotate), ALL_NO_PREFIX);
+ ATTR_SEPARATOR = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::separator_), ALL_NO_PREFIX);
+ ATTR_SEPARATORS = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::separators_), ALL_NO_PREFIX);
+ ATTR_VSPACE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::vspace), ALL_NO_PREFIX);
+ ATTR_XCHANNELSELECTOR = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::xchannelselector, nsGkAtoms::xChannelSelector), ALL_NO_PREFIX);
+ ATTR_YCHANNELSELECTOR = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::ychannelselector, nsGkAtoms::yChannelSelector), ALL_NO_PREFIX);
+ ATTR_ENABLE_BACKGROUND = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::enable_background), ALL_NO_PREFIX);
+ ATTR_ONDBLCLICK = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::ondblclick), ALL_NO_PREFIX);
+ ATTR_ONABORT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onabort), ALL_NO_PREFIX);
+ ATTR_CALCMODE = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::calcmode, nsGkAtoms::calcMode), ALL_NO_PREFIX);
+ ATTR_CHECKED = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::checked), ALL_NO_PREFIX);
+ ATTR_FENCE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::fence_), ALL_NO_PREFIX);
+ ATTR_ONSCROLL = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onscroll), ALL_NO_PREFIX);
+ ATTR_ONACTIVATE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onactivate), ALL_NO_PREFIX);
+ ATTR_OPACITY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::opacity), ALL_NO_PREFIX);
+ ATTR_SPACING = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::spacing), ALL_NO_PREFIX);
+ ATTR_SPECULAREXPONENT = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::specularexponent, nsGkAtoms::specularExponent), ALL_NO_PREFIX);
+ ATTR_SPECULARCONSTANT = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::specularconstant, nsGkAtoms::specularConstant), ALL_NO_PREFIX);
+ ATTR_BORDER = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::border), ALL_NO_PREFIX);
+ ATTR_ID = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::id), ALL_NO_PREFIX);
+ ATTR_GRADIENTTRANSFORM = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::gradienttransform, nsGkAtoms::gradientTransform), ALL_NO_PREFIX);
+ ATTR_GRADIENTUNITS = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::gradientunits, nsGkAtoms::gradientUnits), ALL_NO_PREFIX);
+ ATTR_HIDDEN = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::hidden), ALL_NO_PREFIX);
+ ATTR_HEADERS = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::headers), ALL_NO_PREFIX);
+ ATTR_READONLY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::readonly), ALL_NO_PREFIX);
+ ATTR_RENDERING_INTENT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rendering_intent), ALL_NO_PREFIX);
+ ATTR_SEED = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::seed), ALL_NO_PREFIX);
+ ATTR_SRCDOC = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::srcdoc), ALL_NO_PREFIX);
+ ATTR_STDDEVIATION = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::stddeviation, nsGkAtoms::stdDeviation), ALL_NO_PREFIX);
+ ATTR_SANDBOX = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::sandbox), ALL_NO_PREFIX);
+ ATTR_WORD_SPACING = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::word_spacing), ALL_NO_PREFIX);
+ ATTR_ACCENTUNDER = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::accentunder_), ALL_NO_PREFIX);
+ ATTR_ACCEPT_CHARSET = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::acceptcharset), ALL_NO_PREFIX);
+ ATTR_ACCESSKEY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::accesskey), ALL_NO_PREFIX);
+ ATTR_ACCENT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::accent_), ALL_NO_PREFIX);
+ ATTR_ACCEPT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::accept), ALL_NO_PREFIX);
+ ATTR_BEVELLED = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::bevelled_), ALL_NO_PREFIX);
+ ATTR_BASEFREQUENCY = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::basefrequency, nsGkAtoms::baseFrequency), ALL_NO_PREFIX);
+ ATTR_BASELINE_SHIFT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::baseline_shift), ALL_NO_PREFIX);
+ ATTR_BASEPROFILE = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::baseprofile, nsGkAtoms::baseProfile), ALL_NO_PREFIX);
+ ATTR_BASELINE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::baseline), ALL_NO_PREFIX);
+ ATTR_BASE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::base), ALL_NO_PREFIX);
+ ATTR_CODE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::code), ALL_NO_PREFIX);
+ ATTR_CODETYPE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::codetype), ALL_NO_PREFIX);
+ ATTR_CODEBASE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::codebase), ALL_NO_PREFIX);
+ ATTR_CITE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::cite), ALL_NO_PREFIX);
+ ATTR_DEFER = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::defer), ALL_NO_PREFIX);
+ ATTR_DATETIME = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::datetime), ALL_NO_PREFIX);
+ ATTR_DIRECTION = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::direction), ALL_NO_PREFIX);
+ ATTR_EDGEMODE = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::edgemode, nsGkAtoms::edgeMode), ALL_NO_PREFIX);
+ ATTR_EDGE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::edge_), ALL_NO_PREFIX);
+ ATTR_FACE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::face), ALL_NO_PREFIX);
+ ATTR_INDEX = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::index), ALL_NO_PREFIX);
+ ATTR_INTERCEPT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::intercept), ALL_NO_PREFIX);
+ ATTR_INTEGRITY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::integrity), ALL_NO_PREFIX);
+ ATTR_LINEBREAK = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::linebreak_), ALL_NO_PREFIX);
+ ATTR_LABEL = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::label), ALL_NO_PREFIX);
+ ATTR_LINETHICKNESS = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::linethickness_), ALL_NO_PREFIX);
+ ATTR_MODE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::mode), ALL_NO_PREFIX);
+ ATTR_NAME = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::name), ALL_NO_PREFIX);
+ ATTR_NORESIZE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::noresize), ALL_NO_PREFIX);
+ ATTR_ONBEFOREUNLOAD = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onbeforeunload), ALL_NO_PREFIX);
+ ATTR_ONREPEAT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onrepeat), ALL_NO_PREFIX);
+ ATTR_OBJECT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::object), ALL_NO_PREFIX);
+ ATTR_ONSELECT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onselect), ALL_NO_PREFIX);
+ ATTR_ORDER = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::order), ALL_NO_PREFIX);
+ ATTR_OTHER = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::other), ALL_NO_PREFIX);
+ ATTR_ONRESET = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onreset), ALL_NO_PREFIX);
+ ATTR_ONREADYSTATECHANGE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onreadystatechange), ALL_NO_PREFIX);
+ ATTR_ONMESSAGE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onmessage), ALL_NO_PREFIX);
+ ATTR_ONBEGIN = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onbegin), ALL_NO_PREFIX);
+ ATTR_ONBEFOREPRINT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onbeforeprint), ALL_NO_PREFIX);
+ ATTR_ORIENT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::orient), ALL_NO_PREFIX);
+ ATTR_ORIENTATION = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::orientation), ALL_NO_PREFIX);
+ ATTR_ONBEFORECOPY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onbeforecopy), ALL_NO_PREFIX);
+ ATTR_ONSELECTSTART = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onselectstart), ALL_NO_PREFIX);
+ ATTR_ONBEFOREPASTE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onbeforepaste), ALL_NO_PREFIX);
+ ATTR_ONKEYPRESS = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onkeypress), ALL_NO_PREFIX);
+ ATTR_ONKEYUP = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onkeyup), ALL_NO_PREFIX);
+ ATTR_ONBEFORECUT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onbeforecut), ALL_NO_PREFIX);
+ ATTR_ONKEYDOWN = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onkeydown), ALL_NO_PREFIX);
+ ATTR_ONRESIZE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onresize), ALL_NO_PREFIX);
+ ATTR_REPEAT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::repeat), ALL_NO_PREFIX);
+ ATTR_REFERRERPOLICY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::referrerpolicy), ALL_NO_PREFIX);
+ ATTR_RULES = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rules), ALL_NO_PREFIX);
+ ATTR_ROLE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::role), ALL_NO_PREFIX);
+ ATTR_REPEATCOUNT = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::repeatcount, nsGkAtoms::repeatCount), ALL_NO_PREFIX);
+ ATTR_REPEATDUR = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::repeatdur, nsGkAtoms::repeatDur), ALL_NO_PREFIX);
+ ATTR_SELECTED = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::selected), ALL_NO_PREFIX);
+ ATTR_SIZES = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::sizes), ALL_NO_PREFIX);
+ ATTR_SUPERSCRIPTSHIFT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::superscriptshift_), ALL_NO_PREFIX);
+ ATTR_STRETCHY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::stretchy_), ALL_NO_PREFIX);
+ ATTR_SCHEME = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::scheme), ALL_NO_PREFIX);
+ ATTR_SPREADMETHOD = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::spreadmethod, nsGkAtoms::spreadMethod), ALL_NO_PREFIX);
+ ATTR_SELECTION = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::selection_), ALL_NO_PREFIX);
+ ATTR_SIZE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::size), ALL_NO_PREFIX);
+ ATTR_TYPE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::type), ALL_NO_PREFIX);
+ ATTR_DIFFUSECONSTANT = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::diffuseconstant, nsGkAtoms::diffuseConstant), ALL_NO_PREFIX);
+ ATTR_HREF = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::href), ALL_NO_PREFIX);
+ ATTR_HREFLANG = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::hreflang), ALL_NO_PREFIX);
+ ATTR_ONAFTERPRINT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onafterprint), ALL_NO_PREFIX);
+ ATTR_PROFILE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::profile), ALL_NO_PREFIX);
+ ATTR_SURFACESCALE = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::surfacescale, nsGkAtoms::surfaceScale), ALL_NO_PREFIX);
+ ATTR_XREF = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::xref_), ALL_NO_PREFIX);
+ ATTR_ALIGN = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::align), ALL_NO_PREFIX);
+ ATTR_ALIGNMENT_BASELINE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::alignment_baseline), ALL_NO_PREFIX);
+ ATTR_ALIGNMENTSCOPE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::alignmentscope_), ALL_NO_PREFIX);
+ ATTR_DRAGGABLE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::draggable), ALL_NO_PREFIX);
+ ATTR_HEIGHT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::height), ALL_NO_PREFIX);
+ ATTR_IMAGE_RENDERING = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::image_rendering), ALL_NO_PREFIX);
+ ATTR_LANGUAGE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::language), ALL_NO_PREFIX);
+ ATTR_LANG = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::lang), ALL_NO_PREFIX);
+ ATTR_LARGEOP = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::largeop_), ALL_NO_PREFIX);
+ ATTR_LONGDESC = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::longdesc), ALL_NO_PREFIX);
+ ATTR_LENGTHADJUST = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::lengthadjust, nsGkAtoms::lengthAdjust), ALL_NO_PREFIX);
+ ATTR_MARGINHEIGHT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::marginheight), ALL_NO_PREFIX);
+ ATTR_MARGINWIDTH = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::marginwidth), ALL_NO_PREFIX);
+ ATTR_ORIGIN = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::origin), ALL_NO_PREFIX);
+ ATTR_PING = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::ping), ALL_NO_PREFIX);
+ ATTR_TARGET = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::target), ALL_NO_PREFIX);
+ ATTR_TARGETX = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::targetx, nsGkAtoms::targetX), ALL_NO_PREFIX);
+ ATTR_TARGETY = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::targety, nsGkAtoms::targetY), ALL_NO_PREFIX);
+ ATTR_ARCHIVE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::archive), ALL_NO_PREFIX);
+ ATTR_HIGH = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::high), ALL_NO_PREFIX);
+ ATTR_LIGHTING_COLOR = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::lighting_color), ALL_NO_PREFIX);
+ ATTR_MATHBACKGROUND = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::mathbackground_), ALL_NO_PREFIX);
+ ATTR_METHOD = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::method), ALL_NO_PREFIX);
+ ATTR_MATHVARIANT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::mathvariant_), ALL_NO_PREFIX);
+ ATTR_MATHCOLOR = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::mathcolor_), ALL_NO_PREFIX);
+ ATTR_MATHSIZE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::mathsize_), ALL_NO_PREFIX);
+ ATTR_NOSHADE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::noshade), ALL_NO_PREFIX);
+ ATTR_ONCHANGE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onchange), ALL_NO_PREFIX);
+ ATTR_PATHLENGTH = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::pathlength, nsGkAtoms::pathLength), ALL_NO_PREFIX);
+ ATTR_PATH = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::path), ALL_NO_PREFIX);
+ ATTR_ALTIMG = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::altimg_), ALL_NO_PREFIX);
+ ATTR_ACTIONTYPE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::actiontype_), ALL_NO_PREFIX);
+ ATTR_ACTION = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::action), ALL_NO_PREFIX);
+ ATTR_ACTIVE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::active), ALL_NO_PREFIX);
+ ATTR_ADDITIVE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::additive), ALL_NO_PREFIX);
+ ATTR_BEGIN = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::begin), ALL_NO_PREFIX);
+ ATTR_DOMINANT_BASELINE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::dominant_baseline), ALL_NO_PREFIX);
+ ATTR_DIVISOR = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::divisor), ALL_NO_PREFIX);
+ ATTR_DEFINITIONURL = new nsHtml5AttributeName(ALL_NO_NS, MATH_DIFFERENT(nsGkAtoms::definitionurl, nsGkAtoms::definitionURL_), ALL_NO_PREFIX);
+ ATTR_LIMITINGCONEANGLE = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::limitingconeangle, nsGkAtoms::limitingConeAngle), ALL_NO_PREFIX);
+ ATTR_MEDIA = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::media), ALL_NO_PREFIX);
+ ATTR_MANIFEST = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::manifest), ALL_NO_PREFIX);
+ ATTR_ONFINISH = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onfinish), ALL_NO_PREFIX);
+ ATTR_OPTIMUM = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::optimum), ALL_NO_PREFIX);
+ ATTR_RADIOGROUP = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::radiogroup), ALL_NO_PREFIX);
+ ATTR_RADIUS = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::radius), ALL_NO_PREFIX);
+ ATTR_SCRIPTLEVEL = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::scriptlevel_), ALL_NO_PREFIX);
+ ATTR_SCRIPTSIZEMULTIPLIER = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::scriptsizemultiplier_), ALL_NO_PREFIX);
+ ATTR_SCRIPTMINSIZE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::scriptminsize_), ALL_NO_PREFIX);
+ ATTR_TABINDEX = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::tabindex), ALL_NO_PREFIX);
+ ATTR_VALIGN = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::valign), ALL_NO_PREFIX);
+ ATTR_VISIBILITY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::visibility), ALL_NO_PREFIX);
+ ATTR_BACKGROUND = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::background), ALL_NO_PREFIX);
+ ATTR_LINK = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::link), ALL_NO_PREFIX);
+ ATTR_MARKER_MID = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::marker_mid), ALL_NO_PREFIX);
+ ATTR_MARKERHEIGHT = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::markerheight, nsGkAtoms::markerHeight), ALL_NO_PREFIX);
+ ATTR_MARKER_END = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::marker_end), ALL_NO_PREFIX);
+ ATTR_MASK = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::mask), ALL_NO_PREFIX);
+ ATTR_MARKER_START = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::marker_start), ALL_NO_PREFIX);
+ ATTR_MARKERWIDTH = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::markerwidth, nsGkAtoms::markerWidth), ALL_NO_PREFIX);
+ ATTR_MASKUNITS = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::maskunits, nsGkAtoms::maskUnits), ALL_NO_PREFIX);
+ ATTR_MARKERUNITS = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::markerunits, nsGkAtoms::markerUnits), ALL_NO_PREFIX);
+ ATTR_MASKCONTENTUNITS = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::maskcontentunits, nsGkAtoms::maskContentUnits), ALL_NO_PREFIX);
+ ATTR_AMPLITUDE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::amplitude), ALL_NO_PREFIX);
+ ATTR_CELLSPACING = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::cellspacing), ALL_NO_PREFIX);
+ ATTR_CELLPADDING = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::cellpadding), ALL_NO_PREFIX);
+ ATTR_DECLARE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::declare), ALL_NO_PREFIX);
+ ATTR_FILL_RULE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::fill_rule), ALL_NO_PREFIX);
+ ATTR_FILL = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::fill), ALL_NO_PREFIX);
+ ATTR_FILL_OPACITY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::fill_opacity), ALL_NO_PREFIX);
+ ATTR_MAXLENGTH = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::maxlength), ALL_NO_PREFIX);
+ ATTR_ONCLICK = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onclick), ALL_NO_PREFIX);
+ ATTR_ONBLUR = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onblur), ALL_NO_PREFIX);
+ ATTR_REPLACE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::replace), ALL_NO_PREFIX);
+ ATTR_ROWLINES = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rowlines_), ALL_NO_PREFIX);
+ ATTR_SCALE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::scale), ALL_NO_PREFIX);
+ ATTR_STYLE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::style), ALL_NO_PREFIX);
+ ATTR_TABLEVALUES = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::tablevalues, nsGkAtoms::tableValues), ALL_NO_PREFIX);
+ ATTR_TITLE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::title), ALL_NO_PREFIX);
+ ATTR_AZIMUTH = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::azimuth), ALL_NO_PREFIX);
+ ATTR_FORMAT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::format), ALL_NO_PREFIX);
+ ATTR_FRAMEBORDER = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::frameborder), ALL_NO_PREFIX);
+ ATTR_FRAME = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::frame), ALL_NO_PREFIX);
+ ATTR_FRAMESPACING = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::framespacing_), ALL_NO_PREFIX);
+ ATTR_FROM = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::from), ALL_NO_PREFIX);
+ ATTR_FORM = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::form), ALL_NO_PREFIX);
+ ATTR_PROMPT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::prompt), ALL_NO_PREFIX);
+ ATTR_PRIMITIVEUNITS = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::primitiveunits, nsGkAtoms::primitiveUnits), ALL_NO_PREFIX);
+ ATTR_SYMMETRIC = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::symmetric_), ALL_NO_PREFIX);
+ ATTR_SUMMARY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::summary), ALL_NO_PREFIX);
+ ATTR_USEMAP = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::usemap), ALL_NO_PREFIX);
+ ATTR_ZOOMANDPAN = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::zoomandpan, nsGkAtoms::zoomAndPan), ALL_NO_PREFIX);
+ ATTR_ASYNC = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::async), ALL_NO_PREFIX);
+ ATTR_ALINK = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::alink), ALL_NO_PREFIX);
+ ATTR_IN = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::in), ALL_NO_PREFIX);
+ ATTR_ICON = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::icon), ALL_NO_PREFIX);
+ ATTR_KERNELMATRIX = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::kernelmatrix, nsGkAtoms::kernelMatrix), ALL_NO_PREFIX);
+ ATTR_KERNING = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::kerning), ALL_NO_PREFIX);
+ ATTR_KERNELUNITLENGTH = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::kernelunitlength, nsGkAtoms::kernelUnitLength), ALL_NO_PREFIX);
+ ATTR_ONUNLOAD = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onunload), ALL_NO_PREFIX);
+ ATTR_OPEN = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::open), ALL_NO_PREFIX);
+ ATTR_ONINVALID = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::oninvalid), ALL_NO_PREFIX);
+ ATTR_ONEND = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onend), ALL_NO_PREFIX);
+ ATTR_ONINPUT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::oninput), ALL_NO_PREFIX);
+ ATTR_POINTER_EVENTS = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::pointer_events), ALL_NO_PREFIX);
+ ATTR_POINTS = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::points), ALL_NO_PREFIX);
+ ATTR_POINTSATX = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::pointsatx, nsGkAtoms::pointsAtX), ALL_NO_PREFIX);
+ ATTR_POINTSATY = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::pointsaty, nsGkAtoms::pointsAtY), ALL_NO_PREFIX);
+ ATTR_POINTSATZ = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::pointsatz, nsGkAtoms::pointsAtZ), ALL_NO_PREFIX);
+ ATTR_SPAN = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::span), ALL_NO_PREFIX);
+ ATTR_STANDBY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::standby), ALL_NO_PREFIX);
+ ATTR_TRANSFORM = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::transform), ALL_NO_PREFIX);
+ ATTR_VLINK = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::vlink), ALL_NO_PREFIX);
+ ATTR_WHEN = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::when), ALL_NO_PREFIX);
+ ATTR_XLINK_HREF = new nsHtml5AttributeName(XLINK_NS, COLONIFIED_LOCAL(nsGkAtoms::xlink_href, nsGkAtoms::href), XLINK_PREFIX);
+ ATTR_XLINK_TITLE = new nsHtml5AttributeName(XLINK_NS, COLONIFIED_LOCAL(nsGkAtoms::xlink_title, nsGkAtoms::title), XLINK_PREFIX);
+ ATTR_XLINK_ROLE = new nsHtml5AttributeName(XLINK_NS, COLONIFIED_LOCAL(nsGkAtoms::xlink_role, nsGkAtoms::role), XLINK_PREFIX);
+ ATTR_XLINK_ARCROLE = new nsHtml5AttributeName(XLINK_NS, COLONIFIED_LOCAL(nsGkAtoms::xlink_arcrole, nsGkAtoms::arcrole), XLINK_PREFIX);
+ ATTR_XMLNS_XLINK = new nsHtml5AttributeName(XMLNS_NS, COLONIFIED_LOCAL(nsGkAtoms::xmlns_xlink, nsGkAtoms::xlink), XMLNS_PREFIX);
+ ATTR_XMLNS = new nsHtml5AttributeName(XMLNS_NS, SAME_LOCAL(nsGkAtoms::xmlns), ALL_NO_PREFIX);
+ ATTR_XLINK_TYPE = new nsHtml5AttributeName(XLINK_NS, COLONIFIED_LOCAL(nsGkAtoms::xlink_type, nsGkAtoms::type), XLINK_PREFIX);
+ ATTR_XLINK_SHOW = new nsHtml5AttributeName(XLINK_NS, COLONIFIED_LOCAL(nsGkAtoms::xlink_show, nsGkAtoms::show), XLINK_PREFIX);
+ ATTR_XLINK_ACTUATE = new nsHtml5AttributeName(XLINK_NS, COLONIFIED_LOCAL(nsGkAtoms::xlink_actuate, nsGkAtoms::actuate), XLINK_PREFIX);
+ ATTR_AUTOPLAY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::autoplay), ALL_NO_PREFIX);
+ ATTR_AUTOCOMPLETE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::autocomplete), ALL_NO_PREFIX);
+ ATTR_AUTOFOCUS = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::autofocus), ALL_NO_PREFIX);
+ ATTR_BGCOLOR = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::bgcolor), ALL_NO_PREFIX);
+ ATTR_COLOR_PROFILE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::colorProfile), ALL_NO_PREFIX);
+ ATTR_COLOR_RENDERING = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::color_rendering), ALL_NO_PREFIX);
+ ATTR_COLOR_INTERPOLATION = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::colorInterpolation), ALL_NO_PREFIX);
+ ATTR_COLOR = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::color), ALL_NO_PREFIX);
+ ATTR_COLOR_INTERPOLATION_FILTERS = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::colorInterpolationFilters), ALL_NO_PREFIX);
+ ATTR_ENCODING = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::encoding), ALL_NO_PREFIX);
+ ATTR_EXPONENT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::exponent), ALL_NO_PREFIX);
+ ATTR_FLOOD_COLOR = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::flood_color), ALL_NO_PREFIX);
+ ATTR_FLOOD_OPACITY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::flood_opacity), ALL_NO_PREFIX);
+ ATTR_LQUOTE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::lquote_), ALL_NO_PREFIX);
+ ATTR_NUMOCTAVES = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::numoctaves, nsGkAtoms::numOctaves), ALL_NO_PREFIX);
+ ATTR_ONLOAD = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onload), ALL_NO_PREFIX);
+ ATTR_ONMOUSEWHEEL = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onmousewheel), ALL_NO_PREFIX);
+ ATTR_ONMOUSEENTER = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onmouseenter), ALL_NO_PREFIX);
+ ATTR_ONMOUSEOVER = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onmouseover), ALL_NO_PREFIX);
+ ATTR_ONFOCUSIN = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onfocusin), ALL_NO_PREFIX);
+ ATTR_ONCONTEXTMENU = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::oncontextmenu), ALL_NO_PREFIX);
+ ATTR_ONZOOM = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onzoom), ALL_NO_PREFIX);
+ ATTR_ONCOPY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::oncopy), ALL_NO_PREFIX);
+ ATTR_ONMOUSELEAVE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onmouseleave), ALL_NO_PREFIX);
+ ATTR_ONMOUSEMOVE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onmousemove), ALL_NO_PREFIX);
+ ATTR_ONMOUSEUP = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onmouseup), ALL_NO_PREFIX);
+ ATTR_ONFOCUS = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onfocus), ALL_NO_PREFIX);
+ ATTR_ONMOUSEOUT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onmouseout), ALL_NO_PREFIX);
+ ATTR_ONFOCUSOUT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onfocusout), ALL_NO_PREFIX);
+ ATTR_ONMOUSEDOWN = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onmousedown), ALL_NO_PREFIX);
+ ATTR_TO = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::to), ALL_NO_PREFIX);
+ ATTR_RQUOTE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rquote_), ALL_NO_PREFIX);
+ ATTR_STROKE_LINECAP = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::stroke_linecap), ALL_NO_PREFIX);
+ ATTR_STROKE_DASHARRAY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::stroke_dasharray), ALL_NO_PREFIX);
+ ATTR_STROKE_DASHOFFSET = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::stroke_dashoffset), ALL_NO_PREFIX);
+ ATTR_STROKE_LINEJOIN = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::stroke_linejoin), ALL_NO_PREFIX);
+ ATTR_STROKE_MITERLIMIT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::stroke_miterlimit), ALL_NO_PREFIX);
+ ATTR_STROKE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::stroke), ALL_NO_PREFIX);
+ ATTR_SCROLLING = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::scrolling), ALL_NO_PREFIX);
+ ATTR_STROKE_WIDTH = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::stroke_width), ALL_NO_PREFIX);
+ ATTR_STROKE_OPACITY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::stroke_opacity), ALL_NO_PREFIX);
+ ATTR_COMPACT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::compact), ALL_NO_PREFIX);
+ ATTR_CLIP = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::clip), ALL_NO_PREFIX);
+ ATTR_CLIP_RULE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::clip_rule), ALL_NO_PREFIX);
+ ATTR_CLIP_PATH = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::clip_path), ALL_NO_PREFIX);
+ ATTR_CLIPPATHUNITS = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::clippathunits, nsGkAtoms::clipPathUnits), ALL_NO_PREFIX);
+ ATTR_DISPLAY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::display), ALL_NO_PREFIX);
+ ATTR_DISPLAYSTYLE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::displaystyle_), ALL_NO_PREFIX);
+ ATTR_GLYPH_ORIENTATION_VERTICAL = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::glyph_orientation_vertical), ALL_NO_PREFIX);
+ ATTR_GLYPH_ORIENTATION_HORIZONTAL = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::glyph_orientation_horizontal), ALL_NO_PREFIX);
+ ATTR_GLYPHREF = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::glyphref, nsGkAtoms::glyphRef), ALL_NO_PREFIX);
+ ATTR_HTTP_EQUIV = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::httpEquiv), ALL_NO_PREFIX);
+ ATTR_KEYPOINTS = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::keypoints, nsGkAtoms::keyPoints), ALL_NO_PREFIX);
+ ATTR_LOOP = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::loop), ALL_NO_PREFIX);
+ ATTR_PROPERTY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::property), ALL_NO_PREFIX);
+ ATTR_SCOPED = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::scoped), ALL_NO_PREFIX);
+ ATTR_STEP = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::step), ALL_NO_PREFIX);
+ ATTR_SHAPE_RENDERING = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::shape_rendering), ALL_NO_PREFIX);
+ ATTR_SCOPE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::scope), ALL_NO_PREFIX);
+ ATTR_SHAPE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::shape), ALL_NO_PREFIX);
+ ATTR_SLOPE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::slope), ALL_NO_PREFIX);
+ ATTR_STOP_COLOR = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::stop_color), ALL_NO_PREFIX);
+ ATTR_STOP_OPACITY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::stop_opacity), ALL_NO_PREFIX);
+ ATTR_TEMPLATE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::_template), ALL_NO_PREFIX);
+ ATTR_WRAP = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::wrap), ALL_NO_PREFIX);
+ ATTR_ABBR = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::abbr), ALL_NO_PREFIX);
+ ATTR_ATTRIBUTENAME = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::attributename, nsGkAtoms::attributeName), ALL_NO_PREFIX);
+ ATTR_ATTRIBUTETYPE = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::attributetype, nsGkAtoms::attributeType), ALL_NO_PREFIX);
+ ATTR_CHAR = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::_char), ALL_NO_PREFIX);
+ ATTR_COORDS = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::coords), ALL_NO_PREFIX);
+ ATTR_CHAROFF = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::charoff), ALL_NO_PREFIX);
+ ATTR_CHARSET = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::charset), ALL_NO_PREFIX);
+ ATTR_NOWRAP = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::nowrap), ALL_NO_PREFIX);
+ ATTR_NOHREF = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::nohref), ALL_NO_PREFIX);
+ ATTR_ONDRAG = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::ondrag), ALL_NO_PREFIX);
+ ATTR_ONDRAGENTER = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::ondragenter), ALL_NO_PREFIX);
+ ATTR_ONDRAGOVER = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::ondragover), ALL_NO_PREFIX);
+ ATTR_ONDRAGEND = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::ondragend), ALL_NO_PREFIX);
+ ATTR_ONDROP = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::ondrop), ALL_NO_PREFIX);
+ ATTR_ONDRAGDROP = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::ondragdrop), ALL_NO_PREFIX);
+ ATTR_ONERROR = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onerror), ALL_NO_PREFIX);
+ ATTR_OPERATOR = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::_operator), ALL_NO_PREFIX);
+ ATTR_OVERFLOW = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::overflow), ALL_NO_PREFIX);
+ ATTR_ONDRAGSTART = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::ondragstart), ALL_NO_PREFIX);
+ ATTR_ONDRAGLEAVE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::ondragleave), ALL_NO_PREFIX);
+ ATTR_STARTOFFSET = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::startoffset, nsGkAtoms::startOffset), ALL_NO_PREFIX);
+ ATTR_START = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::start), ALL_NO_PREFIX);
+ ATTR_AXIS = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::axis), ALL_NO_PREFIX);
+ ATTR_BIAS = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::bias), ALL_NO_PREFIX);
+ ATTR_COLSPAN = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::colspan), ALL_NO_PREFIX);
+ ATTR_CLASSID = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::classid), ALL_NO_PREFIX);
+ ATTR_CROSSORIGIN = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::crossorigin), ALL_NO_PREFIX);
+ ATTR_COLS = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::cols), ALL_NO_PREFIX);
+ ATTR_CURSOR = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::cursor), ALL_NO_PREFIX);
+ ATTR_CLOSURE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::closure_), ALL_NO_PREFIX);
+ ATTR_CLOSE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::close), ALL_NO_PREFIX);
+ ATTR_CLASS = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::_class), ALL_NO_PREFIX);
+ ATTR_KEYSYSTEM = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::keysystem), ALL_NO_PREFIX);
+ ATTR_KEYSPLINES = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::keysplines, nsGkAtoms::keySplines), ALL_NO_PREFIX);
+ ATTR_LOWSRC = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::lowsrc), ALL_NO_PREFIX);
+ ATTR_MAXSIZE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::maxsize_), ALL_NO_PREFIX);
+ ATTR_MINSIZE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::minsize_), ALL_NO_PREFIX);
+ ATTR_OFFSET = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::offset), ALL_NO_PREFIX);
+ ATTR_PRESERVEALPHA = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::preservealpha, nsGkAtoms::preserveAlpha), ALL_NO_PREFIX);
+ ATTR_PRESERVEASPECTRATIO = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::preserveaspectratio, nsGkAtoms::preserveAspectRatio), ALL_NO_PREFIX);
+ ATTR_ROWSPAN = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rowspan), ALL_NO_PREFIX);
+ ATTR_ROWSPACING = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rowspacing_), ALL_NO_PREFIX);
+ ATTR_ROWS = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rows), ALL_NO_PREFIX);
+ ATTR_SRCSET = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::srcset), ALL_NO_PREFIX);
+ ATTR_SUBSCRIPTSHIFT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::subscriptshift_), ALL_NO_PREFIX);
+ ATTR_VERSION = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::version), ALL_NO_PREFIX);
+ ATTR_ALTTEXT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::alttext), ALL_NO_PREFIX);
+ ATTR_CONTENTEDITABLE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::contenteditable), ALL_NO_PREFIX);
+ ATTR_CONTROLS = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::controls), ALL_NO_PREFIX);
+ ATTR_CONTENT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::content), ALL_NO_PREFIX);
+ ATTR_CONTEXTMENU = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::contextmenu), ALL_NO_PREFIX);
+ ATTR_DEPTH = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::depth_), ALL_NO_PREFIX);
+ ATTR_ENCTYPE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::enctype), ALL_NO_PREFIX);
+ ATTR_FONT_STRETCH = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::font_stretch), ALL_NO_PREFIX);
+ ATTR_FILTER = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::filter), ALL_NO_PREFIX);
+ ATTR_FONTWEIGHT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::fontweight_), ALL_NO_PREFIX);
+ ATTR_FONT_WEIGHT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::fontWeight), ALL_NO_PREFIX);
+ ATTR_FONTSTYLE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::fontstyle_), ALL_NO_PREFIX);
+ ATTR_FONT_STYLE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::font_style), ALL_NO_PREFIX);
+ ATTR_FONTFAMILY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::fontfamily_), ALL_NO_PREFIX);
+ ATTR_FONT_FAMILY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::font_family), ALL_NO_PREFIX);
+ ATTR_FONT_VARIANT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::font_variant), ALL_NO_PREFIX);
+ ATTR_FONT_SIZE_ADJUST = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::font_size_adjust), ALL_NO_PREFIX);
+ ATTR_FILTERUNITS = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::filterunits, nsGkAtoms::filterUnits), ALL_NO_PREFIX);
+ ATTR_FONTSIZE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::fontsize_), ALL_NO_PREFIX);
+ ATTR_FONT_SIZE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::font_size), ALL_NO_PREFIX);
+ ATTR_KEYTIMES = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::keytimes, nsGkAtoms::keyTimes), ALL_NO_PREFIX);
+ ATTR_LETTER_SPACING = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::letter_spacing), ALL_NO_PREFIX);
+ ATTR_LIST = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::list_), ALL_NO_PREFIX);
+ ATTR_MULTIPLE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::multiple), ALL_NO_PREFIX);
+ ATTR_RT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rt), ALL_NO_PREFIX);
+ ATTR_ONSTOP = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onstop), ALL_NO_PREFIX);
+ ATTR_ONSTART = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onstart), ALL_NO_PREFIX);
+ ATTR_POSTER = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::poster), ALL_NO_PREFIX);
+ ATTR_PATTERNTRANSFORM = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::patterntransform, nsGkAtoms::patternTransform), ALL_NO_PREFIX);
+ ATTR_PATTERN = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::pattern), ALL_NO_PREFIX);
+ ATTR_PATTERNUNITS = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::patternunits, nsGkAtoms::patternUnits), ALL_NO_PREFIX);
+ ATTR_PATTERNCONTENTUNITS = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::patterncontentunits, nsGkAtoms::patternContentUnits), ALL_NO_PREFIX);
+ ATTR_RESTART = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::restart), ALL_NO_PREFIX);
+ ATTR_STITCHTILES = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::stitchtiles, nsGkAtoms::stitchTiles), ALL_NO_PREFIX);
+ ATTR_SYSTEMLANGUAGE = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::systemlanguage, nsGkAtoms::systemLanguage), ALL_NO_PREFIX);
+ ATTR_TEXT_RENDERING = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::text_rendering), ALL_NO_PREFIX);
+ ATTR_TEXT_DECORATION = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::text_decoration), ALL_NO_PREFIX);
+ ATTR_TEXT_ANCHOR = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::text_anchor), ALL_NO_PREFIX);
+ ATTR_TEXTLENGTH = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::textlength, nsGkAtoms::textLength), ALL_NO_PREFIX);
+ ATTR_TEXT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::text), ALL_NO_PREFIX);
+ ATTR_WRITING_MODE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::writing_mode), ALL_NO_PREFIX);
+ ATTR_WIDTH = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::width), ALL_NO_PREFIX);
+ ATTR_ACCUMULATE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::accumulate), ALL_NO_PREFIX);
+ ATTR_COLUMNSPAN = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::columnspan_), ALL_NO_PREFIX);
+ ATTR_COLUMNLINES = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::columnlines_), ALL_NO_PREFIX);
+ ATTR_COLUMNALIGN = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::columnalign_), ALL_NO_PREFIX);
+ ATTR_COLUMNSPACING = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::columnspacing_), ALL_NO_PREFIX);
+ ATTR_COLUMNWIDTH = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::columnwidth_), ALL_NO_PREFIX);
+ ATTR_GROUPALIGN = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::groupalign_), ALL_NO_PREFIX);
+ ATTR_INPUTMODE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::inputmode), ALL_NO_PREFIX);
+ ATTR_ONSUBMIT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::onsubmit), ALL_NO_PREFIX);
+ ATTR_ONCUT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::oncut), ALL_NO_PREFIX);
+ ATTR_REQUIRED = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::required), ALL_NO_PREFIX);
+ ATTR_REQUIREDFEATURES = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::requiredfeatures, nsGkAtoms::requiredFeatures), ALL_NO_PREFIX);
+ ATTR_RESULT = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::result), ALL_NO_PREFIX);
+ ATTR_REQUIREDEXTENSIONS = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::requiredextensions, nsGkAtoms::requiredExtensions), ALL_NO_PREFIX);
+ ATTR_VALUES = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::values), ALL_NO_PREFIX);
+ ATTR_VALUETYPE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::valuetype), ALL_NO_PREFIX);
+ ATTR_VALUE = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::value), ALL_NO_PREFIX);
+ ATTR_ELEVATION = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::elevation), ALL_NO_PREFIX);
+ ATTR_VIEWTARGET = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::viewtarget, nsGkAtoms::viewTarget), ALL_NO_PREFIX);
+ ATTR_VIEWBOX = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::viewbox, nsGkAtoms::viewBox), ALL_NO_PREFIX);
+ ATTR_CX = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::cx), ALL_NO_PREFIX);
+ ATTR_DX = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::dx), ALL_NO_PREFIX);
+ ATTR_FX = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::fx), ALL_NO_PREFIX);
+ ATTR_RX = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::rx), ALL_NO_PREFIX);
+ ATTR_REFX = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::refx, nsGkAtoms::refX), ALL_NO_PREFIX);
+ ATTR_BY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::by), ALL_NO_PREFIX);
+ ATTR_CY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::cy), ALL_NO_PREFIX);
+ ATTR_DY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::dy), ALL_NO_PREFIX);
+ ATTR_FY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::fy), ALL_NO_PREFIX);
+ ATTR_RY = new nsHtml5AttributeName(ALL_NO_NS, SAME_LOCAL(nsGkAtoms::ry), ALL_NO_PREFIX);
+ ATTR_REFY = new nsHtml5AttributeName(ALL_NO_NS, SVG_DIFFERENT(nsGkAtoms::refy, nsGkAtoms::refY), ALL_NO_PREFIX);
ATTRIBUTE_NAMES = new nsHtml5AttributeName*[491];
ATTRIBUTE_NAMES[0] = ATTR_ONCLICK;
ATTRIBUTE_NAMES[1] = ATTR_DATETIME;
ATTRIBUTE_NAMES[2] = ATTR_ONDRAGOVER;
ATTRIBUTE_NAMES[3] = ATTR_ARIA_SETSIZE;
ATTRIBUTE_NAMES[4] = ATTR_LANG;
ATTRIBUTE_NAMES[5] = ATTR_FLOOD_OPACITY;
ATTRIBUTE_NAMES[6] = ATTR_PATTERN;
--- a/parser/html/nsHtml5AttributeName.h
+++ b/parser/html/nsHtml5AttributeName.h
@@ -68,48 +68,43 @@ class nsHtml5AttributeName
static nsIAtom** XMLNS_PREFIX;
static nsIAtom** XLINK_PREFIX;
static nsIAtom** XML_PREFIX;
static nsIAtom** SVG_DIFFERENT(nsIAtom* name, nsIAtom* camel);
static nsIAtom** MATH_DIFFERENT(nsIAtom* name, nsIAtom* camel);
static nsIAtom** COLONIFIED_LOCAL(nsIAtom* name, nsIAtom* suffix);
public:
static nsIAtom** SAME_LOCAL(nsIAtom* name);
- inline static int32_t levelOrderBinarySearch(jArray<int32_t, int32_t> data,
- int32_t key)
+ inline static int32_t levelOrderBinarySearch(jArray<int32_t,int32_t> data, int32_t key)
{
int32_t n = data.length;
int32_t i = 0;
while (i < n) {
int32_t val = data[i];
if (val < key) {
i = 2 * i + 2;
} else if (val > key) {
i = 2 * i + 1;
} else {
return i;
}
}
return -1;
}
- inline static nsHtml5AttributeName* nameByBuffer(char16_t* buf,
- int32_t offset,
- int32_t length,
- nsHtml5AtomTable* interner)
+ inline static nsHtml5AttributeName* nameByBuffer(char16_t* buf, int32_t offset, int32_t length, nsHtml5AtomTable* interner)
{
uint32_t hash = nsHtml5AttributeName::bufToHash(buf, length);
- jArray<int32_t, int32_t> hashes;
+ jArray<int32_t,int32_t> hashes;
hashes = nsHtml5AttributeName::ATTRIBUTE_HASHES;
int32_t index = levelOrderBinarySearch(hashes, hash);
if (index < 0) {
return nullptr;
}
- nsHtml5AttributeName* attributeName =
- nsHtml5AttributeName::ATTRIBUTE_NAMES[index];
+ nsHtml5AttributeName* attributeName = nsHtml5AttributeName::ATTRIBUTE_NAMES[index];
nsIAtom* name = attributeName->getLocal(0);
if (!nsHtml5Portability::localEqualsBuffer(name, buf, offset, length)) {
return nullptr;
}
return attributeName;
}
private:
@@ -156,17 +151,20 @@ class nsHtml5AttributeName
private:
int32_t* uri;
nsIAtom** local;
nsIAtom** prefix;
bool custom;
nsHtml5AttributeName(int32_t* uri, nsIAtom** local, nsIAtom** prefix);
public:
nsHtml5AttributeName();
- inline bool isInterned() { return !custom; }
+ inline bool isInterned()
+ {
+ return !custom;
+ }
inline void setNameForNonInterned(nsIAtom* name)
{
MOZ_ASSERT(custom);
local[0] = name;
local[1] = name;
local[2] = name;
}
--- a/parser/html/nsHtml5ElementName.cpp
+++ b/parser/html/nsHtml5ElementName.cpp
@@ -57,20 +57,21 @@
nsHtml5ElementName::nsHtml5ElementName(nsIAtom* name, nsIAtom* camelCaseName, int32_t flags)
: name(name),
camelCaseName(camelCaseName),
flags(flags)
{
MOZ_COUNT_CTOR(nsHtml5ElementName);
}
+
nsHtml5ElementName::nsHtml5ElementName()
- : name(nullptr)
- , camelCaseName(nullptr)
- , flags(nsHtml5TreeBuilder::OTHER | NOT_INTERNED)
+ : name(nullptr),
+ camelCaseName(nullptr),
+ flags(nsHtml5TreeBuilder::OTHER | NOT_INTERNED)
{
MOZ_COUNT_CTOR(nsHtml5ElementName);
}
nsHtml5ElementName::~nsHtml5ElementName()
{
MOZ_COUNT_DTOR(nsHtml5ElementName);
@@ -276,707 +277,225 @@ nsHtml5ElementName* nsHtml5ElementName::
nsHtml5ElementName* nsHtml5ElementName::ELT_FECOLORMATRIX = nullptr;
nsHtml5ElementName* nsHtml5ElementName::ELT_FECONVOLVEMATRIX = nullptr;
nsHtml5ElementName* nsHtml5ElementName::ELT_BODY = nullptr;
nsHtml5ElementName* nsHtml5ElementName::ELT_FEMORPHOLOGY = nullptr;
nsHtml5ElementName* nsHtml5ElementName::ELT_RUBY = nullptr;
nsHtml5ElementName* nsHtml5ElementName::ELT_SUMMARY = nullptr;
nsHtml5ElementName* nsHtml5ElementName::ELT_TBODY = nullptr;
nsHtml5ElementName** nsHtml5ElementName::ELEMENT_NAMES = 0;
-static int32_t const ELEMENT_HASHES_DATA[] = {
- 1903302038, 1749656156, 2001349704, 893386754, 1803929812, 1968836118,
- 2007601444, 59821379, 1733054663, 1756625221, 1870268949, 1941178676,
- 1983633431, 2004635806, 2060065124, 55104723, 62450211, 1686491348,
- 1747176599, 1751288021, 1783210839, 1853642948, 1884120164, 1914900309,
- 1967788867, 1973420034, 1998585858, 2001392796, 2006028454, 2008851557,
- 2085266636, 52485715, 57733651, 60354131, 67633153, 960495618,
- 1715310660, 1737099991, 1748100148, 1749801286, 1755076808, 1757268168,
- 1790207270, 1806806678, 1857653029, 1881288348, 1898753862, 1906135367,
- 1934172497, 1965334268, 1967795958, 1971465813, 1982935782, 1988763672,
- 1999397992, 2001349736, 2001495140, 2005719336, 2006896969, 2008125638,
- 2021937364, 2068523856, 2092255447, 51438659, 52488851, 56151587,
- 59244545, 60347747, 61925907, 63438849, 69730305, 926941186,
- 1682547543, 1699324759, 1730965751, 1733890180, 1740181637, 1747814436,
- 1748359220, 1749715159, 1749905526, 1752979652, 1756474198, 1757146773,
- 1766992520, 1783388498, 1798686984, 1805502724, 1818230786, 1854228698,
- 1868312196, 1874053333, 1881613047, 1889085973, 1900845386, 1905563974,
- 1907661127, 1925844629, 1938817026, 1963982850, 1967128578, 1967795910,
- 1968053806, 1971461414, 1971938532, 1982173479, 1983533124, 1986527234,
- 1990037800, 1998724870, 2001309869, 2001349720, 2001392795, 2001392798,
- 2003183333, 2005324101, 2005925890, 2006329158, 2006974466, 2007781534,
- 2008340774, 2008994116, 2051837468, 2068523853, 2083120164, 2091479332,
- 2092557349, 51434643, 51961587, 52486755, 52490899, 55110883,
- 57206291, 58773795, 59768833, 60345171, 60352339, 61395251,
- 62390273, 62973651, 67108865, 68681729, 876609538, 910163970,
- 943718402, 1679960596, 1686489160, 1689922072, 1703936002, 1730150402,
- 1732381397, 1733076167, 1736200310, 1738539010, 1747048757, 1747306711,
- 1747838298, 1748225318, 1749395095, 1749673195, 1749723735, 1749813541,
- 1749932347, 1751386406, 1753362711, 1755148615, 1756600614, 1757137429,
- 1757157700, 1763839627, 1782357526, 1783388497, 1786534215, 1797585096,
- 1803876550, 1803929861, 1805647874, 1807599880, 1818755074, 1854228692,
- 1854245076, 1864368130, 1870135298, 1873281026, 1874102998, 1881498736,
- 1881669634, 1887579800, 1898223949, 1899272519, 1902641154, 1904412884,
- 1906087319, 1907435316, 1907959605, 1919418370, 1932928296, 1935549734,
- 1939219752, 1941221172, 1965115924, 1966223078, 1967760215
-};
+static int32_t const ELEMENT_HASHES_DATA[] = { 1903302038, 1749656156, 2001349704, 893386754, 1803929812, 1968836118, 2007601444, 59821379, 1733054663, 1756625221, 1870268949, 1941178676, 1983633431, 2004635806, 2060065124, 55104723, 62450211, 1686491348, 1747176599, 1751288021, 1783210839, 1853642948, 1884120164, 1914900309, 1967788867, 1973420034, 1998585858, 2001392796, 2006028454, 2008851557, 2085266636, 52485715, 57733651, 60354131, 67633153, 960495618, 1715310660, 1737099991, 1748100148, 1749801286, 1755076808, 1757268168, 1790207270, 1806806678, 1857653029, 1881288348, 1898753862, 1906135367, 1934172497, 1965334268, 1967795958, 1971465813, 1982935782, 1988763672, 1999397992, 2001349736, 2001495140, 2005719336, 2006896969, 2008125638, 2021937364, 2068523856, 2092255447, 51438659, 52488851, 56151587, 59244545, 60347747, 61925907, 63438849, 69730305, 926941186, 1682547543, 1699324759, 1730965751, 1733890180, 1740181637, 1747814436, 1748359220, 1749715159, 1749905526, 1752979652, 1756474198, 1757146773, 1766992520, 1783388498, 1798686984, 1805502724, 1818230786, 1854228698, 1868312196, 1874053333, 1881613047, 1889085973, 1900845386, 1905563974, 1907661127, 1925844629, 1938817026, 1963982850, 1967128578, 1967795910, 1968053806, 1971461414, 1971938532, 1982173479, 1983533124, 1986527234, 1990037800, 1998724870, 2001309869, 2001349720, 2001392795, 2001392798, 2003183333, 2005324101, 2005925890, 2006329158, 2006974466, 2007781534, 2008340774, 2008994116, 2051837468, 2068523853, 2083120164, 2091479332, 2092557349, 51434643, 51961587, 52486755, 52490899, 55110883, 57206291, 58773795, 59768833, 60345171, 60352339, 61395251, 62390273, 62973651, 67108865, 68681729, 876609538, 910163970, 943718402, 1679960596, 1686489160, 1689922072, 1703936002, 1730150402, 1732381397, 1733076167, 1736200310, 1738539010, 1747048757, 1747306711, 1747838298, 1748225318, 1749395095, 1749673195, 1749723735, 1749813541, 1749932347, 1751386406, 1753362711, 1755148615, 1756600614, 1757137429, 1757157700, 1763839627, 1782357526, 1783388497, 1786534215, 1797585096, 1803876550, 1803929861, 1805647874, 1807599880, 1818755074, 1854228692, 1854245076, 1864368130, 1870135298, 1873281026, 1874102998, 1881498736, 1881669634, 1887579800, 1898223949, 1899272519, 1902641154, 1904412884, 1906087319, 1907435316, 1907959605, 1919418370, 1932928296, 1935549734, 1939219752, 1941221172, 1965115924, 1966223078, 1967760215 };
staticJArray<int32_t,int32_t> nsHtml5ElementName::ELEMENT_HASHES = { ELEMENT_HASHES_DATA, MOZ_ARRAY_LENGTH(ELEMENT_HASHES_DATA) };
void
nsHtml5ElementName::initializeStatics()
{
- ELT_ANNOTATION_XML = new nsHtml5ElementName(
- nsGkAtoms::annotation_xml_,
- nsGkAtoms::annotation_xml_,
- nsHtml5TreeBuilder::ANNOTATION_XML | SCOPING_AS_MATHML);
- ELT_BIG = new nsHtml5ElementName(
- nsGkAtoms::big,
- nsGkAtoms::big,
- nsHtml5TreeBuilder::
- B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
- ELT_BDO = new nsHtml5ElementName(
- nsGkAtoms::bdo, nsGkAtoms::bdo, nsHtml5TreeBuilder::OTHER);
- ELT_COL = new nsHtml5ElementName(
- nsGkAtoms::col, nsGkAtoms::col, nsHtml5TreeBuilder::COL | SPECIAL);
- ELT_DEL = new nsHtml5ElementName(
- nsGkAtoms::del, nsGkAtoms::del, nsHtml5TreeBuilder::OTHER);
- ELT_DFN = new nsHtml5ElementName(
- nsGkAtoms::dfn, nsGkAtoms::dfn, nsHtml5TreeBuilder::OTHER);
- ELT_DIR = new nsHtml5ElementName(
- nsGkAtoms::dir,
- nsGkAtoms::dir,
- nsHtml5TreeBuilder::
- ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY |
- SPECIAL);
- ELT_DIV = new nsHtml5ElementName(
- nsGkAtoms::div,
- nsGkAtoms::div,
- nsHtml5TreeBuilder::DIV_OR_BLOCKQUOTE_OR_CENTER_OR_MENU | SPECIAL);
- ELT_IMG = new nsHtml5ElementName(
- nsGkAtoms::img, nsGkAtoms::img, nsHtml5TreeBuilder::IMG | SPECIAL);
- ELT_INS = new nsHtml5ElementName(
- nsGkAtoms::ins, nsGkAtoms::ins, nsHtml5TreeBuilder::OTHER);
- ELT_KBD = new nsHtml5ElementName(
- nsGkAtoms::kbd, nsGkAtoms::kbd, nsHtml5TreeBuilder::OTHER);
- ELT_MAP = new nsHtml5ElementName(
- nsGkAtoms::map, nsGkAtoms::map, nsHtml5TreeBuilder::OTHER);
- ELT_NAV = new nsHtml5ElementName(
- nsGkAtoms::nav,
- nsGkAtoms::nav,
- nsHtml5TreeBuilder::
- ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY |
- SPECIAL);
- ELT_PRE =
- new nsHtml5ElementName(nsGkAtoms::pre,
- nsGkAtoms::pre,
- nsHtml5TreeBuilder::PRE_OR_LISTING | SPECIAL);
- ELT_A =
- new nsHtml5ElementName(nsGkAtoms::a, nsGkAtoms::a, nsHtml5TreeBuilder::A);
- ELT_B = new nsHtml5ElementName(
- nsGkAtoms::b,
- nsGkAtoms::b,
- nsHtml5TreeBuilder::
- B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
- ELT_RTC =
- new nsHtml5ElementName(nsGkAtoms::rtc,
- nsGkAtoms::rtc,
- nsHtml5TreeBuilder::RB_OR_RTC | OPTIONAL_END_TAG);
- ELT_SUB = new nsHtml5ElementName(
- nsGkAtoms::sub,
- nsGkAtoms::sub,
- nsHtml5TreeBuilder::RUBY_OR_SPAN_OR_SUB_OR_SUP_OR_VAR);
- ELT_SVG = new nsHtml5ElementName(
- nsGkAtoms::svg, nsGkAtoms::svg, nsHtml5TreeBuilder::SVG);
- ELT_SUP = new nsHtml5ElementName(
- nsGkAtoms::sup,
- nsGkAtoms::sup,
- nsHtml5TreeBuilder::RUBY_OR_SPAN_OR_SUB_OR_SUP_OR_VAR);
- ELT_SET = new nsHtml5ElementName(
- nsGkAtoms::set_, nsGkAtoms::set_, nsHtml5TreeBuilder::OTHER);
- ELT_USE = new nsHtml5ElementName(
- nsGkAtoms::use, nsGkAtoms::use, nsHtml5TreeBuilder::OTHER);
- ELT_VAR = new nsHtml5ElementName(
- nsGkAtoms::var,
- nsGkAtoms::var,
- nsHtml5TreeBuilder::RUBY_OR_SPAN_OR_SUB_OR_SUP_OR_VAR);
- ELT_G = new nsHtml5ElementName(
- nsGkAtoms::g, nsGkAtoms::g, nsHtml5TreeBuilder::OTHER);
- ELT_WBR = new nsHtml5ElementName(
- nsGkAtoms::wbr, nsGkAtoms::wbr, nsHtml5TreeBuilder::AREA_OR_WBR | SPECIAL);
- ELT_XMP = new nsHtml5ElementName(
- nsGkAtoms::xmp, nsGkAtoms::xmp, nsHtml5TreeBuilder::XMP | SPECIAL);
- ELT_I = new nsHtml5ElementName(
- nsGkAtoms::i,
- nsGkAtoms::i,
- nsHtml5TreeBuilder::
- B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
- ELT_P =
- new nsHtml5ElementName(nsGkAtoms::p,
- nsGkAtoms::p,
- nsHtml5TreeBuilder::P | SPECIAL | OPTIONAL_END_TAG);
- ELT_Q = new nsHtml5ElementName(
- nsGkAtoms::q, nsGkAtoms::q, nsHtml5TreeBuilder::OTHER);
- ELT_S = new nsHtml5ElementName(
- nsGkAtoms::s,
- nsGkAtoms::s,
- nsHtml5TreeBuilder::
- B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
- ELT_U = new nsHtml5ElementName(
- nsGkAtoms::u,
- nsGkAtoms::u,
- nsHtml5TreeBuilder::
- B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
- ELT_H1 = new nsHtml5ElementName(
- nsGkAtoms::h1,
- nsGkAtoms::h1,
- nsHtml5TreeBuilder::H1_OR_H2_OR_H3_OR_H4_OR_H5_OR_H6 | SPECIAL);
- ELT_H2 = new nsHtml5ElementName(
- nsGkAtoms::h2,
- nsGkAtoms::h2,
- nsHtml5TreeBuilder::H1_OR_H2_OR_H3_OR_H4_OR_H5_OR_H6 | SPECIAL);
- ELT_H3 = new nsHtml5ElementName(
- nsGkAtoms::h3,
- nsGkAtoms::h3,
- nsHtml5TreeBuilder::H1_OR_H2_OR_H3_OR_H4_OR_H5_OR_H6 | SPECIAL);
- ELT_H4 = new nsHtml5ElementName(
- nsGkAtoms::h4,
- nsGkAtoms::h4,
- nsHtml5TreeBuilder::H1_OR_H2_OR_H3_OR_H4_OR_H5_OR_H6 | SPECIAL);
- ELT_H5 = new nsHtml5ElementName(
- nsGkAtoms::h5,
- nsGkAtoms::h5,
- nsHtml5TreeBuilder::H1_OR_H2_OR_H3_OR_H4_OR_H5_OR_H6 | SPECIAL);
- ELT_H6 = new nsHtml5ElementName(
- nsGkAtoms::h6,
- nsGkAtoms::h6,
- nsHtml5TreeBuilder::H1_OR_H2_OR_H3_OR_H4_OR_H5_OR_H6 | SPECIAL);
- ELT_AREA = new nsHtml5ElementName(nsGkAtoms::area,
- nsGkAtoms::area,
- nsHtml5TreeBuilder::AREA_OR_WBR | SPECIAL);
- ELT_FEFUNCA = new nsHtml5ElementName(
- nsGkAtoms::fefunca, nsGkAtoms::feFuncA, nsHtml5TreeBuilder::OTHER);
- ELT_METADATA = new nsHtml5ElementName(
- nsGkAtoms::metadata, nsGkAtoms::metadata, nsHtml5TreeBuilder::OTHER);
- ELT_META = new nsHtml5ElementName(
- nsGkAtoms::meta, nsGkAtoms::meta, nsHtml5TreeBuilder::META | SPECIAL);
- ELT_TEXTAREA = new nsHtml5ElementName(nsGkAtoms::textarea,
- nsGkAtoms::textarea,
- nsHtml5TreeBuilder::TEXTAREA | SPECIAL);
- ELT_FEFUNCB = new nsHtml5ElementName(
- nsGkAtoms::fefuncb, nsGkAtoms::feFuncB, nsHtml5TreeBuilder::OTHER);
- ELT_RB =
- new nsHtml5ElementName(nsGkAtoms::rb,
- nsGkAtoms::rb,
- nsHtml5TreeBuilder::RB_OR_RTC | OPTIONAL_END_TAG);
- ELT_DESC = new nsHtml5ElementName(nsGkAtoms::desc,
- nsGkAtoms::desc,
- nsHtml5TreeBuilder::FOREIGNOBJECT_OR_DESC |
- SCOPING_AS_SVG);
- ELT_DD = new nsHtml5ElementName(nsGkAtoms::dd,
- nsGkAtoms::dd,
- nsHtml5TreeBuilder::DD_OR_DT | SPECIAL |
- OPTIONAL_END_TAG);
- ELT_BGSOUND = new nsHtml5ElementName(
- nsGkAtoms::bgsound,
- nsGkAtoms::bgsound,
- nsHtml5TreeBuilder::LINK_OR_BASEFONT_OR_BGSOUND | SPECIAL);
- ELT_EMBED = new nsHtml5ElementName(
- nsGkAtoms::embed, nsGkAtoms::embed, nsHtml5TreeBuilder::EMBED | SPECIAL);
- ELT_FEBLEND = new nsHtml5ElementName(
- nsGkAtoms::feblend, nsGkAtoms::feBlend, nsHtml5TreeBuilder::OTHER);
- ELT_FEFLOOD = new nsHtml5ElementName(
- nsGkAtoms::feflood, nsGkAtoms::feFlood, nsHtml5TreeBuilder::OTHER);
- ELT_HEAD = new nsHtml5ElementName(nsGkAtoms::head,
- nsGkAtoms::head,
- nsHtml5TreeBuilder::HEAD | SPECIAL |
- OPTIONAL_END_TAG);
- ELT_LEGEND = new nsHtml5ElementName(
- nsGkAtoms::legend, nsGkAtoms::legend, nsHtml5TreeBuilder::OTHER);
- ELT_NOEMBED = new nsHtml5ElementName(nsGkAtoms::noembed,
- nsGkAtoms::noembed,
- nsHtml5TreeBuilder::NOEMBED | SPECIAL);
- ELT_TD = new nsHtml5ElementName(nsGkAtoms::td,
- nsGkAtoms::td,
- nsHtml5TreeBuilder::TD_OR_TH | SPECIAL |
- SCOPING | OPTIONAL_END_TAG);
- ELT_THEAD =
- new nsHtml5ElementName(nsGkAtoms::thead,
- nsGkAtoms::thead,
- nsHtml5TreeBuilder::TBODY_OR_THEAD_OR_TFOOT |
- SPECIAL | FOSTER_PARENTING | OPTIONAL_END_TAG);
- ELT_ASIDE = new nsHtml5ElementName(
- nsGkAtoms::aside,
- nsGkAtoms::aside,
- nsHtml5TreeBuilder::
- ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY |
- SPECIAL);
- ELT_ARTICLE = new nsHtml5ElementName(
- nsGkAtoms::article,
- nsGkAtoms::article,
- nsHtml5TreeBuilder::
- ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY |
- SPECIAL);
- ELT_ANIMATE = new nsHtml5ElementName(
- nsGkAtoms::animate, nsGkAtoms::animate, nsHtml5TreeBuilder::OTHER);
- ELT_BASE = new nsHtml5ElementName(
- nsGkAtoms::base, nsGkAtoms::base, nsHtml5TreeBuilder::BASE | SPECIAL);
- ELT_BLOCKQUOTE = new nsHtml5ElementName(
- nsGkAtoms::blockquote,
- nsGkAtoms::blockquote,
- nsHtml5TreeBuilder::DIV_OR_BLOCKQUOTE_OR_CENTER_OR_MENU | SPECIAL);
- ELT_CODE = new nsHtml5ElementName(
- nsGkAtoms::code,
- nsGkAtoms::code,
- nsHtml5TreeBuilder::
- B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
- ELT_CIRCLE = new nsHtml5ElementName(
- nsGkAtoms::circle, nsGkAtoms::circle, nsHtml5TreeBuilder::OTHER);
- ELT_CITE = new nsHtml5ElementName(
- nsGkAtoms::cite, nsGkAtoms::cite, nsHtml5TreeBuilder::OTHER);
- ELT_ELLIPSE = new nsHtml5ElementName(
- nsGkAtoms::ellipse, nsGkAtoms::ellipse, nsHtml5TreeBuilder::OTHER);
- ELT_FETURBULENCE = new nsHtml5ElementName(nsGkAtoms::feturbulence,
- nsGkAtoms::feTurbulence,
- nsHtml5TreeBuilder::OTHER);
- ELT_FEMERGENODE = new nsHtml5ElementName(
- nsGkAtoms::femergenode, nsGkAtoms::feMergeNode, nsHtml5TreeBuilder::OTHER);
- ELT_FEIMAGE = new nsHtml5ElementName(
- nsGkAtoms::feimage, nsGkAtoms::feImage, nsHtml5TreeBuilder::OTHER);
- ELT_FEMERGE = new nsHtml5ElementName(
- nsGkAtoms::femerge, nsGkAtoms::feMerge, nsHtml5TreeBuilder::OTHER);
- ELT_FETILE = new nsHtml5ElementName(
- nsGkAtoms::fetile, nsGkAtoms::feTile, nsHtml5TreeBuilder::OTHER);
- ELT_FRAME = new nsHtml5ElementName(
- nsGkAtoms::frame, nsGkAtoms::frame, nsHtml5TreeBuilder::FRAME | SPECIAL);
- ELT_FIGURE = new nsHtml5ElementName(
- nsGkAtoms::figure,
- nsGkAtoms::figure,
- nsHtml5TreeBuilder::
- ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY |
- SPECIAL);
- ELT_FECOMPOSITE = new nsHtml5ElementName(
- nsGkAtoms::fecomposite, nsGkAtoms::feComposite, nsHtml5TreeBuilder::OTHER);
- ELT_IMAGE = new nsHtml5ElementName(
- nsGkAtoms::image, nsGkAtoms::image, nsHtml5TreeBuilder::IMAGE);
- ELT_IFRAME = new nsHtml5ElementName(
- nsGkAtoms::iframe, nsGkAtoms::iframe, nsHtml5TreeBuilder::IFRAME | SPECIAL);
- ELT_LINE = new nsHtml5ElementName(
- nsGkAtoms::line, nsGkAtoms::line, nsHtml5TreeBuilder::OTHER);
- ELT_MARQUEE = new nsHtml5ElementName(nsGkAtoms::marquee,
- nsGkAtoms::marquee,
- nsHtml5TreeBuilder::MARQUEE_OR_APPLET |
- SPECIAL | SCOPING);
- ELT_POLYLINE = new nsHtml5ElementName(
- nsGkAtoms::polyline, nsGkAtoms::polyline, nsHtml5TreeBuilder::OTHER);
- ELT_PICTURE = new nsHtml5ElementName(
- nsGkAtoms::picture, nsGkAtoms::picture, nsHtml5TreeBuilder::OTHER);
- ELT_SOURCE =
- new nsHtml5ElementName(nsGkAtoms::source,
- nsGkAtoms::source,
- nsHtml5TreeBuilder::PARAM_OR_SOURCE_OR_TRACK);
- ELT_STRIKE = new nsHtml5ElementName(
- nsGkAtoms::strike,
- nsGkAtoms::strike,
- nsHtml5TreeBuilder::
- B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
- ELT_STYLE = new nsHtml5ElementName(
- nsGkAtoms::style, nsGkAtoms::style, nsHtml5TreeBuilder::STYLE | SPECIAL);
- ELT_TABLE = new nsHtml5ElementName(nsGkAtoms::table,
- nsGkAtoms::table,
- nsHtml5TreeBuilder::TABLE | SPECIAL |
- FOSTER_PARENTING | SCOPING);
- ELT_TITLE = new nsHtml5ElementName(nsGkAtoms::title,
- nsGkAtoms::title,
- nsHtml5TreeBuilder::TITLE | SPECIAL |
- SCOPING_AS_SVG);
- ELT_TIME = new nsHtml5ElementName(
- nsGkAtoms::time, nsGkAtoms::time, nsHtml5TreeBuilder::OTHER);
- ELT_TEMPLATE =
- new nsHtml5ElementName(nsGkAtoms::_template,
- nsGkAtoms::_template,
- nsHtml5TreeBuilder::TEMPLATE | SPECIAL | SCOPING);
- ELT_ALTGLYPHDEF = new nsHtml5ElementName(
- nsGkAtoms::altglyphdef, nsGkAtoms::altGlyphDef, nsHtml5TreeBuilder::OTHER);
- ELT_GLYPHREF = new nsHtml5ElementName(
- nsGkAtoms::glyphref, nsGkAtoms::glyphRef, nsHtml5TreeBuilder::OTHER);
- ELT_DIALOG = new nsHtml5ElementName(
- nsGkAtoms::dialog,
- nsGkAtoms::dialog,
- nsHtml5TreeBuilder::
- ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY |
- SPECIAL);
- ELT_FEFUNCG = new nsHtml5ElementName(
- nsGkAtoms::fefuncg, nsGkAtoms::feFuncG, nsHtml5TreeBuilder::OTHER);
- ELT_FEDIFFUSELIGHTING = new nsHtml5ElementName(nsGkAtoms::fediffuselighting,
- nsGkAtoms::feDiffuseLighting,
- nsHtml5TreeBuilder::OTHER);
- ELT_FESPECULARLIGHTING = new nsHtml5ElementName(nsGkAtoms::fespecularlighting,
- nsGkAtoms::feSpecularLighting,
- nsHtml5TreeBuilder::OTHER);
- ELT_LISTING =
- new nsHtml5ElementName(nsGkAtoms::listing,
- nsGkAtoms::listing,
- nsHtml5TreeBuilder::PRE_OR_LISTING | SPECIAL);
- ELT_STRONG = new nsHtml5ElementName(
- nsGkAtoms::strong,
- nsGkAtoms::strong,
- nsHtml5TreeBuilder::
- B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
- ELT_ALTGLYPH = new nsHtml5ElementName(
- nsGkAtoms::altglyph, nsGkAtoms::altGlyph, nsHtml5TreeBuilder::OTHER);
- ELT_CLIPPATH = new nsHtml5ElementName(
- nsGkAtoms::clippath, nsGkAtoms::clipPath, nsHtml5TreeBuilder::OTHER);
- ELT_MGLYPH = new nsHtml5ElementName(nsGkAtoms::mglyph_,
- nsGkAtoms::mglyph_,
- nsHtml5TreeBuilder::MGLYPH_OR_MALIGNMARK);
- ELT_MATH = new nsHtml5ElementName(
- nsGkAtoms::math, nsGkAtoms::math, nsHtml5TreeBuilder::MATH);
- ELT_MPATH = new nsHtml5ElementName(
- nsGkAtoms::mpath, nsGkAtoms::mpath, nsHtml5TreeBuilder::OTHER);
- ELT_PATH = new nsHtml5ElementName(
- nsGkAtoms::path, nsGkAtoms::path, nsHtml5TreeBuilder::OTHER);
- ELT_TH = new nsHtml5ElementName(nsGkAtoms::th,
- nsGkAtoms::th,
- nsHtml5TreeBuilder::TD_OR_TH | SPECIAL |
- SCOPING | OPTIONAL_END_TAG);
- ELT_SWITCH = new nsHtml5ElementName(
- nsGkAtoms::svgSwitch, nsGkAtoms::svgSwitch, nsHtml5TreeBuilder::OTHER);
- ELT_TEXTPATH = new nsHtml5ElementName(
- nsGkAtoms::textpath, nsGkAtoms::textPath, nsHtml5TreeBuilder::OTHER);
- ELT_LI =
- new nsHtml5ElementName(nsGkAtoms::li,
- nsGkAtoms::li,
- nsHtml5TreeBuilder::LI | SPECIAL | OPTIONAL_END_TAG);
- ELT_MI = new nsHtml5ElementName(nsGkAtoms::mi_,
- nsGkAtoms::mi_,
- nsHtml5TreeBuilder::MI_MO_MN_MS_MTEXT |
- SCOPING_AS_MATHML);
- ELT_LINK = new nsHtml5ElementName(
- nsGkAtoms::link,
- nsGkAtoms::link,
- nsHtml5TreeBuilder::LINK_OR_BASEFONT_OR_BGSOUND | SPECIAL);
- ELT_MARK = new nsHtml5ElementName(
- nsGkAtoms::mark, nsGkAtoms::mark, nsHtml5TreeBuilder::OTHER);
- ELT_MALIGNMARK =
- new nsHtml5ElementName(nsGkAtoms::malignmark_,
- nsGkAtoms::malignmark_,
- nsHtml5TreeBuilder::MGLYPH_OR_MALIGNMARK);
- ELT_MASK = new nsHtml5ElementName(
- nsGkAtoms::mask, nsGkAtoms::mask, nsHtml5TreeBuilder::OTHER);
- ELT_TRACK = new nsHtml5ElementName(
- nsGkAtoms::track,
- nsGkAtoms::track,
- nsHtml5TreeBuilder::PARAM_OR_SOURCE_OR_TRACK | SPECIAL);
- ELT_DL = new nsHtml5ElementName(
- nsGkAtoms::dl, nsGkAtoms::dl, nsHtml5TreeBuilder::UL_OR_OL_OR_DL | SPECIAL);
- ELT_HTML = new nsHtml5ElementName(nsGkAtoms::html,
- nsGkAtoms::html,
- nsHtml5TreeBuilder::HTML | SPECIAL |
- SCOPING | OPTIONAL_END_TAG);
- ELT_OL = new nsHtml5ElementName(
- nsGkAtoms::ol, nsGkAtoms::ol, nsHtml5TreeBuilder::UL_OR_OL_OR_DL | SPECIAL);
- ELT_LABEL = new nsHtml5ElementName(
- nsGkAtoms::label, nsGkAtoms::label, nsHtml5TreeBuilder::OTHER);
- ELT_UL = new nsHtml5ElementName(
- nsGkAtoms::ul, nsGkAtoms::ul, nsHtml5TreeBuilder::UL_OR_OL_OR_DL | SPECIAL);
- ELT_SMALL = new nsHtml5ElementName(
- nsGkAtoms::small,
- nsGkAtoms::small,
- nsHtml5TreeBuilder::
- B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
- ELT_SYMBOL = new nsHtml5ElementName(
- nsGkAtoms::symbol, nsGkAtoms::symbol, nsHtml5TreeBuilder::OTHER);
- ELT_ALTGLYPHITEM = new nsHtml5ElementName(nsGkAtoms::altglyphitem,
- nsGkAtoms::altGlyphItem,
- nsHtml5TreeBuilder::OTHER);
- ELT_ANIMATETRANSFORM = new nsHtml5ElementName(nsGkAtoms::animatetransform,
- nsGkAtoms::animateTransform,
- nsHtml5TreeBuilder::OTHER);
- ELT_ACRONYM = new nsHtml5ElementName(
- nsGkAtoms::acronym, nsGkAtoms::acronym, nsHtml5TreeBuilder::OTHER);
- ELT_EM = new nsHtml5ElementName(
- nsGkAtoms::em,
- nsGkAtoms::em,
- nsHtml5TreeBuilder::
- B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
- ELT_FORM = new nsHtml5ElementName(
- nsGkAtoms::form, nsGkAtoms::form, nsHtml5TreeBuilder::FORM | SPECIAL);
- ELT_MENUITEM = new nsHtml5ElementName(
- nsGkAtoms::menuitem, nsGkAtoms::menuitem, nsHtml5TreeBuilder::MENUITEM);
- ELT_PARAM = new nsHtml5ElementName(
- nsGkAtoms::param,
- nsGkAtoms::param,
- nsHtml5TreeBuilder::PARAM_OR_SOURCE_OR_TRACK | SPECIAL);
- ELT_ANIMATEMOTION = new nsHtml5ElementName(nsGkAtoms::animatemotion,
- nsGkAtoms::animateMotion,
- nsHtml5TreeBuilder::OTHER);
- ELT_BUTTON = new nsHtml5ElementName(
- nsGkAtoms::button, nsGkAtoms::button, nsHtml5TreeBuilder::BUTTON | SPECIAL);
- ELT_CAPTION =
- new nsHtml5ElementName(nsGkAtoms::caption,
- nsGkAtoms::caption,
- nsHtml5TreeBuilder::CAPTION | SPECIAL | SCOPING);
- ELT_FIGCAPTION = new nsHtml5ElementName(
- nsGkAtoms::figcaption,
- nsGkAtoms::figcaption,
- nsHtml5TreeBuilder::
- ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY |
- SPECIAL);
- ELT_MN = new nsHtml5ElementName(nsGkAtoms::mn_,
- nsGkAtoms::mn_,
- nsHtml5TreeBuilder::MI_MO_MN_MS_MTEXT |
- SCOPING_AS_MATHML);
- ELT_KEYGEN = new nsHtml5ElementName(
- nsGkAtoms::keygen, nsGkAtoms::keygen, nsHtml5TreeBuilder::KEYGEN);
- ELT_MAIN = new nsHtml5ElementName(
- nsGkAtoms::main,
- nsGkAtoms::main,
- nsHtml5TreeBuilder::
- ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY |
- SPECIAL);
- ELT_OPTION =
- new nsHtml5ElementName(nsGkAtoms::option,
- nsGkAtoms::option,
- nsHtml5TreeBuilder::OPTION | OPTIONAL_END_TAG);
- ELT_POLYGON = new nsHtml5ElementName(
- nsGkAtoms::polygon, nsGkAtoms::polygon, nsHtml5TreeBuilder::OTHER);
- ELT_PATTERN = new nsHtml5ElementName(
- nsGkAtoms::pattern, nsGkAtoms::pattern, nsHtml5TreeBuilder::OTHER);
- ELT_SPAN = new nsHtml5ElementName(
- nsGkAtoms::span,
- nsGkAtoms::span,
- nsHtml5TreeBuilder::RUBY_OR_SPAN_OR_SUB_OR_SUP_OR_VAR);
- ELT_SECTION = new nsHtml5ElementName(
- nsGkAtoms::section,
- nsGkAtoms::section,
- nsHtml5TreeBuilder::
- ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY |
- SPECIAL);
- ELT_TSPAN = new nsHtml5ElementName(
- nsGkAtoms::tspan, nsGkAtoms::tspan, nsHtml5TreeBuilder::OTHER);
- ELT_AUDIO = new nsHtml5ElementName(
- nsGkAtoms::audio, nsGkAtoms::audio, nsHtml5TreeBuilder::OTHER);
- ELT_MO = new nsHtml5ElementName(nsGkAtoms::mo_,
- nsGkAtoms::mo_,
- nsHtml5TreeBuilder::MI_MO_MN_MS_MTEXT |
- SCOPING_AS_MATHML);
- ELT_VIDEO = new nsHtml5ElementName(
- nsGkAtoms::video, nsGkAtoms::video, nsHtml5TreeBuilder::OTHER);
- ELT_COLGROUP = new nsHtml5ElementName(nsGkAtoms::colgroup,
- nsGkAtoms::colgroup,
- nsHtml5TreeBuilder::COLGROUP | SPECIAL |
- OPTIONAL_END_TAG);
- ELT_FEDISPLACEMENTMAP = new nsHtml5ElementName(nsGkAtoms::fedisplacementmap,
- nsGkAtoms::feDisplacementMap,
- nsHtml5TreeBuilder::OTHER);
- ELT_HGROUP = new nsHtml5ElementName(
- nsGkAtoms::hgroup,
- nsGkAtoms::hgroup,
- nsHtml5TreeBuilder::
- ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY |
- SPECIAL);
- ELT_RP =
- new nsHtml5ElementName(nsGkAtoms::rp,
- nsGkAtoms::rp,
- nsHtml5TreeBuilder::RT_OR_RP | OPTIONAL_END_TAG);
- ELT_OPTGROUP =
- new nsHtml5ElementName(nsGkAtoms::optgroup,
- nsGkAtoms::optgroup,
- nsHtml5TreeBuilder::OPTGROUP | OPTIONAL_END_TAG);
- ELT_SAMP = new nsHtml5ElementName(
- nsGkAtoms::samp, nsGkAtoms::samp, nsHtml5TreeBuilder::OTHER);
- ELT_STOP = new nsHtml5ElementName(
- nsGkAtoms::stop, nsGkAtoms::stop, nsHtml5TreeBuilder::OTHER);
- ELT_BR = new nsHtml5ElementName(
- nsGkAtoms::br, nsGkAtoms::br, nsHtml5TreeBuilder::BR | SPECIAL);
- ELT_ABBR = new nsHtml5ElementName(
- nsGkAtoms::abbr, nsGkAtoms::abbr, nsHtml5TreeBuilder::OTHER);
- ELT_ANIMATECOLOR = new nsHtml5ElementName(nsGkAtoms::animatecolor,
- nsGkAtoms::animateColor,
- nsHtml5TreeBuilder::OTHER);
- ELT_CENTER = new nsHtml5ElementName(
- nsGkAtoms::center,
- nsGkAtoms::center,
- nsHtml5TreeBuilder::DIV_OR_BLOCKQUOTE_OR_CENTER_OR_MENU | SPECIAL);
- ELT_HR = new nsHtml5ElementName(
- nsGkAtoms::hr, nsGkAtoms::hr, nsHtml5TreeBuilder::HR | SPECIAL);
- ELT_FEFUNCR = new nsHtml5ElementName(
- nsGkAtoms::fefuncr, nsGkAtoms::feFuncR, nsHtml5TreeBuilder::OTHER);
- ELT_FECOMPONENTTRANSFER =
- new nsHtml5ElementName(nsGkAtoms::fecomponenttransfer,
- nsGkAtoms::feComponentTransfer,
- nsHtml5TreeBuilder::OTHER);
- ELT_FILTER = new nsHtml5ElementName(
- nsGkAtoms::filter, nsGkAtoms::filter, nsHtml5TreeBuilder::OTHER);
- ELT_FOOTER = new nsHtml5ElementName(
- nsGkAtoms::footer,
- nsGkAtoms::footer,
- nsHtml5TreeBuilder::
- ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY |
- SPECIAL);
- ELT_FEGAUSSIANBLUR = new nsHtml5ElementName(nsGkAtoms::fegaussianblur,
- nsGkAtoms::feGaussianBlur,
- nsHtml5TreeBuilder::OTHER);
- ELT_HEADER = new nsHtml5ElementName(
- nsGkAtoms::header,
- nsGkAtoms::header,
- nsHtml5TreeBuilder::
- ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY |
- SPECIAL);
- ELT_MARKER = new nsHtml5ElementName(
- nsGkAtoms::marker, nsGkAtoms::marker, nsHtml5TreeBuilder::OTHER);
- ELT_METER = new nsHtml5ElementName(
- nsGkAtoms::meter, nsGkAtoms::meter, nsHtml5TreeBuilder::OTHER);
- ELT_NOBR = new nsHtml5ElementName(
- nsGkAtoms::nobr, nsGkAtoms::nobr, nsHtml5TreeBuilder::NOBR);
- ELT_TR = new nsHtml5ElementName(nsGkAtoms::tr,
- nsGkAtoms::tr,
- nsHtml5TreeBuilder::TR | SPECIAL |
- FOSTER_PARENTING | OPTIONAL_END_TAG);
- ELT_ADDRESS = new nsHtml5ElementName(
- nsGkAtoms::address,
- nsGkAtoms::address,
- nsHtml5TreeBuilder::
- ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY |
- SPECIAL);
- ELT_CANVAS = new nsHtml5ElementName(
- nsGkAtoms::canvas, nsGkAtoms::canvas, nsHtml5TreeBuilder::OTHER);
- ELT_DEFS = new nsHtml5ElementName(
- nsGkAtoms::defs, nsGkAtoms::defs, nsHtml5TreeBuilder::OTHER);
- ELT_DETAILS = new nsHtml5ElementName(
- nsGkAtoms::details,
- nsGkAtoms::details,
- nsHtml5TreeBuilder::
- ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY |
- SPECIAL);
- ELT_MS = new nsHtml5ElementName(nsGkAtoms::ms_,
- nsGkAtoms::ms_,
- nsHtml5TreeBuilder::MI_MO_MN_MS_MTEXT |
- SCOPING_AS_MATHML);
- ELT_NOFRAMES = new nsHtml5ElementName(nsGkAtoms::noframes,
- nsGkAtoms::noframes,
- nsHtml5TreeBuilder::NOFRAMES | SPECIAL);
- ELT_PROGRESS = new nsHtml5ElementName(
- nsGkAtoms::progress, nsGkAtoms::progress, nsHtml5TreeBuilder::OTHER);
- ELT_DT = new nsHtml5ElementName(nsGkAtoms::dt,
- nsGkAtoms::dt,
- nsHtml5TreeBuilder::DD_OR_DT | SPECIAL |
- OPTIONAL_END_TAG);
- ELT_APPLET = new nsHtml5ElementName(nsGkAtoms::applet,
- nsGkAtoms::applet,
- nsHtml5TreeBuilder::MARQUEE_OR_APPLET |
- SPECIAL | SCOPING);
- ELT_BASEFONT = new nsHtml5ElementName(
- nsGkAtoms::basefont,
- nsGkAtoms::basefont,
- nsHtml5TreeBuilder::LINK_OR_BASEFONT_OR_BGSOUND | SPECIAL);
- ELT_FOREIGNOBJECT = new nsHtml5ElementName(
- nsGkAtoms::foreignobject,
- nsGkAtoms::foreignObject,
- nsHtml5TreeBuilder::FOREIGNOBJECT_OR_DESC | SCOPING_AS_SVG);
- ELT_FIELDSET = new nsHtml5ElementName(nsGkAtoms::fieldset,
- nsGkAtoms::fieldset,
- nsHtml5TreeBuilder::FIELDSET | SPECIAL);
- ELT_FRAMESET = new nsHtml5ElementName(nsGkAtoms::frameset,
- nsGkAtoms::frameset,
- nsHtml5TreeBuilder::FRAMESET | SPECIAL);
- ELT_FEOFFSET = new nsHtml5ElementName(
- nsGkAtoms::feoffset, nsGkAtoms::feOffset, nsHtml5TreeBuilder::OTHER);
- ELT_FESPOTLIGHT = new nsHtml5ElementName(
- nsGkAtoms::fespotlight, nsGkAtoms::feSpotLight, nsHtml5TreeBuilder::OTHER);
- ELT_FEPOINTLIGHT = new nsHtml5ElementName(nsGkAtoms::fepointlight,
- nsGkAtoms::fePointLight,
- nsHtml5TreeBuilder::OTHER);
- ELT_FEDISTANTLIGHT = new nsHtml5ElementName(nsGkAtoms::fedistantlight,
- nsGkAtoms::feDistantLight,
- nsHtml5TreeBuilder::OTHER);
- ELT_FONT = new nsHtml5ElementName(
- nsGkAtoms::font, nsGkAtoms::font, nsHtml5TreeBuilder::FONT);
- ELT_INPUT = new nsHtml5ElementName(
- nsGkAtoms::input, nsGkAtoms::input, nsHtml5TreeBuilder::INPUT | SPECIAL);
- ELT_LINEARGRADIENT = new nsHtml5ElementName(nsGkAtoms::lineargradient,
- nsGkAtoms::linearGradient,
- nsHtml5TreeBuilder::OTHER);
- ELT_MTEXT = new nsHtml5ElementName(nsGkAtoms::mtext_,
- nsGkAtoms::mtext_,
- nsHtml5TreeBuilder::MI_MO_MN_MS_MTEXT |
- SCOPING_AS_MATHML);
- ELT_NOSCRIPT = new nsHtml5ElementName(nsGkAtoms::noscript,
- nsGkAtoms::noscript,
- nsHtml5TreeBuilder::NOSCRIPT | SPECIAL);
- ELT_RT =
- new nsHtml5ElementName(nsGkAtoms::rt,
- nsGkAtoms::rt,
- nsHtml5TreeBuilder::RT_OR_RP | OPTIONAL_END_TAG);
- ELT_OBJECT =
- new nsHtml5ElementName(nsGkAtoms::object,
- nsGkAtoms::object,
- nsHtml5TreeBuilder::OBJECT | SPECIAL | SCOPING);
- ELT_OUTPUT = new nsHtml5ElementName(
- nsGkAtoms::output, nsGkAtoms::output, nsHtml5TreeBuilder::OUTPUT);
- ELT_PLAINTEXT =
- new nsHtml5ElementName(nsGkAtoms::plaintext,
- nsGkAtoms::plaintext,
- nsHtml5TreeBuilder::PLAINTEXT | SPECIAL);
- ELT_TT = new nsHtml5ElementName(
- nsGkAtoms::tt,
- nsGkAtoms::tt,
- nsHtml5TreeBuilder::
- B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
- ELT_RECT = new nsHtml5ElementName(
- nsGkAtoms::rect, nsGkAtoms::rect, nsHtml5TreeBuilder::OTHER);
- ELT_RADIALGRADIENT = new nsHtml5ElementName(nsGkAtoms::radialgradient,
- nsGkAtoms::radialGradient,
- nsHtml5TreeBuilder::OTHER);
- ELT_SELECT = new nsHtml5ElementName(
- nsGkAtoms::select, nsGkAtoms::select, nsHtml5TreeBuilder::SELECT | SPECIAL);
- ELT_SCRIPT = new nsHtml5ElementName(
- nsGkAtoms::script, nsGkAtoms::script, nsHtml5TreeBuilder::SCRIPT | SPECIAL);
- ELT_TFOOT =
- new nsHtml5ElementName(nsGkAtoms::tfoot,
- nsGkAtoms::tfoot,
- nsHtml5TreeBuilder::TBODY_OR_THEAD_OR_TFOOT |
- SPECIAL | FOSTER_PARENTING | OPTIONAL_END_TAG);
- ELT_TEXT = new nsHtml5ElementName(
- nsGkAtoms::text, nsGkAtoms::text, nsHtml5TreeBuilder::OTHER);
- ELT_MENU = new nsHtml5ElementName(
- nsGkAtoms::menu,
- nsGkAtoms::menu,
- nsHtml5TreeBuilder::DIV_OR_BLOCKQUOTE_OR_CENTER_OR_MENU | SPECIAL);
- ELT_FEDROPSHADOW = new nsHtml5ElementName(nsGkAtoms::fedropshadow,
- nsGkAtoms::feDropShadow,
- nsHtml5TreeBuilder::OTHER);
- ELT_VIEW = new nsHtml5ElementName(
- nsGkAtoms::view, nsGkAtoms::view, nsHtml5TreeBuilder::OTHER);
- ELT_FECOLORMATRIX = new nsHtml5ElementName(nsGkAtoms::fecolormatrix,
- nsGkAtoms::feColorMatrix,
- nsHtml5TreeBuilder::OTHER);
- ELT_FECONVOLVEMATRIX = new nsHtml5ElementName(nsGkAtoms::feconvolvematrix,
- nsGkAtoms::feConvolveMatrix,
- nsHtml5TreeBuilder::OTHER);
- ELT_BODY = new nsHtml5ElementName(nsGkAtoms::body,
- nsGkAtoms::body,
- nsHtml5TreeBuilder::BODY | SPECIAL |
- OPTIONAL_END_TAG);
- ELT_FEMORPHOLOGY = new nsHtml5ElementName(nsGkAtoms::femorphology,
- nsGkAtoms::feMorphology,
- nsHtml5TreeBuilder::OTHER);
- ELT_RUBY = new nsHtml5ElementName(
- nsGkAtoms::ruby,
- nsGkAtoms::ruby,
- nsHtml5TreeBuilder::RUBY_OR_SPAN_OR_SUB_OR_SUP_OR_VAR);
- ELT_SUMMARY = new nsHtml5ElementName(
- nsGkAtoms::summary,
- nsGkAtoms::summary,
- nsHtml5TreeBuilder::
- ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY |
- SPECIAL);
- ELT_TBODY =
- new nsHtml5ElementName(nsGkAtoms::tbody,
- nsGkAtoms::tbody,
- nsHtml5TreeBuilder::TBODY_OR_THEAD_OR_TFOOT |
- SPECIAL | FOSTER_PARENTING | OPTIONAL_END_TAG);
+ ELT_ANNOTATION_XML = new nsHtml5ElementName(nsGkAtoms::annotation_xml_, nsGkAtoms::annotation_xml_, nsHtml5TreeBuilder::ANNOTATION_XML | SCOPING_AS_MATHML);
+ ELT_BIG = new nsHtml5ElementName(nsGkAtoms::big, nsGkAtoms::big, nsHtml5TreeBuilder::B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
+ ELT_BDO = new nsHtml5ElementName(nsGkAtoms::bdo, nsGkAtoms::bdo, nsHtml5TreeBuilder::OTHER);
+ ELT_COL = new nsHtml5ElementName(nsGkAtoms::col, nsGkAtoms::col, nsHtml5TreeBuilder::COL | SPECIAL);
+ ELT_DEL = new nsHtml5ElementName(nsGkAtoms::del, nsGkAtoms::del, nsHtml5TreeBuilder::OTHER);
+ ELT_DFN = new nsHtml5ElementName(nsGkAtoms::dfn, nsGkAtoms::dfn, nsHtml5TreeBuilder::OTHER);
+ ELT_DIR = new nsHtml5ElementName(nsGkAtoms::dir, nsGkAtoms::dir, nsHtml5TreeBuilder::ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
+ ELT_DIV = new nsHtml5ElementName(nsGkAtoms::div, nsGkAtoms::div, nsHtml5TreeBuilder::DIV_OR_BLOCKQUOTE_OR_CENTER_OR_MENU | SPECIAL);
+ ELT_IMG = new nsHtml5ElementName(nsGkAtoms::img, nsGkAtoms::img, nsHtml5TreeBuilder::IMG | SPECIAL);
+ ELT_INS = new nsHtml5ElementName(nsGkAtoms::ins, nsGkAtoms::ins, nsHtml5TreeBuilder::OTHER);
+ ELT_KBD = new nsHtml5ElementName(nsGkAtoms::kbd, nsGkAtoms::kbd, nsHtml5TreeBuilder::OTHER);
+ ELT_MAP = new nsHtml5ElementName(nsGkAtoms::map, nsGkAtoms::map, nsHtml5TreeBuilder::OTHER);
+ ELT_NAV = new nsHtml5ElementName(nsGkAtoms::nav, nsGkAtoms::nav, nsHtml5TreeBuilder::ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
+ ELT_PRE = new nsHtml5ElementName(nsGkAtoms::pre, nsGkAtoms::pre, nsHtml5TreeBuilder::PRE_OR_LISTING | SPECIAL);
+ ELT_A = new nsHtml5ElementName(nsGkAtoms::a, nsGkAtoms::a, nsHtml5TreeBuilder::A);
+ ELT_B = new nsHtml5ElementName(nsGkAtoms::b, nsGkAtoms::b, nsHtml5TreeBuilder::B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
+ ELT_RTC = new nsHtml5ElementName(nsGkAtoms::rtc, nsGkAtoms::rtc, nsHtml5TreeBuilder::RB_OR_RTC | OPTIONAL_END_TAG);
+ ELT_SUB = new nsHtml5ElementName(nsGkAtoms::sub, nsGkAtoms::sub, nsHtml5TreeBuilder::RUBY_OR_SPAN_OR_SUB_OR_SUP_OR_VAR);
+ ELT_SVG = new nsHtml5ElementName(nsGkAtoms::svg, nsGkAtoms::svg, nsHtml5TreeBuilder::SVG);
+ ELT_SUP = new nsHtml5ElementName(nsGkAtoms::sup, nsGkAtoms::sup, nsHtml5TreeBuilder::RUBY_OR_SPAN_OR_SUB_OR_SUP_OR_VAR);
+ ELT_SET = new nsHtml5ElementName(nsGkAtoms::set_, nsGkAtoms::set_, nsHtml5TreeBuilder::OTHER);
+ ELT_USE = new nsHtml5ElementName(nsGkAtoms::use, nsGkAtoms::use, nsHtml5TreeBuilder::OTHER);
+ ELT_VAR = new nsHtml5ElementName(nsGkAtoms::var, nsGkAtoms::var, nsHtml5TreeBuilder::RUBY_OR_SPAN_OR_SUB_OR_SUP_OR_VAR);
+ ELT_G = new nsHtml5ElementName(nsGkAtoms::g, nsGkAtoms::g, nsHtml5TreeBuilder::OTHER);
+ ELT_WBR = new nsHtml5ElementName(nsGkAtoms::wbr, nsGkAtoms::wbr, nsHtml5TreeBuilder::AREA_OR_WBR | SPECIAL);
+ ELT_XMP = new nsHtml5ElementName(nsGkAtoms::xmp, nsGkAtoms::xmp, nsHtml5TreeBuilder::XMP | SPECIAL);
+ ELT_I = new nsHtml5ElementName(nsGkAtoms::i, nsGkAtoms::i, nsHtml5TreeBuilder::B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
+ ELT_P = new nsHtml5ElementName(nsGkAtoms::p, nsGkAtoms::p, nsHtml5TreeBuilder::P | SPECIAL | OPTIONAL_END_TAG);
+ ELT_Q = new nsHtml5ElementName(nsGkAtoms::q, nsGkAtoms::q, nsHtml5TreeBuilder::OTHER);
+ ELT_S = new nsHtml5ElementName(nsGkAtoms::s, nsGkAtoms::s, nsHtml5TreeBuilder::B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
+ ELT_U = new nsHtml5ElementName(nsGkAtoms::u, nsGkAtoms::u, nsHtml5TreeBuilder::B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
+ ELT_H1 = new nsHtml5ElementName(nsGkAtoms::h1, nsGkAtoms::h1, nsHtml5TreeBuilder::H1_OR_H2_OR_H3_OR_H4_OR_H5_OR_H6 | SPECIAL);
+ ELT_H2 = new nsHtml5ElementName(nsGkAtoms::h2, nsGkAtoms::h2, nsHtml5TreeBuilder::H1_OR_H2_OR_H3_OR_H4_OR_H5_OR_H6 | SPECIAL);
+ ELT_H3 = new nsHtml5ElementName(nsGkAtoms::h3, nsGkAtoms::h3, nsHtml5TreeBuilder::H1_OR_H2_OR_H3_OR_H4_OR_H5_OR_H6 | SPECIAL);
+ ELT_H4 = new nsHtml5ElementName(nsGkAtoms::h4, nsGkAtoms::h4, nsHtml5TreeBuilder::H1_OR_H2_OR_H3_OR_H4_OR_H5_OR_H6 | SPECIAL);
+ ELT_H5 = new nsHtml5ElementName(nsGkAtoms::h5, nsGkAtoms::h5, nsHtml5TreeBuilder::H1_OR_H2_OR_H3_OR_H4_OR_H5_OR_H6 | SPECIAL);
+ ELT_H6 = new nsHtml5ElementName(nsGkAtoms::h6, nsGkAtoms::h6, nsHtml5TreeBuilder::H1_OR_H2_OR_H3_OR_H4_OR_H5_OR_H6 | SPECIAL);
+ ELT_AREA = new nsHtml5ElementName(nsGkAtoms::area, nsGkAtoms::area, nsHtml5TreeBuilder::AREA_OR_WBR | SPECIAL);
+ ELT_FEFUNCA = new nsHtml5ElementName(nsGkAtoms::fefunca, nsGkAtoms::feFuncA, nsHtml5TreeBuilder::OTHER);
+ ELT_METADATA = new nsHtml5ElementName(nsGkAtoms::metadata, nsGkAtoms::metadata, nsHtml5TreeBuilder::OTHER);
+ ELT_META = new nsHtml5ElementName(nsGkAtoms::meta, nsGkAtoms::meta, nsHtml5TreeBuilder::META | SPECIAL);
+ ELT_TEXTAREA = new nsHtml5ElementName(nsGkAtoms::textarea, nsGkAtoms::textarea, nsHtml5TreeBuilder::TEXTAREA | SPECIAL);
+ ELT_FEFUNCB = new nsHtml5ElementName(nsGkAtoms::fefuncb, nsGkAtoms::feFuncB, nsHtml5TreeBuilder::OTHER);
+ ELT_RB = new nsHtml5ElementName(nsGkAtoms::rb, nsGkAtoms::rb, nsHtml5TreeBuilder::RB_OR_RTC | OPTIONAL_END_TAG);
+ ELT_DESC = new nsHtml5ElementName(nsGkAtoms::desc, nsGkAtoms::desc, nsHtml5TreeBuilder::FOREIGNOBJECT_OR_DESC | SCOPING_AS_SVG);
+ ELT_DD = new nsHtml5ElementName(nsGkAtoms::dd, nsGkAtoms::dd, nsHtml5TreeBuilder::DD_OR_DT | SPECIAL | OPTIONAL_END_TAG);
+ ELT_BGSOUND = new nsHtml5ElementName(nsGkAtoms::bgsound, nsGkAtoms::bgsound, nsHtml5TreeBuilder::LINK_OR_BASEFONT_OR_BGSOUND | SPECIAL);
+ ELT_EMBED = new nsHtml5ElementName(nsGkAtoms::embed, nsGkAtoms::embed, nsHtml5TreeBuilder::EMBED | SPECIAL);
+ ELT_FEBLEND = new nsHtml5ElementName(nsGkAtoms::feblend, nsGkAtoms::feBlend, nsHtml5TreeBuilder::OTHER);
+ ELT_FEFLOOD = new nsHtml5ElementName(nsGkAtoms::feflood, nsGkAtoms::feFlood, nsHtml5TreeBuilder::OTHER);
+ ELT_HEAD = new nsHtml5ElementName(nsGkAtoms::head, nsGkAtoms::head, nsHtml5TreeBuilder::HEAD | SPECIAL | OPTIONAL_END_TAG);
+ ELT_LEGEND = new nsHtml5ElementName(nsGkAtoms::legend, nsGkAtoms::legend, nsHtml5TreeBuilder::OTHER);
+ ELT_NOEMBED = new nsHtml5ElementName(nsGkAtoms::noembed, nsGkAtoms::noembed, nsHtml5TreeBuilder::NOEMBED | SPECIAL);
+ ELT_TD = new nsHtml5ElementName(nsGkAtoms::td, nsGkAtoms::td, nsHtml5TreeBuilder::TD_OR_TH | SPECIAL | SCOPING | OPTIONAL_END_TAG);
+ ELT_THEAD = new nsHtml5ElementName(nsGkAtoms::thead, nsGkAtoms::thead, nsHtml5TreeBuilder::TBODY_OR_THEAD_OR_TFOOT | SPECIAL | FOSTER_PARENTING | OPTIONAL_END_TAG);
+ ELT_ASIDE = new nsHtml5ElementName(nsGkAtoms::aside, nsGkAtoms::aside, nsHtml5TreeBuilder::ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
+ ELT_ARTICLE = new nsHtml5ElementName(nsGkAtoms::article, nsGkAtoms::article, nsHtml5TreeBuilder::ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
+ ELT_ANIMATE = new nsHtml5ElementName(nsGkAtoms::animate, nsGkAtoms::animate, nsHtml5TreeBuilder::OTHER);
+ ELT_BASE = new nsHtml5ElementName(nsGkAtoms::base, nsGkAtoms::base, nsHtml5TreeBuilder::BASE | SPECIAL);
+ ELT_BLOCKQUOTE = new nsHtml5ElementName(nsGkAtoms::blockquote, nsGkAtoms::blockquote, nsHtml5TreeBuilder::DIV_OR_BLOCKQUOTE_OR_CENTER_OR_MENU | SPECIAL);
+ ELT_CODE = new nsHtml5ElementName(nsGkAtoms::code, nsGkAtoms::code, nsHtml5TreeBuilder::B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
+ ELT_CIRCLE = new nsHtml5ElementName(nsGkAtoms::circle, nsGkAtoms::circle, nsHtml5TreeBuilder::OTHER);
+ ELT_CITE = new nsHtml5ElementName(nsGkAtoms::cite, nsGkAtoms::cite, nsHtml5TreeBuilder::OTHER);
+ ELT_ELLIPSE = new nsHtml5ElementName(nsGkAtoms::ellipse, nsGkAtoms::ellipse, nsHtml5TreeBuilder::OTHER);
+ ELT_FETURBULENCE = new nsHtml5ElementName(nsGkAtoms::feturbulence, nsGkAtoms::feTurbulence, nsHtml5TreeBuilder::OTHER);
+ ELT_FEMERGENODE = new nsHtml5ElementName(nsGkAtoms::femergenode, nsGkAtoms::feMergeNode, nsHtml5TreeBuilder::OTHER);
+ ELT_FEIMAGE = new nsHtml5ElementName(nsGkAtoms::feimage, nsGkAtoms::feImage, nsHtml5TreeBuilder::OTHER);
+ ELT_FEMERGE = new nsHtml5ElementName(nsGkAtoms::femerge, nsGkAtoms::feMerge, nsHtml5TreeBuilder::OTHER);
+ ELT_FETILE = new nsHtml5ElementName(nsGkAtoms::fetile, nsGkAtoms::feTile, nsHtml5TreeBuilder::OTHER);
+ ELT_FRAME = new nsHtml5ElementName(nsGkAtoms::frame, nsGkAtoms::frame, nsHtml5TreeBuilder::FRAME | SPECIAL);
+ ELT_FIGURE = new nsHtml5ElementName(nsGkAtoms::figure, nsGkAtoms::figure, nsHtml5TreeBuilder::ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
+ ELT_FECOMPOSITE = new nsHtml5ElementName(nsGkAtoms::fecomposite, nsGkAtoms::feComposite, nsHtml5TreeBuilder::OTHER);
+ ELT_IMAGE = new nsHtml5ElementName(nsGkAtoms::image, nsGkAtoms::image, nsHtml5TreeBuilder::IMAGE);
+ ELT_IFRAME = new nsHtml5ElementName(nsGkAtoms::iframe, nsGkAtoms::iframe, nsHtml5TreeBuilder::IFRAME | SPECIAL);
+ ELT_LINE = new nsHtml5ElementName(nsGkAtoms::line, nsGkAtoms::line, nsHtml5TreeBuilder::OTHER);
+ ELT_MARQUEE = new nsHtml5ElementName(nsGkAtoms::marquee, nsGkAtoms::marquee, nsHtml5TreeBuilder::MARQUEE_OR_APPLET | SPECIAL | SCOPING);
+ ELT_POLYLINE = new nsHtml5ElementName(nsGkAtoms::polyline, nsGkAtoms::polyline, nsHtml5TreeBuilder::OTHER);
+ ELT_PICTURE = new nsHtml5ElementName(nsGkAtoms::picture, nsGkAtoms::picture, nsHtml5TreeBuilder::OTHER);
+ ELT_SOURCE = new nsHtml5ElementName(nsGkAtoms::source, nsGkAtoms::source, nsHtml5TreeBuilder::PARAM_OR_SOURCE_OR_TRACK);
+ ELT_STRIKE = new nsHtml5ElementName(nsGkAtoms::strike, nsGkAtoms::strike, nsHtml5TreeBuilder::B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
+ ELT_STYLE = new nsHtml5ElementName(nsGkAtoms::style, nsGkAtoms::style, nsHtml5TreeBuilder::STYLE | SPECIAL);
+ ELT_TABLE = new nsHtml5ElementName(nsGkAtoms::table, nsGkAtoms::table, nsHtml5TreeBuilder::TABLE | SPECIAL | FOSTER_PARENTING | SCOPING);
+ ELT_TITLE = new nsHtml5ElementName(nsGkAtoms::title, nsGkAtoms::title, nsHtml5TreeBuilder::TITLE | SPECIAL | SCOPING_AS_SVG);
+ ELT_TIME = new nsHtml5ElementName(nsGkAtoms::time, nsGkAtoms::time, nsHtml5TreeBuilder::OTHER);
+ ELT_TEMPLATE = new nsHtml5ElementName(nsGkAtoms::_template, nsGkAtoms::_template, nsHtml5TreeBuilder::TEMPLATE | SPECIAL | SCOPING);
+ ELT_ALTGLYPHDEF = new nsHtml5ElementName(nsGkAtoms::altglyphdef, nsGkAtoms::altGlyphDef, nsHtml5TreeBuilder::OTHER);
+ ELT_GLYPHREF = new nsHtml5ElementName(nsGkAtoms::glyphref, nsGkAtoms::glyphRef, nsHtml5TreeBuilder::OTHER);
+ ELT_DIALOG = new nsHtml5ElementName(nsGkAtoms::dialog, nsGkAtoms::dialog, nsHtml5TreeBuilder::ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
+ ELT_FEFUNCG = new nsHtml5ElementName(nsGkAtoms::fefuncg, nsGkAtoms::feFuncG, nsHtml5TreeBuilder::OTHER);
+ ELT_FEDIFFUSELIGHTING = new nsHtml5ElementName(nsGkAtoms::fediffuselighting, nsGkAtoms::feDiffuseLighting, nsHtml5TreeBuilder::OTHER);
+ ELT_FESPECULARLIGHTING = new nsHtml5ElementName(nsGkAtoms::fespecularlighting, nsGkAtoms::feSpecularLighting, nsHtml5TreeBuilder::OTHER);
+ ELT_LISTING = new nsHtml5ElementName(nsGkAtoms::listing, nsGkAtoms::listing, nsHtml5TreeBuilder::PRE_OR_LISTING | SPECIAL);
+ ELT_STRONG = new nsHtml5ElementName(nsGkAtoms::strong, nsGkAtoms::strong, nsHtml5TreeBuilder::B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
+ ELT_ALTGLYPH = new nsHtml5ElementName(nsGkAtoms::altglyph, nsGkAtoms::altGlyph, nsHtml5TreeBuilder::OTHER);
+ ELT_CLIPPATH = new nsHtml5ElementName(nsGkAtoms::clippath, nsGkAtoms::clipPath, nsHtml5TreeBuilder::OTHER);
+ ELT_MGLYPH = new nsHtml5ElementName(nsGkAtoms::mglyph_, nsGkAtoms::mglyph_, nsHtml5TreeBuilder::MGLYPH_OR_MALIGNMARK);
+ ELT_MATH = new nsHtml5ElementName(nsGkAtoms::math, nsGkAtoms::math, nsHtml5TreeBuilder::MATH);
+ ELT_MPATH = new nsHtml5ElementName(nsGkAtoms::mpath, nsGkAtoms::mpath, nsHtml5TreeBuilder::OTHER);
+ ELT_PATH = new nsHtml5ElementName(nsGkAtoms::path, nsGkAtoms::path, nsHtml5TreeBuilder::OTHER);
+ ELT_TH = new nsHtml5ElementName(nsGkAtoms::th, nsGkAtoms::th, nsHtml5TreeBuilder::TD_OR_TH | SPECIAL | SCOPING | OPTIONAL_END_TAG);
+ ELT_SWITCH = new nsHtml5ElementName(nsGkAtoms::svgSwitch, nsGkAtoms::svgSwitch, nsHtml5TreeBuilder::OTHER);
+ ELT_TEXTPATH = new nsHtml5ElementName(nsGkAtoms::textpath, nsGkAtoms::textPath, nsHtml5TreeBuilder::OTHER);
+ ELT_LI = new nsHtml5ElementName(nsGkAtoms::li, nsGkAtoms::li, nsHtml5TreeBuilder::LI | SPECIAL | OPTIONAL_END_TAG);
+ ELT_MI = new nsHtml5ElementName(nsGkAtoms::mi_, nsGkAtoms::mi_, nsHtml5TreeBuilder::MI_MO_MN_MS_MTEXT | SCOPING_AS_MATHML);
+ ELT_LINK = new nsHtml5ElementName(nsGkAtoms::link, nsGkAtoms::link, nsHtml5TreeBuilder::LINK_OR_BASEFONT_OR_BGSOUND | SPECIAL);
+ ELT_MARK = new nsHtml5ElementName(nsGkAtoms::mark, nsGkAtoms::mark, nsHtml5TreeBuilder::OTHER);
+ ELT_MALIGNMARK = new nsHtml5ElementName(nsGkAtoms::malignmark_, nsGkAtoms::malignmark_, nsHtml5TreeBuilder::MGLYPH_OR_MALIGNMARK);
+ ELT_MASK = new nsHtml5ElementName(nsGkAtoms::mask, nsGkAtoms::mask, nsHtml5TreeBuilder::OTHER);
+ ELT_TRACK = new nsHtml5ElementName(nsGkAtoms::track, nsGkAtoms::track, nsHtml5TreeBuilder::PARAM_OR_SOURCE_OR_TRACK | SPECIAL);
+ ELT_DL = new nsHtml5ElementName(nsGkAtoms::dl, nsGkAtoms::dl, nsHtml5TreeBuilder::UL_OR_OL_OR_DL | SPECIAL);
+ ELT_HTML = new nsHtml5ElementName(nsGkAtoms::html, nsGkAtoms::html, nsHtml5TreeBuilder::HTML | SPECIAL | SCOPING | OPTIONAL_END_TAG);
+ ELT_OL = new nsHtml5ElementName(nsGkAtoms::ol, nsGkAtoms::ol, nsHtml5TreeBuilder::UL_OR_OL_OR_DL | SPECIAL);
+ ELT_LABEL = new nsHtml5ElementName(nsGkAtoms::label, nsGkAtoms::label, nsHtml5TreeBuilder::OTHER);
+ ELT_UL = new nsHtml5ElementName(nsGkAtoms::ul, nsGkAtoms::ul, nsHtml5TreeBuilder::UL_OR_OL_OR_DL | SPECIAL);
+ ELT_SMALL = new nsHtml5ElementName(nsGkAtoms::small, nsGkAtoms::small, nsHtml5TreeBuilder::B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
+ ELT_SYMBOL = new nsHtml5ElementName(nsGkAtoms::symbol, nsGkAtoms::symbol, nsHtml5TreeBuilder::OTHER);
+ ELT_ALTGLYPHITEM = new nsHtml5ElementName(nsGkAtoms::altglyphitem, nsGkAtoms::altGlyphItem, nsHtml5TreeBuilder::OTHER);
+ ELT_ANIMATETRANSFORM = new nsHtml5ElementName(nsGkAtoms::animatetransform, nsGkAtoms::animateTransform, nsHtml5TreeBuilder::OTHER);
+ ELT_ACRONYM = new nsHtml5ElementName(nsGkAtoms::acronym, nsGkAtoms::acronym, nsHtml5TreeBuilder::OTHER);
+ ELT_EM = new nsHtml5ElementName(nsGkAtoms::em, nsGkAtoms::em, nsHtml5TreeBuilder::B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
+ ELT_FORM = new nsHtml5ElementName(nsGkAtoms::form, nsGkAtoms::form, nsHtml5TreeBuilder::FORM | SPECIAL);
+ ELT_MENUITEM = new nsHtml5ElementName(nsGkAtoms::menuitem, nsGkAtoms::menuitem, nsHtml5TreeBuilder::MENUITEM);
+ ELT_PARAM = new nsHtml5ElementName(nsGkAtoms::param, nsGkAtoms::param, nsHtml5TreeBuilder::PARAM_OR_SOURCE_OR_TRACK | SPECIAL);
+ ELT_ANIMATEMOTION = new nsHtml5ElementName(nsGkAtoms::animatemotion, nsGkAtoms::animateMotion, nsHtml5TreeBuilder::OTHER);
+ ELT_BUTTON = new nsHtml5ElementName(nsGkAtoms::button, nsGkAtoms::button, nsHtml5TreeBuilder::BUTTON | SPECIAL);
+ ELT_CAPTION = new nsHtml5ElementName(nsGkAtoms::caption, nsGkAtoms::caption, nsHtml5TreeBuilder::CAPTION | SPECIAL | SCOPING);
+ ELT_FIGCAPTION = new nsHtml5ElementName(nsGkAtoms::figcaption, nsGkAtoms::figcaption, nsHtml5TreeBuilder::ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
+ ELT_MN = new nsHtml5ElementName(nsGkAtoms::mn_, nsGkAtoms::mn_, nsHtml5TreeBuilder::MI_MO_MN_MS_MTEXT | SCOPING_AS_MATHML);
+ ELT_KEYGEN = new nsHtml5ElementName(nsGkAtoms::keygen, nsGkAtoms::keygen, nsHtml5TreeBuilder::KEYGEN);
+ ELT_MAIN = new nsHtml5ElementName(nsGkAtoms::main, nsGkAtoms::main, nsHtml5TreeBuilder::ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
+ ELT_OPTION = new nsHtml5ElementName(nsGkAtoms::option, nsGkAtoms::option, nsHtml5TreeBuilder::OPTION | OPTIONAL_END_TAG);
+ ELT_POLYGON = new nsHtml5ElementName(nsGkAtoms::polygon, nsGkAtoms::polygon, nsHtml5TreeBuilder::OTHER);
+ ELT_PATTERN = new nsHtml5ElementName(nsGkAtoms::pattern, nsGkAtoms::pattern, nsHtml5TreeBuilder::OTHER);
+ ELT_SPAN = new nsHtml5ElementName(nsGkAtoms::span, nsGkAtoms::span, nsHtml5TreeBuilder::RUBY_OR_SPAN_OR_SUB_OR_SUP_OR_VAR);
+ ELT_SECTION = new nsHtml5ElementName(nsGkAtoms::section, nsGkAtoms::section, nsHtml5TreeBuilder::ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
+ ELT_TSPAN = new nsHtml5ElementName(nsGkAtoms::tspan, nsGkAtoms::tspan, nsHtml5TreeBuilder::OTHER);
+ ELT_AUDIO = new nsHtml5ElementName(nsGkAtoms::audio, nsGkAtoms::audio, nsHtml5TreeBuilder::OTHER);
+ ELT_MO = new nsHtml5ElementName(nsGkAtoms::mo_, nsGkAtoms::mo_, nsHtml5TreeBuilder::MI_MO_MN_MS_MTEXT | SCOPING_AS_MATHML);
+ ELT_VIDEO = new nsHtml5ElementName(nsGkAtoms::video, nsGkAtoms::video, nsHtml5TreeBuilder::OTHER);
+ ELT_COLGROUP = new nsHtml5ElementName(nsGkAtoms::colgroup, nsGkAtoms::colgroup, nsHtml5TreeBuilder::COLGROUP | SPECIAL | OPTIONAL_END_TAG);
+ ELT_FEDISPLACEMENTMAP = new nsHtml5ElementName(nsGkAtoms::fedisplacementmap, nsGkAtoms::feDisplacementMap, nsHtml5TreeBuilder::OTHER);
+ ELT_HGROUP = new nsHtml5ElementName(nsGkAtoms::hgroup, nsGkAtoms::hgroup, nsHtml5TreeBuilder::ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
+ ELT_RP = new nsHtml5ElementName(nsGkAtoms::rp, nsGkAtoms::rp, nsHtml5TreeBuilder::RT_OR_RP | OPTIONAL_END_TAG);
+ ELT_OPTGROUP = new nsHtml5ElementName(nsGkAtoms::optgroup, nsGkAtoms::optgroup, nsHtml5TreeBuilder::OPTGROUP | OPTIONAL_END_TAG);
+ ELT_SAMP = new nsHtml5ElementName(nsGkAtoms::samp, nsGkAtoms::samp, nsHtml5TreeBuilder::OTHER);
+ ELT_STOP = new nsHtml5ElementName(nsGkAtoms::stop, nsGkAtoms::stop, nsHtml5TreeBuilder::OTHER);
+ ELT_BR = new nsHtml5ElementName(nsGkAtoms::br, nsGkAtoms::br, nsHtml5TreeBuilder::BR | SPECIAL);
+ ELT_ABBR = new nsHtml5ElementName(nsGkAtoms::abbr, nsGkAtoms::abbr, nsHtml5TreeBuilder::OTHER);
+ ELT_ANIMATECOLOR = new nsHtml5ElementName(nsGkAtoms::animatecolor, nsGkAtoms::animateColor, nsHtml5TreeBuilder::OTHER);
+ ELT_CENTER = new nsHtml5ElementName(nsGkAtoms::center, nsGkAtoms::center, nsHtml5TreeBuilder::DIV_OR_BLOCKQUOTE_OR_CENTER_OR_MENU | SPECIAL);
+ ELT_HR = new nsHtml5ElementName(nsGkAtoms::hr, nsGkAtoms::hr, nsHtml5TreeBuilder::HR | SPECIAL);
+ ELT_FEFUNCR = new nsHtml5ElementName(nsGkAtoms::fefuncr, nsGkAtoms::feFuncR, nsHtml5TreeBuilder::OTHER);
+ ELT_FECOMPONENTTRANSFER = new nsHtml5ElementName(nsGkAtoms::fecomponenttransfer, nsGkAtoms::feComponentTransfer, nsHtml5TreeBuilder::OTHER);
+ ELT_FILTER = new nsHtml5ElementName(nsGkAtoms::filter, nsGkAtoms::filter, nsHtml5TreeBuilder::OTHER);
+ ELT_FOOTER = new nsHtml5ElementName(nsGkAtoms::footer, nsGkAtoms::footer, nsHtml5TreeBuilder::ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
+ ELT_FEGAUSSIANBLUR = new nsHtml5ElementName(nsGkAtoms::fegaussianblur, nsGkAtoms::feGaussianBlur, nsHtml5TreeBuilder::OTHER);
+ ELT_HEADER = new nsHtml5ElementName(nsGkAtoms::header, nsGkAtoms::header, nsHtml5TreeBuilder::ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
+ ELT_MARKER = new nsHtml5ElementName(nsGkAtoms::marker, nsGkAtoms::marker, nsHtml5TreeBuilder::OTHER);
+ ELT_METER = new nsHtml5ElementName(nsGkAtoms::meter, nsGkAtoms::meter, nsHtml5TreeBuilder::OTHER);
+ ELT_NOBR = new nsHtml5ElementName(nsGkAtoms::nobr, nsGkAtoms::nobr, nsHtml5TreeBuilder::NOBR);
+ ELT_TR = new nsHtml5ElementName(nsGkAtoms::tr, nsGkAtoms::tr, nsHtml5TreeBuilder::TR | SPECIAL | FOSTER_PARENTING | OPTIONAL_END_TAG);
+ ELT_ADDRESS = new nsHtml5ElementName(nsGkAtoms::address, nsGkAtoms::address, nsHtml5TreeBuilder::ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
+ ELT_CANVAS = new nsHtml5ElementName(nsGkAtoms::canvas, nsGkAtoms::canvas, nsHtml5TreeBuilder::OTHER);
+ ELT_DEFS = new nsHtml5ElementName(nsGkAtoms::defs, nsGkAtoms::defs, nsHtml5TreeBuilder::OTHER);
+ ELT_DETAILS = new nsHtml5ElementName(nsGkAtoms::details, nsGkAtoms::details, nsHtml5TreeBuilder::ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
+ ELT_MS = new nsHtml5ElementName(nsGkAtoms::ms_, nsGkAtoms::ms_, nsHtml5TreeBuilder::MI_MO_MN_MS_MTEXT | SCOPING_AS_MATHML);
+ ELT_NOFRAMES = new nsHtml5ElementName(nsGkAtoms::noframes, nsGkAtoms::noframes, nsHtml5TreeBuilder::NOFRAMES | SPECIAL);
+ ELT_PROGRESS = new nsHtml5ElementName(nsGkAtoms::progress, nsGkAtoms::progress, nsHtml5TreeBuilder::OTHER);
+ ELT_DT = new nsHtml5ElementName(nsGkAtoms::dt, nsGkAtoms::dt, nsHtml5TreeBuilder::DD_OR_DT | SPECIAL | OPTIONAL_END_TAG);
+ ELT_APPLET = new nsHtml5ElementName(nsGkAtoms::applet, nsGkAtoms::applet, nsHtml5TreeBuilder::MARQUEE_OR_APPLET | SPECIAL | SCOPING);
+ ELT_BASEFONT = new nsHtml5ElementName(nsGkAtoms::basefont, nsGkAtoms::basefont, nsHtml5TreeBuilder::LINK_OR_BASEFONT_OR_BGSOUND | SPECIAL);
+ ELT_FOREIGNOBJECT = new nsHtml5ElementName(nsGkAtoms::foreignobject, nsGkAtoms::foreignObject, nsHtml5TreeBuilder::FOREIGNOBJECT_OR_DESC | SCOPING_AS_SVG);
+ ELT_FIELDSET = new nsHtml5ElementName(nsGkAtoms::fieldset, nsGkAtoms::fieldset, nsHtml5TreeBuilder::FIELDSET | SPECIAL);
+ ELT_FRAMESET = new nsHtml5ElementName(nsGkAtoms::frameset, nsGkAtoms::frameset, nsHtml5TreeBuilder::FRAMESET | SPECIAL);
+ ELT_FEOFFSET = new nsHtml5ElementName(nsGkAtoms::feoffset, nsGkAtoms::feOffset, nsHtml5TreeBuilder::OTHER);
+ ELT_FESPOTLIGHT = new nsHtml5ElementName(nsGkAtoms::fespotlight, nsGkAtoms::feSpotLight, nsHtml5TreeBuilder::OTHER);
+ ELT_FEPOINTLIGHT = new nsHtml5ElementName(nsGkAtoms::fepointlight, nsGkAtoms::fePointLight, nsHtml5TreeBuilder::OTHER);
+ ELT_FEDISTANTLIGHT = new nsHtml5ElementName(nsGkAtoms::fedistantlight, nsGkAtoms::feDistantLight, nsHtml5TreeBuilder::OTHER);
+ ELT_FONT = new nsHtml5ElementName(nsGkAtoms::font, nsGkAtoms::font, nsHtml5TreeBuilder::FONT);
+ ELT_INPUT = new nsHtml5ElementName(nsGkAtoms::input, nsGkAtoms::input, nsHtml5TreeBuilder::INPUT | SPECIAL);
+ ELT_LINEARGRADIENT = new nsHtml5ElementName(nsGkAtoms::lineargradient, nsGkAtoms::linearGradient, nsHtml5TreeBuilder::OTHER);
+ ELT_MTEXT = new nsHtml5ElementName(nsGkAtoms::mtext_, nsGkAtoms::mtext_, nsHtml5TreeBuilder::MI_MO_MN_MS_MTEXT | SCOPING_AS_MATHML);
+ ELT_NOSCRIPT = new nsHtml5ElementName(nsGkAtoms::noscript, nsGkAtoms::noscript, nsHtml5TreeBuilder::NOSCRIPT | SPECIAL);
+ ELT_RT = new nsHtml5ElementName(nsGkAtoms::rt, nsGkAtoms::rt, nsHtml5TreeBuilder::RT_OR_RP | OPTIONAL_END_TAG);
+ ELT_OBJECT = new nsHtml5ElementName(nsGkAtoms::object, nsGkAtoms::object, nsHtml5TreeBuilder::OBJECT | SPECIAL | SCOPING);
+ ELT_OUTPUT = new nsHtml5ElementName(nsGkAtoms::output, nsGkAtoms::output, nsHtml5TreeBuilder::OUTPUT);
+ ELT_PLAINTEXT = new nsHtml5ElementName(nsGkAtoms::plaintext, nsGkAtoms::plaintext, nsHtml5TreeBuilder::PLAINTEXT | SPECIAL);
+ ELT_TT = new nsHtml5ElementName(nsGkAtoms::tt, nsGkAtoms::tt, nsHtml5TreeBuilder::B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U);
+ ELT_RECT = new nsHtml5ElementName(nsGkAtoms::rect, nsGkAtoms::rect, nsHtml5TreeBuilder::OTHER);
+ ELT_RADIALGRADIENT = new nsHtml5ElementName(nsGkAtoms::radialgradient, nsGkAtoms::radialGradient, nsHtml5TreeBuilder::OTHER);
+ ELT_SELECT = new nsHtml5ElementName(nsGkAtoms::select, nsGkAtoms::select, nsHtml5TreeBuilder::SELECT | SPECIAL);
+ ELT_SCRIPT = new nsHtml5ElementName(nsGkAtoms::script, nsGkAtoms::script, nsHtml5TreeBuilder::SCRIPT | SPECIAL);
+ ELT_TFOOT = new nsHtml5ElementName(nsGkAtoms::tfoot, nsGkAtoms::tfoot, nsHtml5TreeBuilder::TBODY_OR_THEAD_OR_TFOOT | SPECIAL | FOSTER_PARENTING | OPTIONAL_END_TAG);
+ ELT_TEXT = new nsHtml5ElementName(nsGkAtoms::text, nsGkAtoms::text, nsHtml5TreeBuilder::OTHER);
+ ELT_MENU = new nsHtml5ElementName(nsGkAtoms::menu, nsGkAtoms::menu, nsHtml5TreeBuilder::DIV_OR_BLOCKQUOTE_OR_CENTER_OR_MENU | SPECIAL);
+ ELT_FEDROPSHADOW = new nsHtml5ElementName(nsGkAtoms::fedropshadow, nsGkAtoms::feDropShadow, nsHtml5TreeBuilder::OTHER);
+ ELT_VIEW = new nsHtml5ElementName(nsGkAtoms::view, nsGkAtoms::view, nsHtml5TreeBuilder::OTHER);
+ ELT_FECOLORMATRIX = new nsHtml5ElementName(nsGkAtoms::fecolormatrix, nsGkAtoms::feColorMatrix, nsHtml5TreeBuilder::OTHER);
+ ELT_FECONVOLVEMATRIX = new nsHtml5ElementName(nsGkAtoms::feconvolvematrix, nsGkAtoms::feConvolveMatrix, nsHtml5TreeBuilder::OTHER);
+ ELT_BODY = new nsHtml5ElementName(nsGkAtoms::body, nsGkAtoms::body, nsHtml5TreeBuilder::BODY | SPECIAL | OPTIONAL_END_TAG);
+ ELT_FEMORPHOLOGY = new nsHtml5ElementName(nsGkAtoms::femorphology, nsGkAtoms::feMorphology, nsHtml5TreeBuilder::OTHER);
+ ELT_RUBY = new nsHtml5ElementName(nsGkAtoms::ruby, nsGkAtoms::ruby, nsHtml5TreeBuilder::RUBY_OR_SPAN_OR_SUB_OR_SUP_OR_VAR);
+ ELT_SUMMARY = new nsHtml5ElementName(nsGkAtoms::summary, nsGkAtoms::summary, nsHtml5TreeBuilder::ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY | SPECIAL);
+ ELT_TBODY = new nsHtml5ElementName(nsGkAtoms::tbody, nsGkAtoms::tbody, nsHtml5TreeBuilder::TBODY_OR_THEAD_OR_TFOOT | SPECIAL | FOSTER_PARENTING | OPTIONAL_END_TAG);
ELEMENT_NAMES = new nsHtml5ElementName*[203];
ELEMENT_NAMES[0] = ELT_KEYGEN;
ELEMENT_NAMES[1] = ELT_FETURBULENCE;
ELEMENT_NAMES[2] = ELT_FIELDSET;
ELEMENT_NAMES[3] = ELT_H2;
ELEMENT_NAMES[4] = ELT_MATH;
ELEMENT_NAMES[5] = ELT_HEADER;
ELEMENT_NAMES[6] = ELT_RECT;
--- a/parser/html/nsHtml5ElementName.h
+++ b/parser/html/nsHtml5ElementName.h
@@ -51,87 +51,92 @@ class nsHtml5TreeBuilder;
class nsHtml5MetaScanner;
class nsHtml5UTF16Buffer;
class nsHtml5StateSnapshot;
class nsHtml5Portability;
class nsHtml5ElementName
{
-public:
- static const int32_t GROUP_MASK = 127;
-
- static const int32_t NOT_INTERNED = (1 << 30);
+ public:
+ static const int32_t GROUP_MASK = 127;
- static const int32_t SPECIAL = (1 << 29);
-
- static const int32_t FOSTER_PARENTING = (1 << 28);
+ static const int32_t NOT_INTERNED = (1 << 30);
- static const int32_t SCOPING = (1 << 27);
-
- static const int32_t SCOPING_AS_SVG = (1 << 26);
+ static const int32_t SPECIAL = (1 << 29);
- static const int32_t SCOPING_AS_MATHML = (1 << 25);
+ static const int32_t FOSTER_PARENTING = (1 << 28);
- static const int32_t HTML_INTEGRATION_POINT = (1 << 24);
-
- static const int32_t OPTIONAL_END_TAG = (1 << 23);
+ static const int32_t SCOPING = (1 << 27);
-private:
- nsIAtom* name;
- nsIAtom* camelCaseName;
+ static const int32_t SCOPING_AS_SVG = (1 << 26);
-public:
- int32_t flags;
- inline nsIAtom* getName() { return name; }
+ static const int32_t SCOPING_AS_MATHML = (1 << 25);
- inline nsIAtom* getCamelCaseName() { return camelCaseName; }
-
- inline int32_t getFlags() { return flags; }
+ static const int32_t HTML_INTEGRATION_POINT = (1 << 24);
- inline int32_t getGroup() { return flags & nsHtml5ElementName::GROUP_MASK; }
-
- inline bool isInterned()
- {
- return !(flags & nsHtml5ElementName::NOT_INTERNED);
- }
+ static const int32_t OPTIONAL_END_TAG = (1 << 23);
- inline static int32_t levelOrderBinarySearch(jArray<int32_t, int32_t> data,
- int32_t key)
- {
- int32_t n = data.length;
- int32_t i = 0;
- while (i < n) {
- int32_t val = data[i];
- if (val < key) {
- i = 2 * i + 2;
- } else if (val > key) {
- i = 2 * i + 1;
- } else {
- return i;
- }
+ private:
+ nsIAtom* name;
+ nsIAtom* camelCaseName;
+ public:
+ int32_t flags;
+ inline nsIAtom* getName()
+ {
+ return name;
}
- return -1;
+
+ inline nsIAtom* getCamelCaseName()
+ {
+ return camelCaseName;
}
- inline static nsHtml5ElementName* elementNameByBuffer(
- char16_t* buf,
- int32_t offset,
- int32_t length,
- nsHtml5AtomTable* interner)
+ inline int32_t getFlags()
+ {
+ return flags;
+ }
+
+ inline int32_t getGroup()
+ {
+ return flags & nsHtml5ElementName::GROUP_MASK;
+ }
+
+ inline bool isInterned()
+ {
+ return !(flags & nsHtml5ElementName::NOT_INTERNED);
+ }
+
+ inline static int32_t levelOrderBinarySearch(jArray<int32_t,int32_t> data, int32_t key)
+ {
+ int32_t n = data.length;
+ int32_t i = 0;
+ while (i < n) {
+ int32_t val = data[i];
+ if (val < key) {
+ i = 2 * i + 2;
+ } else if (val > key) {
+ i = 2 * i + 1;
+ } else {
+ return i;
+ }
+ }
+ return -1;
+ }
+
+ inline static nsHtml5ElementName* elementNameByBuffer(char16_t* buf, int32_t offset, int32_t length, nsHtml5AtomTable* interner)
{
uint32_t hash = nsHtml5ElementName::bufToHash(buf, length);
- jArray<int32_t, int32_t> hashes;
+ jArray<int32_t,int32_t> hashes;
hashes = nsHtml5ElementName::ELEMENT_HASHES;
int32_t index = levelOrderBinarySearch(hashes, hash);
if (index < 0) {
return nullptr;
} else {
- nsHtml5ElementName* elementName =
- nsHtml5ElementName::ELEMENT_NAMES[index];
+ nsHtml5ElementName* elementName = nsHtml5ElementName::ELEMENT_NAMES[index];
nsIAtom* name = elementName->name;
if (!nsHtml5Portability::localEqualsBuffer(name, buf, offset, length)) {
return nullptr;
}
return elementName;
}
}
--- a/parser/html/nsHtml5MetaScanner.cpp
+++ b/parser/html/nsHtml5MetaScanner.cpp
@@ -59,30 +59,30 @@ staticJArray<char16_t,int32_t> nsHtml5Me
static char16_t const CONTENT_DATA[] = { 'o', 'n', 't', 'e', 'n', 't' };
staticJArray<char16_t,int32_t> nsHtml5MetaScanner::CONTENT = { CONTENT_DATA, MOZ_ARRAY_LENGTH(CONTENT_DATA) };
static char16_t const HTTP_EQUIV_DATA[] = { 't', 't', 'p', '-', 'e', 'q', 'u', 'i', 'v' };
staticJArray<char16_t,int32_t> nsHtml5MetaScanner::HTTP_EQUIV = { HTTP_EQUIV_DATA, MOZ_ARRAY_LENGTH(HTTP_EQUIV_DATA) };
static char16_t const CONTENT_TYPE_DATA[] = { 'c', 'o', 'n', 't', 'e', 'n', 't', '-', 't', 'y', 'p', 'e' };
staticJArray<char16_t,int32_t> nsHtml5MetaScanner::CONTENT_TYPE = { CONTENT_TYPE_DATA, MOZ_ARRAY_LENGTH(CONTENT_TYPE_DATA) };
nsHtml5MetaScanner::nsHtml5MetaScanner(nsHtml5TreeBuilder* tb)
- : readable(nullptr)
- , metaState(NO)
- , contentIndex(INT32_MAX)
- , charsetIndex(INT32_MAX)
- , httpEquivIndex(INT32_MAX)
- , contentTypeIndex(INT32_MAX)
- , stateSave(DATA)
- , strBufLen(0)
- , strBuf(jArray<char16_t, int32_t>::newJArray(36))
- , content(nullptr)
- , charset(nullptr)
- , httpEquivState(HTTP_EQUIV_NOT_SEEN)
- , treeBuilder(tb)
- , mEncoding(nullptr)
+ : readable(nullptr),
+ metaState(NO),
+ contentIndex(INT32_MAX),
+ charsetIndex(INT32_MAX),
+ httpEquivIndex(INT32_MAX),
+ contentTypeIndex(INT32_MAX),
+ stateSave(DATA),
+ strBufLen(0),
+ strBuf(jArray<char16_t,int32_t>::newJArray(36)),
+ content(nullptr),
+ charset(nullptr),
+ httpEquivState(HTTP_EQUIV_NOT_SEEN),
+ treeBuilder(tb),
+ mEncoding(nullptr)
{
MOZ_COUNT_CTOR(nsHtml5MetaScanner);
}
nsHtml5MetaScanner::~nsHtml5MetaScanner()
{
MOZ_COUNT_DTOR(nsHtml5MetaScanner);
@@ -756,21 +756,18 @@ nsHtml5MetaScanner::handleAttributeValue
if (contentIndex == CONTENT.length && !content) {
content = nsHtml5Portability::newStringFromBuffer(strBuf, 0, strBufLen, treeBuilder);
return;
}
if (charsetIndex == CHARSET.length && !charset) {
charset = nsHtml5Portability::newStringFromBuffer(strBuf, 0, strBufLen, treeBuilder);
return;
}
- if (httpEquivIndex == HTTP_EQUIV.length &&
- httpEquivState == HTTP_EQUIV_NOT_SEEN) {
- httpEquivState = (contentTypeIndex == CONTENT_TYPE.length)
- ? HTTP_EQUIV_CONTENT_TYPE
- : HTTP_EQUIV_OTHER;
+ if (httpEquivIndex == HTTP_EQUIV.length && httpEquivState == HTTP_EQUIV_NOT_SEEN) {
+ httpEquivState = (contentTypeIndex == CONTENT_TYPE.length) ? HTTP_EQUIV_CONTENT_TYPE : HTTP_EQUIV_OTHER;
return;
}
}
bool
nsHtml5MetaScanner::handleTag()
{
bool stop = handleTagInner();
@@ -784,18 +781,17 @@ nsHtml5MetaScanner::handleTag()
bool
nsHtml5MetaScanner::handleTagInner()
{
if (!!charset && tryCharset(charset)) {
return true;
}
if (!!content && httpEquivState == HTTP_EQUIV_CONTENT_TYPE) {
- nsHtml5String extract =
- nsHtml5TreeBuilder::extractCharsetFromContent(content, treeBuilder);
+ nsHtml5String extract = nsHtml5TreeBuilder::extractCharsetFromContent(content, treeBuilder);
if (!extract) {
return false;
}
bool success = tryCharset(extract);
extract.Release();
return success;
}
return false;
--- a/parser/html/nsHtml5NamedCharacters.cpp
+++ b/parser/html/nsHtml5NamedCharacters.cpp
@@ -19,18 +19,18 @@
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE.
*/
#define nsHtml5NamedCharacters_cpp_
#include "jArray.h"
#include "nscore.h"
#include "nsDebug.h"
+#include "prlog.h"
#include "mozilla/ArrayUtils.h"
-#include "mozilla/Logging.h"
#include "nsHtml5NamedCharacters.h"
const char16_t nsHtml5NamedCharacters::VALUES[][2] = {
#define NAMED_CHARACTER_REFERENCE(N, CHARS, LEN, FLAG, VALUE) \
{ VALUE },
#include "nsHtml5NamedCharactersInclude.h"
#undef NAMED_CHARACTER_REFERENCE
@@ -94,17 +94,18 @@ enum NamePositions {
NAME_##N##_DUMMY, /* automatically one higher than previous */ \
NAME_##N##_START = NAME_##N##_DUMMY - 1, \
NAME_##N##_END = NAME_##N##_START + LEN + FLAG,
#include "nsHtml5NamedCharactersInclude.h"
#undef NAMED_CHARACTER_REFERENCE
DUMMY_FINAL_NAME_VALUE
};
-static_assert(MOZ_ARRAY_LENGTH(ALL_NAMES) < 0x10000, "Start positions should fit in 16 bits");
+/* check that the start positions will fit in 16 bits */
+PR_STATIC_ASSERT(MOZ_ARRAY_LENGTH(ALL_NAMES) < 0x10000);
const nsHtml5CharacterName nsHtml5NamedCharacters::NAMES[] = {
#ifdef DEBUG
#define NAMED_CHARACTER_REFERENCE(N, CHARS, LEN, FLAG, VALUE) \
{ NAME_##N##_START, LEN, N },
#else
#define NAMED_CHARACTER_REFERENCE(N, CHARS, LEN, FLAG, VALUE) \
{ NAME_##N##_START, LEN, },
--- a/parser/html/nsHtml5NamedCharacters.h
+++ b/parser/html/nsHtml5NamedCharacters.h
@@ -21,18 +21,18 @@
*/
#ifndef nsHtml5NamedCharacters_h
#define nsHtml5NamedCharacters_h
#include "jArray.h"
#include "nscore.h"
#include "nsDebug.h"
-#include "mozilla/Logging.h"
-#include "nsMemory.h"
+#include "prlog.h"
+#include "mozilla/ArrayUtils.h"
struct nsHtml5CharacterName {
uint16_t nameStart;
uint16_t nameLen;
#ifdef DEBUG
int32_t n;
#endif
int32_t length() const;
--- a/parser/html/nsHtml5NamedCharactersAccel.h
+++ b/parser/html/nsHtml5NamedCharactersAccel.h
@@ -7,18 +7,18 @@
*/
#ifndef nsHtml5NamedCharactersAccel_h
#define nsHtml5NamedCharactersAccel_h
#include "jArray.h"
#include "nscore.h"
#include "nsDebug.h"
-#include "mozilla/Logging.h"
-#include "nsMemory.h"
+#include "prlog.h"
+#include "mozilla/ArrayUtils.h"
class nsHtml5NamedCharactersAccel
{
public:
static const int32_t* const HILO_ACCEL[];
};
#endif // nsHtml5NamedCharactersAccel_h
--- a/parser/html/nsHtml5Portability.h
+++ b/parser/html/nsHtml5Portability.h
@@ -52,34 +52,26 @@ class nsHtml5MetaScanner;
class nsHtml5UTF16Buffer;
class nsHtml5StateSnapshot;
class nsHtml5Portability
{
public:
static nsIAtom* newLocalNameFromBuffer(char16_t* buf, int32_t offset, int32_t length, nsHtml5AtomTable* interner);
- static nsHtml5String newStringFromBuffer(char16_t* buf,
- int32_t offset,
- int32_t length,
- nsHtml5TreeBuilder* treeBuilder);
+ static nsHtml5String newStringFromBuffer(char16_t* buf, int32_t offset, int32_t length, nsHtml5TreeBuilder* treeBuilder);
static nsHtml5String newEmptyString();
static nsHtml5String newStringFromLiteral(const char* literal);
static nsHtml5String newStringFromString(nsHtml5String string);
static jArray<char16_t,int32_t> newCharArrayFromLocal(nsIAtom* local);
- static jArray<char16_t, int32_t> newCharArrayFromString(
- nsHtml5String string);
+ static jArray<char16_t,int32_t> newCharArrayFromString(nsHtml5String string);
static nsIAtom* newLocalFromLocal(nsIAtom* local, nsHtml5AtomTable* interner);
static bool localEqualsBuffer(nsIAtom* local, char16_t* buf, int32_t offset, int32_t length);
- static bool lowerCaseLiteralIsPrefixOfIgnoreAsciiCaseString(
- const char* lowerCaseLiteral,
- nsHtml5String string);
- static bool lowerCaseLiteralEqualsIgnoreAsciiCaseString(
- const char* lowerCaseLiteral,
- nsHtml5String string);
+ static bool lowerCaseLiteralIsPrefixOfIgnoreAsciiCaseString(const char* lowerCaseLiteral, nsHtml5String string);
+ static bool lowerCaseLiteralEqualsIgnoreAsciiCaseString(const char* lowerCaseLiteral, nsHtml5String string);
static bool literalEqualsString(const char* literal, nsHtml5String string);
static bool stringEqualsString(nsHtml5String one, nsHtml5String other);
static void initializeStatics();
static void releaseStatics();
};
#endif
--- a/parser/html/nsHtml5StackNode.cpp
+++ b/parser/html/nsHtml5StackNode.cpp
@@ -79,140 +79,118 @@ nsHtml5StackNode::isFosterParenting()
}
bool
nsHtml5StackNode::isHtmlIntegrationPoint()
{
return (flags & nsHtml5ElementName::HTML_INTEGRATION_POINT);
}
+
nsHtml5StackNode::nsHtml5StackNode(int32_t idxInTreeBuilder)
- : idxInTreeBuilder(idxInTreeBuilder)
- , refcount(0)
+ : idxInTreeBuilder(idxInTreeBuilder),
+ refcount(0)
{
MOZ_COUNT_CTOR(nsHtml5StackNode);
}
-void
-nsHtml5StackNode::setValues(int32_t flags,
- int32_t ns,
- nsIAtom* name,
- nsIContentHandle* node,
- nsIAtom* popName,
- nsHtml5HtmlAttributes* attributes)
+void
+nsHtml5StackNode::setValues(int32_t flags, int32_t ns, nsIAtom* name, nsIContentHandle* node, nsIAtom* popName, nsHtml5HtmlAttributes* attributes)
{
MOZ_ASSERT(isUnused());
this->flags = flags;
this->name = name;
this->popName = popName;
this->ns = ns;
this->node = node;
this->attributes = attributes;
this->refcount = 1;
}
-void
-nsHtml5StackNode::setValues(nsHtml5ElementName* elementName,
- nsIContentHandle* node)
+void
+nsHtml5StackNode::setValues(nsHtml5ElementName* elementName, nsIContentHandle* node)
{
MOZ_ASSERT(isUnused());
this->flags = elementName->getFlags();
this->name = elementName->getName();
this->popName = elementName->getName();
this->ns = kNameSpaceID_XHTML;
this->node = node;
this->attributes = nullptr;
this->refcount = 1;
- MOZ_ASSERT(elementName->isInterned(),
- "Don't use this constructor for custom elements.");
+ MOZ_ASSERT(elementName->isInterned(), "Don't use this constructor for custom elements.");
}
-void
-nsHtml5StackNode::setValues(nsHtml5ElementName* elementName,
- nsIContentHandle* node,
- nsHtml5HtmlAttributes* attributes)
+void
+nsHtml5StackNode::setValues(nsHtml5ElementName* elementName, nsIContentHandle* node, nsHtml5HtmlAttributes* attributes)
{
MOZ_ASSERT(isUnused());
this->flags = elementName->getFlags();
this->name = elementName->getName();
this->popName = elementName->getName();
this->ns = kNameSpaceID_XHTML;
this->node = node;
this->attributes = attributes;
this->refcount = 1;
- MOZ_ASSERT(elementName->isInterned(),
- "Don't use this constructor for custom elements.");
+ MOZ_ASSERT(elementName->isInterned(), "Don't use this constructor for custom elements.");
}
-void
-nsHtml5StackNode::setValues(nsHtml5ElementName* elementName,
- nsIContentHandle* node,
- nsIAtom* popName)
+void
+nsHtml5StackNode::setValues(nsHtml5ElementName* elementName, nsIContentHandle* node, nsIAtom* popName)
{
MOZ_ASSERT(isUnused());
this->flags = elementName->getFlags();
this->name = elementName->getName();
this->popName = popName;
this->ns = kNameSpaceID_XHTML;
this->node = node;
this->attributes = nullptr;
this->refcount = 1;
}
-void
-nsHtml5StackNode::setValues(nsHtml5ElementName* elementName,
- nsIAtom* popName,
- nsIContentHandle* node)
+void
+nsHtml5StackNode::setValues(nsHtml5ElementName* elementName, nsIAtom* popName, nsIContentHandle* node)
{
MOZ_ASSERT(isUnused());
this->flags = prepareSvgFlags(elementName->getFlags());
this->name = elementName->getName();
this->popName = popName;
this->ns = kNameSpaceID_SVG;
this->node = node;
this->attributes = nullptr;
this->refcount = 1;
}
-void
-nsHtml5StackNode::setValues(nsHtml5ElementName* elementName,
- nsIContentHandle* node,
- nsIAtom* popName,
- bool markAsIntegrationPoint)
+void
+nsHtml5StackNode::setValues(nsHtml5ElementName* elementName, nsIContentHandle* node, nsIAtom* popName, bool markAsIntegrationPoint)
{
MOZ_ASSERT(isUnused());
- this->flags =
- prepareMathFlags(elementName->getFlags(), markAsIntegrationPoint);
+ this->flags = prepareMathFlags(elementName->getFlags(), markAsIntegrationPoint);
this->name = elementName->getName();
this->popName = popName;
this->ns = kNameSpaceID_MathML;
this->node = node;
this->attributes = nullptr;
this->refcount = 1;
}
int32_t
nsHtml5StackNode::prepareSvgFlags(int32_t flags)
{
- flags &=
- ~(nsHtml5ElementName::FOSTER_PARENTING | nsHtml5ElementName::SCOPING |
- nsHtml5ElementName::SPECIAL | nsHtml5ElementName::OPTIONAL_END_TAG);
+ flags &= ~(nsHtml5ElementName::FOSTER_PARENTING | nsHtml5ElementName::SCOPING | nsHtml5ElementName::SPECIAL | nsHtml5ElementName::OPTIONAL_END_TAG);
if ((flags & nsHtml5ElementName::SCOPING_AS_SVG)) {
- flags |= (nsHtml5ElementName::SCOPING | nsHtml5ElementName::SPECIAL |
- nsHtml5ElementName::HTML_INTEGRATION_POINT);
+ flags |= (nsHtml5ElementName::SCOPING | nsHtml5ElementName::SPECIAL | nsHtml5ElementName::HTML_INTEGRATION_POINT);
}
return flags;
}
int32_t
nsHtml5StackNode::prepareMathFlags(int32_t flags, bool markAsIntegrationPoint)
{
- flags &=
- ~(nsHtml5ElementName::FOSTER_PARENTING | nsHtml5ElementName::SCOPING |
- nsHtml5ElementName::SPECIAL | nsHtml5ElementName::OPTIONAL_END_TAG);
+ flags &= ~(nsHtml5ElementName::FOSTER_PARENTING | nsHtml5ElementName::SCOPING | nsHtml5ElementName::SPECIAL | nsHtml5ElementName::OPTIONAL_END_TAG);
if ((flags & nsHtml5ElementName::SCOPING_AS_MATHML)) {
flags |= (nsHtml5ElementName::SCOPING | nsHtml5ElementName::SPECIAL);
}
if (markAsIntegrationPoint) {
flags |= nsHtml5ElementName::HTML_INTEGRATION_POINT;
}
return flags;
}
@@ -230,33 +208,33 @@ nsHtml5StackNode::dropAttributes()
}
void
nsHtml5StackNode::retain()
{
refcount++;
}
-void
+void
nsHtml5StackNode::release(nsHtml5TreeBuilder* owningTreeBuilder)
{
refcount--;
MOZ_ASSERT(refcount >= 0);
if (!refcount) {
delete attributes;
if (idxInTreeBuilder >= 0) {
owningTreeBuilder->notifyUnusedStackNode(idxInTreeBuilder);
} else {
MOZ_ASSERT(!owningTreeBuilder);
delete this;
}
}
}
-bool
+bool
nsHtml5StackNode::isUnused()
{
return !refcount;
}
void
nsHtml5StackNode::initializeStatics()
{
--- a/parser/html/nsHtml5StackNode.h
+++ b/parser/html/nsHtml5StackNode.h
@@ -75,37 +75,22 @@ class nsHtml5StackNode
}
int32_t getGroup();
bool isScoping();
bool isSpecial();
bool isFosterParenting();
bool isHtmlIntegrationPoint();
explicit nsHtml5StackNode(int32_t idxInTreeBuilder);
- void setValues(int32_t flags,
- int32_t ns,
- nsIAtom* name,
- nsIContentHandle* node,
- nsIAtom* popName,
- nsHtml5HtmlAttributes* attributes);
+ void setValues(int32_t flags, int32_t ns, nsIAtom* name, nsIContentHandle* node, nsIAtom* popName, nsHtml5HtmlAttributes* attributes);
void setValues(nsHtml5ElementName* elementName, nsIContentHandle* node);
- void setValues(nsHtml5ElementName* elementName,
- nsIContentHandle* node,
- nsHtml5HtmlAttributes* attributes);
- void setValues(nsHtml5ElementName* elementName,
- nsIContentHandle* node,
- nsIAtom* popName);
- void setValues(nsHtml5ElementName* elementName,
- nsIAtom* popName,
- nsIContentHandle* node);
- void setValues(nsHtml5ElementName* elementName,
- nsIContentHandle* node,
- nsIAtom* popName,
- bool markAsIntegrationPoint);
-
+ void setValues(nsHtml5ElementName* elementName, nsIContentHandle* node, nsHtml5HtmlAttributes* attributes);
+ void setValues(nsHtml5ElementName* elementName, nsIContentHandle* node, nsIAtom* popName);
+ void setValues(nsHtml5ElementName* elementName, nsIAtom* popName, nsIContentHandle* node);
+ void setValues(nsHtml5ElementName* elementName, nsIContentHandle* node, nsIAtom* popName, bool markAsIntegrationPoint);
private:
static int32_t prepareSvgFlags(int32_t flags);
static int32_t prepareMathFlags(int32_t flags, bool markAsIntegrationPoint);
public:
~nsHtml5StackNode();
void dropAttributes();
void retain();
void release(nsHtml5TreeBuilder* owningTreeBuilder);
--- a/parser/html/nsHtml5Tokenizer.cpp
+++ b/parser/html/nsHtml5Tokenizer.cpp
@@ -82,48 +82,45 @@ static char16_t const IFRAME_ARR_DATA[]
staticJArray<char16_t,int32_t> nsHtml5Tokenizer::IFRAME_ARR = { IFRAME_ARR_DATA, MOZ_ARRAY_LENGTH(IFRAME_ARR_DATA) };
static char16_t const NOEMBED_ARR_DATA[] = { 'n', 'o', 'e', 'm', 'b', 'e', 'd' };
staticJArray<char16_t,int32_t> nsHtml5Tokenizer::NOEMBED_ARR = { NOEMBED_ARR_DATA, MOZ_ARRAY_LENGTH(NOEMBED_ARR_DATA) };
static char16_t const NOSCRIPT_ARR_DATA[] = { 'n', 'o', 's', 'c', 'r', 'i', 'p', 't' };
staticJArray<char16_t,int32_t> nsHtml5Tokenizer::NOSCRIPT_ARR = { NOSCRIPT_ARR_DATA, MOZ_ARRAY_LENGTH(NOSCRIPT_ARR_DATA) };
static char16_t const NOFRAMES_ARR_DATA[] = { 'n', 'o', 'f', 'r', 'a', 'm', 'e', 's' };
staticJArray<char16_t,int32_t> nsHtml5Tokenizer::NOFRAMES_ARR = { NOFRAMES_ARR_DATA, MOZ_ARRAY_LENGTH(NOFRAMES_ARR_DATA) };
-nsHtml5Tokenizer::nsHtml5Tokenizer(nsHtml5TreeBuilder* tokenHandler,
- bool viewingXmlSource)
- : tokenHandler(tokenHandler)
- , encodingDeclarationHandler(nullptr)
- , charRefBuf(jArray<char16_t, int32_t>::newJArray(32))
- , bmpChar(jArray<char16_t, int32_t>::newJArray(1))
- , astralChar(jArray<char16_t, int32_t>::newJArray(2))
- , containsHyphen(false)
- , tagName(nullptr)
- , nonInternedTagName(new nsHtml5ElementName())
- , attributeName(nullptr)
- , nonInternedAttributeName(new nsHtml5AttributeName())
- , doctypeName(nullptr)
- , publicIdentifier(nullptr)
- , systemIdentifier(nullptr)
- , attributes(tokenHandler->HasBuilder() ? new nsHtml5HtmlAttributes(0)
- : nullptr)
- , newAttributesEachTime(!tokenHandler->HasBuilder())
- , viewingXmlSource(viewingXmlSource)
+nsHtml5Tokenizer::nsHtml5Tokenizer(nsHtml5TreeBuilder* tokenHandler, bool viewingXmlSource)
+ : tokenHandler(tokenHandler),
+ encodingDeclarationHandler(nullptr),
+ charRefBuf(jArray<char16_t,int32_t>::newJArray(32)),
+ bmpChar(jArray<char16_t,int32_t>::newJArray(1)),
+ astralChar(jArray<char16_t,int32_t>::newJArray(2)),
+ containsHyphen(false),
+ tagName(nullptr),
+ nonInternedTagName(new nsHtml5ElementName()),
+ attributeName(nullptr),
+ nonInternedAttributeName(new nsHtml5AttributeName()),
+ doctypeName(nullptr),
+ publicIdentifier(nullptr),
+ systemIdentifier(nullptr),
+ attributes(tokenHandler->HasBuilder() ? new nsHtml5HtmlAttributes(0) : nullptr),
+ newAttributesEachTime(!tokenHandler->HasBuilder()),
+ viewingXmlSource(viewingXmlSource)
{
MOZ_COUNT_CTOR(nsHtml5Tokenizer);
}
void
nsHtml5Tokenizer::setInterner(nsHtml5AtomTable* interner)
{
this->interner = interner;
}
-void
-nsHtml5Tokenizer::initLocation(nsHtml5String newPublicId,
- nsHtml5String newSystemId)
+void
+nsHtml5Tokenizer::initLocation(nsHtml5String newPublicId, nsHtml5String newSystemId)
{
this->systemId = newSystemId;
this->publicId = newPublicId;
}
bool
nsHtml5Tokenizer::isViewingXmlSource()
{
@@ -223,21 +220,20 @@ nsHtml5Tokenizer::emitOrAppendCharRefBuf
} else {
if (charRefBufLen > 0) {
tokenHandler->characters(charRefBuf, 0, charRefBufLen);
charRefBufLen = 0;
}
}
}
-nsHtml5String
+nsHtml5String
nsHtml5Tokenizer::strBufToString()
{
- nsHtml5String str =
- nsHtml5Portability::newStringFromBuffer(strBuf, 0, strBufLen, tokenHandler);
+ nsHtml5String str = nsHtml5Portability::newStringFromBuffer(strBuf, 0, strBufLen, tokenHandler);
clearStrBufAfterUse();
return str;
}
void
nsHtml5Tokenizer::strBufToDoctypeName()
{
doctypeName = nsHtml5Portability::newLocalNameFromBuffer(strBuf, 0, strBufLen, interner);
@@ -284,32 +280,26 @@ nsHtml5Tokenizer::flushChars(char16_t* b
cstart = INT32_MAX;
}
void
nsHtml5Tokenizer::strBufToElementNameString()
{
if (containsHyphen) {
nsIAtom* annotationName = nsHtml5ElementName::ELT_ANNOTATION_XML->getName();
- if (nsHtml5Portability::localEqualsBuffer(
- annotationName, strBuf, 0, strBufLen)) {
+ if (nsHtml5Portability::localEqualsBuffer(annotationName, strBuf, 0, strBufLen)) {
tagName = nsHtml5ElementName::ELT_ANNOTATION_XML;
} else {
- nonInternedTagName->setNameForNonInterned(
- nsHtml5Portability::newLocalNameFromBuffer(
- strBuf, 0, strBufLen, interner));
+ nonInternedTagName->setNameForNonInterned(nsHtml5Portability::newLocalNameFromBuffer(strBuf, 0, strBufLen, interner));
tagName = nonInternedTagName;
}
} else {
- tagName =
- nsHtml5ElementName::elementNameByBuffer(strBuf, 0, strBufLen, interner);
+ tagName = nsHtml5ElementName::elementNameByBuffer(strBuf, 0, strBufLen, interner);
if (!tagName) {
- nonInternedTagName->setNameForNonInterned(
- nsHtml5Portability::newLocalNameFromBuffer(
- strBuf, 0, strBufLen, interner));
+ nonInternedTagName->setNameForNonInterned(nsHtml5Portability::newLocalNameFromBuffer(strBuf, 0, strBufLen, interner));
tagName = nonInternedTagName;
}
}
containsHyphen = false;
clearStrBufAfterUse();
}
int32_t
@@ -346,19 +336,17 @@ nsHtml5Tokenizer::emitCurrentTagToken(bo
return stateSave;
}
void
nsHtml5Tokenizer::attributeNameComplete()
{
attributeName = nsHtml5AttributeName::nameByBuffer(strBuf, 0, strBufLen, interner);
if (!attributeName) {
- nonInternedAttributeName->setNameForNonInterned(
- nsHtml5Portability::newLocalNameFromBuffer(
- strBuf, 0, strBufLen, interner));
+ nonInternedAttributeName->setNameForNonInterned(nsHtml5Portability::newLocalNameFromBuffer(strBuf, 0, strBufLen, interner));
attributeName = nonInternedAttributeName;
}
clearStrBufAfterUse();
if (!attributes) {
attributes = new nsHtml5HtmlAttributes(0);
}
if (attributes->contains(attributeName)) {
errDuplicateAttribute();
@@ -470,27 +458,22 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
}
switch(c) {
case '&': {
flushChars(buf, pos);
MOZ_ASSERT(!charRefBufLen, "charRefBufLen not reset after previous use!");
appendCharRefBuf(c);
setAdditionalAndRememberAmpersandLocation('\0');
returnState = state;
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::CONSUME_CHARACTER_REFERENCE,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::CONSUME_CHARACTER_REFERENCE, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '<': {
flushChars(buf, pos);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::TAG_OPEN, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::TAG_OPEN, reconsume, pos);
NS_HTML5_BREAK(dataloop);
}
case '\0': {
emitReplacementCharacter(buf, pos);
continue;
}
case '\r': {
emitCarriageReturn(buf, pos);
@@ -512,118 +495,97 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
if (c >= 'A' && c <= 'Z') {
endTag = false;
clearStrBufBeforeUse();
appendStrBuf((char16_t) (c + 0x20));
containsHyphen = false;
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::TAG_NAME, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::TAG_NAME, reconsume, pos);
NS_HTML5_BREAK(tagopenloop);
} else if (c >= 'a' && c <= 'z') {
endTag = false;
clearStrBufBeforeUse();
appendStrBuf(c);
containsHyphen = false;
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::TAG_NAME, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::TAG_NAME, reconsume, pos);
NS_HTML5_BREAK(tagopenloop);
}
switch(c) {
case '!': {
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::MARKUP_DECLARATION_OPEN,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::MARKUP_DECLARATION_OPEN, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '/': {
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::CLOSE_TAG_OPEN, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::CLOSE_TAG_OPEN, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\?': {
if (viewingXmlSource) {
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::PROCESSING_INSTRUCTION,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::PROCESSING_INSTRUCTION, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
if (P::reportErrors) {
errProcessingInstruction();
}
clearStrBufBeforeUse();
appendStrBuf(c);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::BOGUS_COMMENT, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BOGUS_COMMENT, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '>': {
if (P::reportErrors) {
errLtGt();
}
tokenHandler->characters(nsHtml5Tokenizer::LT_GT, 0, 2);
cstart = pos + 1;
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
default: {
if (P::reportErrors) {
errBadCharAfterLt(c);
}
tokenHandler->characters(nsHtml5Tokenizer::LT_GT, 0, 1);
cstart = pos;
reconsume = true;
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
tagopenloop_end: ;
}
case TAG_NAME: {
for (; ; ) {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '\r': {
silentCarriageReturn();
strBufToElementNameString();
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::BEFORE_ATTRIBUTE_NAME,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BEFORE_ATTRIBUTE_NAME, reconsume, pos);
NS_HTML5_BREAK(stateloop);
}
case '\n': {
silentLineFeed();
}
case ' ':
case '\t':
case '\f': {
strBufToElementNameString();
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::BEFORE_ATTRIBUTE_NAME,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BEFORE_ATTRIBUTE_NAME, reconsume, pos);
NS_HTML5_BREAK(tagnameloop);
}
case '/': {
strBufToElementNameString();
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::SELF_CLOSING_START_TAG,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SELF_CLOSING_START_TAG, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '>': {
strBufToElementNameString();
state = P::transition(mViewSource, emitCurrentTagToken(false, pos), reconsume, pos);
if (shouldSuspend) {
NS_HTML5_BREAK(stateloop);
}
@@ -664,20 +626,17 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
silentLineFeed();
}
case ' ':
case '\t':
case '\f': {
continue;
}
case '/': {
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::SELF_CLOSING_START_TAG,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SELF_CLOSING_START_TAG, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '>': {
state = P::transition(mViewSource, emitCurrentTagToken(false, pos), reconsume, pos);
if (shouldSuspend) {
NS_HTML5_BREAK(stateloop);
}
NS_HTML5_CONTINUE(stateloop);
@@ -695,68 +654,55 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
}
default: {
if (c >= 'A' && c <= 'Z') {
c += 0x20;
}
attributeLine = line;
clearStrBufBeforeUse();
appendStrBuf(c);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::ATTRIBUTE_NAME, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::ATTRIBUTE_NAME, reconsume, pos);
NS_HTML5_BREAK(beforeattributenameloop);
}
}
}
beforeattributenameloop_end: ;
}
case ATTRIBUTE_NAME: {
for (; ; ) {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '\r': {
silentCarriageReturn();
attributeNameComplete();
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::AFTER_ATTRIBUTE_NAME,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::AFTER_ATTRIBUTE_NAME, reconsume, pos);
NS_HTML5_BREAK(stateloop);
}
case '\n': {
silentLineFeed();
}
case ' ':
case '\t':
case '\f': {
attributeNameComplete();
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::AFTER_ATTRIBUTE_NAME,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::AFTER_ATTRIBUTE_NAME, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '/': {
attributeNameComplete();
addAttributeWithoutValue();
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::SELF_CLOSING_START_TAG,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SELF_CLOSING_START_TAG, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '=': {
attributeNameComplete();
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::BEFORE_ATTRIBUTE_VALUE,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BEFORE_ATTRIBUTE_VALUE, reconsume, pos);
NS_HTML5_BREAK(attributenameloop);
}
case '>': {
attributeNameComplete();
addAttributeWithoutValue();
state = P::transition(mViewSource, emitCurrentTagToken(false, pos), reconsume, pos);
if (shouldSuspend) {
NS_HTML5_BREAK(stateloop);
@@ -801,42 +747,31 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
case ' ':
case '\t':
case '\f': {
continue;
}
case '\"': {
attributeLine = line;
clearStrBufBeforeUse();
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::ATTRIBUTE_VALUE_DOUBLE_QUOTED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::ATTRIBUTE_VALUE_DOUBLE_QUOTED, reconsume, pos);
NS_HTML5_BREAK(beforeattributevalueloop);
}
case '&': {
attributeLine = line;
clearStrBufBeforeUse();
reconsume = true;
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::ATTRIBUTE_VALUE_UNQUOTED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::ATTRIBUTE_VALUE_UNQUOTED, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\'': {
attributeLine = line;
clearStrBufBeforeUse();
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::ATTRIBUTE_VALUE_SINGLE_QUOTED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::ATTRIBUTE_VALUE_SINGLE_QUOTED, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '>': {
if (P::reportErrors) {
errAttributeValueMissing();
}
addAttributeWithoutValue();
state = P::transition(mViewSource, emitCurrentTagToken(false, pos), reconsume, pos);
@@ -854,20 +789,17 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
if (P::reportErrors) {
errLtOrEqualsOrGraveInUnquotedAttributeOrNull(c);
}
}
default: {
attributeLine = line;
clearStrBufBeforeUse();
appendStrBuf(c);
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::ATTRIBUTE_VALUE_UNQUOTED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::ATTRIBUTE_VALUE_UNQUOTED, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
beforeattributevalueloop_end: ;
}
case ATTRIBUTE_VALUE_DOUBLE_QUOTED: {
@@ -878,33 +810,25 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
}
switch(c) {
case '\"': {
addAttributeWithValue();
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::AFTER_ATTRIBUTE_VALUE_QUOTED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::AFTER_ATTRIBUTE_VALUE_QUOTED, reconsume, pos);
NS_HTML5_BREAK(attributevaluedoublequotedloop);
}
case '&': {
MOZ_ASSERT(!charRefBufLen, "charRefBufLen not reset after previous use!");
appendCharRefBuf(c);
setAdditionalAndRememberAmpersandLocation('\"');
returnState = state;
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::CONSUME_CHARACTER_REFERENCE,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::CONSUME_CHARACTER_REFERENCE, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\r': {
appendStrBufCarriageReturn();
NS_HTML5_BREAK(stateloop);
}
case '\n': {
appendStrBufLineFeed();
@@ -925,57 +849,45 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
for (; ; ) {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '\r': {
silentCarriageReturn();
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::BEFORE_ATTRIBUTE_NAME,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BEFORE_ATTRIBUTE_NAME, reconsume, pos);
NS_HTML5_BREAK(stateloop);
}
case '\n': {
silentLineFeed();
}
case ' ':
case '\t':
case '\f': {
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::BEFORE_ATTRIBUTE_NAME,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BEFORE_ATTRIBUTE_NAME, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '/': {
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::SELF_CLOSING_START_TAG,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SELF_CLOSING_START_TAG, reconsume, pos);
NS_HTML5_BREAK(afterattributevaluequotedloop);
}
case '>': {
state = P::transition(mViewSource, emitCurrentTagToken(false, pos), reconsume, pos);
if (shouldSuspend) {
NS_HTML5_BREAK(stateloop);
}
NS_HTML5_CONTINUE(stateloop);
}
default: {
if (P::reportErrors) {
errNoSpaceBetweenAttributes();
}
reconsume = true;
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::BEFORE_ATTRIBUTE_NAME,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BEFORE_ATTRIBUTE_NAME, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
afterattributevaluequotedloop_end: ;
}
case SELF_CLOSING_START_TAG: {
if (++pos == endPos) {
@@ -990,20 +902,17 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
}
NS_HTML5_CONTINUE(stateloop);
}
default: {
if (P::reportErrors) {
errSlashNotFollowedByGt();
}
reconsume = true;
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::BEFORE_ATTRIBUTE_NAME,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BEFORE_ATTRIBUTE_NAME, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
case ATTRIBUTE_VALUE_UNQUOTED: {
for (; ; ) {
if (reconsume) {
reconsume = false;
@@ -1012,45 +921,35 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
}
switch(c) {
case '\r': {
silentCarriageReturn();
addAttributeWithValue();
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::BEFORE_ATTRIBUTE_NAME,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BEFORE_ATTRIBUTE_NAME, reconsume, pos);
NS_HTML5_BREAK(stateloop);
}
case '\n': {
silentLineFeed();
}
case ' ':
case '\t':
case '\f': {
addAttributeWithValue();
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::BEFORE_ATTRIBUTE_NAME,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BEFORE_ATTRIBUTE_NAME, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '&': {
MOZ_ASSERT(!charRefBufLen, "charRefBufLen not reset after previous use!");
appendCharRefBuf(c);
setAdditionalAndRememberAmpersandLocation('>');
returnState = state;
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::CONSUME_CHARACTER_REFERENCE,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::CONSUME_CHARACTER_REFERENCE, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '>': {
addAttributeWithValue();
state = P::transition(mViewSource, emitCurrentTagToken(false, pos), reconsume, pos);
if (shouldSuspend) {
NS_HTML5_BREAK(stateloop);
}
@@ -1092,27 +991,21 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
}
case ' ':
case '\t':
case '\f': {
continue;
}
case '/': {
addAttributeWithoutValue();
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::SELF_CLOSING_START_TAG,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SELF_CLOSING_START_TAG, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '=': {
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::BEFORE_ATTRIBUTE_VALUE,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BEFORE_ATTRIBUTE_VALUE, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '>': {
addAttributeWithoutValue();
state = P::transition(mViewSource, emitCurrentTagToken(false, pos), reconsume, pos);
if (shouldSuspend) {
NS_HTML5_BREAK(stateloop);
}
@@ -1130,68 +1023,59 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
}
default: {
addAttributeWithoutValue();
if (c >= 'A' && c <= 'Z') {
c += 0x20;
}
clearStrBufBeforeUse();
appendStrBuf(c);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::ATTRIBUTE_NAME, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::ATTRIBUTE_NAME, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
}
case MARKUP_DECLARATION_OPEN: {
for (; ; ) {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '-': {
clearStrBufBeforeUse();
appendStrBuf(c);
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::MARKUP_DECLARATION_HYPHEN,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::MARKUP_DECLARATION_HYPHEN, reconsume, pos);
NS_HTML5_BREAK(markupdeclarationopenloop);
}
case 'd':
case 'D': {
clearStrBufBeforeUse();
appendStrBuf(c);
index = 0;
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::MARKUP_DECLARATION_OCTYPE,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::MARKUP_DECLARATION_OCTYPE, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '[': {
if (tokenHandler->cdataSectionAllowed()) {
clearStrBufBeforeUse();
appendStrBuf(c);
index = 0;
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::CDATA_START, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::CDATA_START, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
default: {
if (P::reportErrors) {
errBogusComment();
}
clearStrBufBeforeUse();
reconsume = true;
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::BOGUS_COMMENT, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BOGUS_COMMENT, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
markupdeclarationopenloop_end: ;
}
case MARKUP_DECLARATION_HYPHEN: {
for (; ; ) {
@@ -1200,95 +1084,83 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
}
c = checkChar(buf, pos);
switch(c) {
case '\0': {
NS_HTML5_BREAK(stateloop);
}
case '-': {
clearStrBufAfterOneHyphen();
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::COMMENT_START, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::COMMENT_START, reconsume, pos);
NS_HTML5_BREAK(markupdeclarationhyphenloop);
}
default: {
if (P::reportErrors) {
errBogusComment();
}
reconsume = true;
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::BOGUS_COMMENT, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BOGUS_COMMENT, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
markupdeclarationhyphenloop_end: ;
}
case COMMENT_START: {
for (; ; ) {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '-': {
appendStrBuf(c);
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::COMMENT_START_DASH,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::COMMENT_START_DASH, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '>': {
if (P::reportErrors) {
errPrematureEndOfComment();
}
emitComment(0, pos);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\r': {
appendStrBufCarriageReturn();
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::COMMENT, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::COMMENT, reconsume, pos);
NS_HTML5_BREAK(stateloop);
}
case '\n': {
appendStrBufLineFeed();
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::COMMENT, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::COMMENT, reconsume, pos);
NS_HTML5_BREAK(commentstartloop);
}
case '\0': {
c = 0xfffd;
}
default: {
appendStrBuf(c);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::COMMENT, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::COMMENT, reconsume, pos);
NS_HTML5_BREAK(commentstartloop);
}
}
}
commentstartloop_end: ;
}
case COMMENT: {
for (; ; ) {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '-': {
appendStrBuf(c);
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::COMMENT_END_DASH,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::COMMENT_END_DASH, reconsume, pos);
NS_HTML5_BREAK(commentloop);
}
case '\r': {
appendStrBufCarriageReturn();
NS_HTML5_BREAK(stateloop);
}
case '\n': {
appendStrBufLineFeed();
@@ -1309,179 +1181,158 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
for (; ; ) {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '-': {
appendStrBuf(c);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::COMMENT_END, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::COMMENT_END, reconsume, pos);
NS_HTML5_BREAK(commentenddashloop);
}
case '\r': {
appendStrBufCarriageReturn();
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::COMMENT, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::COMMENT, reconsume, pos);
NS_HTML5_BREAK(stateloop);
}
case '\n': {
appendStrBufLineFeed();
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::COMMENT, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::COMMENT, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\0': {
c = 0xfffd;
}
default: {
appendStrBuf(c);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::COMMENT, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::COMMENT, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
commentenddashloop_end: ;
}
case COMMENT_END: {
for (; ; ) {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '>': {
emitComment(2, pos);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '-': {
adjustDoubleHyphenAndAppendToStrBufAndErr(c);
continue;
}
case '\r': {
adjustDoubleHyphenAndAppendToStrBufCarriageReturn();
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::COMMENT, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::COMMENT, reconsume, pos);
NS_HTML5_BREAK(stateloop);
}
case '\n': {
adjustDoubleHyphenAndAppendToStrBufLineFeed();
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::COMMENT, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::COMMENT, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '!': {
if (P::reportErrors) {
errHyphenHyphenBang();
}
appendStrBuf(c);
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::COMMENT_END_BANG,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::COMMENT_END_BANG, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\0': {
c = 0xfffd;
}
default: {
adjustDoubleHyphenAndAppendToStrBufAndErr(c);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::COMMENT, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::COMMENT, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
}
case COMMENT_END_BANG: {
for (; ; ) {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '>': {
emitComment(3, pos);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '-': {
appendStrBuf(c);
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::COMMENT_END_DASH,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::COMMENT_END_DASH, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\r': {
appendStrBufCarriageReturn();
NS_HTML5_BREAK(stateloop);
}
case '\n': {
appendStrBufLineFeed();
continue;
}
case '\0': {
c = 0xfffd;
}
default: {
appendStrBuf(c);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::COMMENT, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::COMMENT, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
}
case COMMENT_START_DASH: {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '-': {
appendStrBuf(c);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::COMMENT_END, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::COMMENT_END, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '>': {
if (P::reportErrors) {
errPrematureEndOfComment();
}
emitComment(1, pos);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\r': {
appendStrBufCarriageReturn();
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::COMMENT, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::COMMENT, reconsume, pos);
NS_HTML5_BREAK(stateloop);
}
case '\n': {
appendStrBufLineFeed();
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::COMMENT, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::COMMENT, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\0': {
c = 0xfffd;
}
default: {
appendStrBuf(c);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::COMMENT, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::COMMENT, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
case CDATA_START: {
for (; ; ) {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
@@ -1490,28 +1341,26 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
if (index < 6) {
if (c == nsHtml5Tokenizer::CDATA_LSQB[index]) {
appendStrBuf(c);
} else {
if (P::reportErrors) {
errBogusComment();
}
reconsume = true;
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::BOGUS_COMMENT, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BOGUS_COMMENT, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
index++;
continue;
} else {
clearStrBufAfterUse();
cstart = pos;
reconsume = true;
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::CDATA_SECTION, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::CDATA_SECTION, reconsume, pos);
break;
}
}
}
case CDATA_SECTION: {
for (; ; ) {
if (reconsume) {
reconsume = false;
@@ -1519,18 +1368,17 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
}
switch(c) {
case ']': {
flushChars(buf, pos);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::CDATA_RSQB, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::CDATA_RSQB, reconsume, pos);
NS_HTML5_BREAK(cdatasectionloop);
}
case '\0': {
emitReplacementCharacter(buf, pos);
continue;
}
case '\r': {
emitCarriageReturn(buf, pos);
@@ -1549,26 +1397,24 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
case CDATA_RSQB: {
for (; ; ) {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case ']': {
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::CDATA_RSQB_RSQB, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::CDATA_RSQB_RSQB, reconsume, pos);
NS_HTML5_BREAK(cdatarsqb);
}
default: {
tokenHandler->characters(nsHtml5Tokenizer::RSQB_RSQB, 0, 1);
cstart = pos;
reconsume = true;
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::CDATA_SECTION, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::CDATA_SECTION, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
cdatarsqb_end: ;
}
case CDATA_RSQB_RSQB: {
for (; ; ) {
@@ -1578,26 +1424,24 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
c = checkChar(buf, pos);
switch(c) {
case ']': {
tokenHandler->characters(nsHtml5Tokenizer::RSQB_RSQB, 0, 1);
continue;
}
case '>': {
cstart = pos + 1;
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
default: {
tokenHandler->characters(nsHtml5Tokenizer::RSQB_RSQB, 0, 2);
cstart = pos;
reconsume = true;
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::CDATA_SECTION, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::CDATA_SECTION, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
}
case ATTRIBUTE_VALUE_SINGLE_QUOTED: {
for (; ; ) {
@@ -1607,33 +1451,25 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
}
switch(c) {
case '\'': {
addAttributeWithValue();
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::AFTER_ATTRIBUTE_VALUE_QUOTED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::AFTER_ATTRIBUTE_VALUE_QUOTED, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '&': {
MOZ_ASSERT(!charRefBufLen, "charRefBufLen not reset after previous use!");
appendCharRefBuf(c);
setAdditionalAndRememberAmpersandLocation('\'');
returnState = state;
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::CONSUME_CHARACTER_REFERENCE,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::CONSUME_CHARACTER_REFERENCE, reconsume, pos);
NS_HTML5_BREAK(attributevaluesinglequotedloop);
}
case '\r': {
appendStrBufCarriageReturn();
NS_HTML5_BREAK(stateloop);
}
case '\n': {
appendStrBufLineFeed();
@@ -1671,18 +1507,17 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
cstart = pos;
}
reconsume = true;
state = P::transition(mViewSource, returnState, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '#': {
appendCharRefBuf('#');
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::CONSUME_NCR, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::CONSUME_NCR, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
default: {
if (c == additional) {
emitOrAppendCharRefBuf(returnState);
reconsume = true;
state = P::transition(mViewSource, returnState, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
@@ -1699,21 +1534,17 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
if (!(returnState & DATA_AND_RCDATA_MASK)) {
cstart = pos;
}
reconsume = true;
state = P::transition(mViewSource, returnState, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
appendCharRefBuf(c);
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::CHARACTER_REFERENCE_HILO_LOOKUP,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::CHARACTER_REFERENCE_HILO_LOOKUP, reconsume, pos);
}
}
}
case CHARACTER_REFERENCE_HILO_LOOKUP: {
{
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
@@ -1741,20 +1572,17 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
NS_HTML5_CONTINUE(stateloop);
}
appendCharRefBuf(c);
lo = hilo & 0xFFFF;
hi = hilo >> 16;
entCol = -1;
candidate = -1;
charRefBufMark = 0;
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::CHARACTER_REFERENCE_TAIL,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::CHARACTER_REFERENCE_TAIL, reconsume, pos);
}
}
case CHARACTER_REFERENCE_TAIL: {
for (; ; ) {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
@@ -1801,16 +1629,17 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
charRefBufMark = charRefBufLen;
}
NS_HTML5_BREAK(outer);
}
if (hi < lo) {
NS_HTML5_BREAK(outer);
}
appendCharRefBuf(c);
+ continue;
}
outer_end: ;
if (candidate == -1) {
if (P::reportErrors) {
errNoNamedCharacterMatch();
}
emitOrAppendCharRefBuf(returnState);
if (!(returnState & DATA_AND_RCDATA_MASK)) {
@@ -1879,24 +1708,22 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
}
c = checkChar(buf, pos);
value = 0;
seenDigits = false;
switch(c) {
case 'x':
case 'X': {
appendCharRefBuf(c);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::HEX_NCR_LOOP, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::HEX_NCR_LOOP, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
default: {
reconsume = true;
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DECIMAL_NRC_LOOP, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DECIMAL_NRC_LOOP, reconsume, pos);
}
}
}
case DECIMAL_NRC_LOOP: {
for (; ; ) {
if (reconsume) {
reconsume = false;
} else {
@@ -1913,20 +1740,17 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
value += c - '0';
}
continue;
} else if (c == ';') {
if (seenDigits) {
if (!(returnState & DATA_AND_RCDATA_MASK)) {
cstart = pos + 1;
}
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::HANDLE_NCR_VALUE,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::HANDLE_NCR_VALUE, reconsume, pos);
NS_HTML5_BREAK(decimalloop);
} else {
if (P::reportErrors) {
errNoDigitsInNCR();
}
appendCharRefBuf(';');
emitOrAppendCharRefBuf(returnState);
if (!(returnState & DATA_AND_RCDATA_MASK)) {
@@ -1950,20 +1774,17 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
} else {
if (P::reportErrors) {
errCharRefLacksSemicolon();
}
if (!(returnState & DATA_AND_RCDATA_MASK)) {
cstart = pos;
}
reconsume = true;
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::HANDLE_NCR_VALUE,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::HANDLE_NCR_VALUE, reconsume, pos);
NS_HTML5_BREAK(decimalloop);
}
}
}
decimalloop_end: ;
}
case HANDLE_NCR_VALUE: {
charRefBufLen = 0;
@@ -1999,20 +1820,17 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
value += c - 'a' + 10;
}
continue;
} else if (c == ';') {
if (seenDigits) {
if (!(returnState & DATA_AND_RCDATA_MASK)) {
cstart = pos + 1;
}
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::HANDLE_NCR_VALUE,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::HANDLE_NCR_VALUE, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
} else {
if (P::reportErrors) {
errNoDigitsInNCR();
}
appendCharRefBuf(';');
emitOrAppendCharRefBuf(returnState);
if (!(returnState & DATA_AND_RCDATA_MASK)) {
@@ -2036,20 +1854,17 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
} else {
if (P::reportErrors) {
errCharRefLacksSemicolon();
}
if (!(returnState & DATA_AND_RCDATA_MASK)) {
cstart = pos;
}
reconsume = true;
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::HANDLE_NCR_VALUE,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::HANDLE_NCR_VALUE, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
}
case PLAINTEXT: {
for (; ; ) {
if (reconsume) {
@@ -2085,65 +1900,60 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
}
c = checkChar(buf, pos);
switch(c) {
case '>': {
if (P::reportErrors) {
errLtSlashGt();
}
cstart = pos + 1;
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\r': {
silentCarriageReturn();
if (P::reportErrors) {
errGarbageAfterLtSlash();
}
clearStrBufBeforeUse();
appendStrBuf('\n');
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::BOGUS_COMMENT, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BOGUS_COMMENT, reconsume, pos);
NS_HTML5_BREAK(stateloop);
}
case '\n': {
silentLineFeed();
if (P::reportErrors) {
errGarbageAfterLtSlash();
}
clearStrBufBeforeUse();
appendStrBuf(c);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::BOGUS_COMMENT, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BOGUS_COMMENT, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\0': {
c = 0xfffd;
}
default: {
if (c >= 'A' && c <= 'Z') {
c += 0x20;
}
if (c >= 'a' && c <= 'z') {
endTag = true;
clearStrBufBeforeUse();
appendStrBuf(c);
containsHyphen = false;
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::TAG_NAME, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::TAG_NAME, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
} else {
if (P::reportErrors) {
errGarbageAfterLtSlash();
}
clearStrBufBeforeUse();
appendStrBuf(c);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::BOGUS_COMMENT, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BOGUS_COMMENT, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
}
case RCDATA: {
for (; ; ) {
if (reconsume) {
@@ -2156,31 +1966,23 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
}
switch(c) {
case '&': {
flushChars(buf, pos);
MOZ_ASSERT(!charRefBufLen, "charRefBufLen not reset after previous use!");
appendCharRefBuf(c);
setAdditionalAndRememberAmpersandLocation('\0');
returnState = state;
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::CONSUME_CHARACTER_REFERENCE,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::CONSUME_CHARACTER_REFERENCE, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '<': {
flushChars(buf, pos);
returnState = state;
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::RAWTEXT_RCDATA_LESS_THAN_SIGN,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::RAWTEXT_RCDATA_LESS_THAN_SIGN, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\0': {
emitReplacementCharacter(buf, pos);
continue;
}
case '\r': {
emitCarriageReturn(buf, pos);
@@ -2205,21 +2007,17 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
}
switch(c) {
case '<': {
flushChars(buf, pos);
returnState = state;
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::RAWTEXT_RCDATA_LESS_THAN_SIGN,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::RAWTEXT_RCDATA_LESS_THAN_SIGN, reconsume, pos);
NS_HTML5_BREAK(rawtextloop);
}
case '\0': {
emitReplacementCharacter(buf, pos);
continue;
}
case '\r': {
emitCarriageReturn(buf, pos);
@@ -2240,20 +2038,17 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '/': {
index = 0;
clearStrBufBeforeUse();
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::NON_DATA_END_TAG_NAME,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::NON_DATA_END_TAG_NAME, reconsume, pos);
NS_HTML5_BREAK(rawtextrcdatalessthansignloop);
}
default: {
tokenHandler->characters(nsHtml5Tokenizer::LT_GT, 0, 1);
cstart = pos;
reconsume = true;
state = P::transition(mViewSource, returnState, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
@@ -2287,41 +2082,32 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
continue;
} else {
endTag = true;
tagName = endTagExpectation;
switch(c) {
case '\r': {
silentCarriageReturn();
clearStrBufAfterUse();
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::BEFORE_ATTRIBUTE_NAME,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BEFORE_ATTRIBUTE_NAME, reconsume, pos);
NS_HTML5_BREAK(stateloop);
}
case '\n': {
silentLineFeed();
}
case ' ':
case '\t':
case '\f': {
clearStrBufAfterUse();
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::BEFORE_ATTRIBUTE_NAME,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BEFORE_ATTRIBUTE_NAME, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '/': {
clearStrBufAfterUse();
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::SELF_CLOSING_START_TAG,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SELF_CLOSING_START_TAG, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '>': {
clearStrBufAfterUse();
state = P::transition(mViewSource, emitCurrentTagToken(false, pos), reconsume, pos);
if (shouldSuspend) {
NS_HTML5_BREAK(stateloop);
}
@@ -2350,26 +2136,22 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
}
switch(c) {
case '>': {
emitComment(0, pos);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '-': {
appendStrBuf(c);
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::BOGUS_COMMENT_HYPHEN,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BOGUS_COMMENT_HYPHEN, reconsume, pos);
NS_HTML5_BREAK(boguscommentloop);
}
case '\r': {
appendStrBufCarriageReturn();
NS_HTML5_BREAK(stateloop);
}
case '\n': {
appendStrBufLineFeed();
@@ -2382,52 +2164,47 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
appendStrBuf(c);
continue;
}
}
}
boguscommentloop_end: ;
}
case BOGUS_COMMENT_HYPHEN: {
- boguscommenthyphenloop:
- for (;;) {
+ boguscommenthyphenloop: for (; ; ) {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '>': {
emitComment(0, pos);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '-': {
appendSecondHyphenToBogusComment();
NS_HTML5_CONTINUE(boguscommenthyphenloop);
}
case '\r': {
appendStrBufCarriageReturn();
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::BOGUS_COMMENT, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BOGUS_COMMENT, reconsume, pos);
NS_HTML5_BREAK(stateloop);
}
case '\n': {
appendStrBufLineFeed();
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::BOGUS_COMMENT, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BOGUS_COMMENT, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\0': {
c = 0xfffd;
}
default: {
appendStrBuf(c);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::BOGUS_COMMENT, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BOGUS_COMMENT, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
}
case SCRIPT_DATA: {
for (; ; ) {
@@ -2438,21 +2215,17 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
}
switch(c) {
case '<': {
flushChars(buf, pos);
returnState = state;
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_LESS_THAN_SIGN,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_LESS_THAN_SIGN, reconsume, pos);
NS_HTML5_BREAK(scriptdataloop);
}
case '\0': {
emitReplacementCharacter(buf, pos);
continue;
}
case '\r': {
emitCarriageReturn(buf, pos);
@@ -2473,87 +2246,70 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '/': {
index = 0;
clearStrBufBeforeUse();
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::NON_DATA_END_TAG_NAME,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::NON_DATA_END_TAG_NAME, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '!': {
tokenHandler->characters(nsHtml5Tokenizer::LT_GT, 0, 1);
cstart = pos;
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_ESCAPE_START,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_ESCAPE_START, reconsume, pos);
NS_HTML5_BREAK(scriptdatalessthansignloop);
}
default: {
tokenHandler->characters(nsHtml5Tokenizer::LT_GT, 0, 1);
cstart = pos;
reconsume = true;
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::SCRIPT_DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
scriptdatalessthansignloop_end: ;
}
case SCRIPT_DATA_ESCAPE_START: {
for (; ; ) {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '-': {
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_ESCAPE_START_DASH,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_ESCAPE_START_DASH, reconsume, pos);
NS_HTML5_BREAK(scriptdataescapestartloop);
}
default: {
reconsume = true;
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::SCRIPT_DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
scriptdataescapestartloop_end: ;
}
case SCRIPT_DATA_ESCAPE_START_DASH: {
for (; ; ) {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '-': {
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED_DASH_DASH,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED_DASH_DASH, reconsume, pos);
NS_HTML5_BREAK(scriptdataescapestartdashloop);
}
default: {
reconsume = true;
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::SCRIPT_DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
scriptdataescapestartdashloop_end: ;
}
case SCRIPT_DATA_ESCAPED_DASH_DASH: {
for (; ; ) {
@@ -2562,52 +2318,38 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
}
c = checkChar(buf, pos);
switch(c) {
case '-': {
continue;
}
case '<': {
flushChars(buf, pos);
- state = P::transition(
- mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '>': {
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::SCRIPT_DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\0': {
emitReplacementCharacter(buf, pos);
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED, reconsume, pos);
NS_HTML5_BREAK(scriptdataescapeddashdashloop);
}
case '\r': {
emitCarriageReturn(buf, pos);
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED, reconsume, pos);
NS_HTML5_BREAK(stateloop);
}
case '\n': {
silentLineFeed();
}
default: {
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED, reconsume, pos);
NS_HTML5_BREAK(scriptdataescapeddashdashloop);
}
}
}
scriptdataescapeddashdashloop_end: ;
}
case SCRIPT_DATA_ESCAPED: {
for (; ; ) {
@@ -2616,29 +2358,22 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
} else {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
}
switch(c) {
case '-': {
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED_DASH,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED_DASH, reconsume, pos);
NS_HTML5_BREAK(scriptdataescapedloop);
}
case '<': {
flushChars(buf, pos);
- state = P::transition(
- mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\0': {
emitReplacementCharacter(buf, pos);
continue;
}
case '\r': {
emitCarriageReturn(buf, pos);
@@ -2657,56 +2392,39 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
case SCRIPT_DATA_ESCAPED_DASH: {
for (; ; ) {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '-': {
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED_DASH_DASH,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED_DASH_DASH, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '<': {
flushChars(buf, pos);
- state = P::transition(
- mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN, reconsume, pos);
NS_HTML5_BREAK(scriptdataescapeddashloop);
}
case '\0': {
emitReplacementCharacter(buf, pos);
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\r': {
emitCarriageReturn(buf, pos);
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED, reconsume, pos);
NS_HTML5_BREAK(stateloop);
}
case '\n': {
silentLineFeed();
}
default: {
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
scriptdataescapeddashloop_end: ;
}
case SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN: {
for (; ; ) {
@@ -2714,42 +2432,32 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '/': {
index = 0;
clearStrBufBeforeUse();
returnState = nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED;
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::NON_DATA_END_TAG_NAME,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::NON_DATA_END_TAG_NAME, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case 'S':
case 's': {
tokenHandler->characters(nsHtml5Tokenizer::LT_GT, 0, 1);
cstart = pos;
index = 1;
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPE_START,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPE_START, reconsume, pos);
NS_HTML5_BREAK(scriptdataescapedlessthanloop);
}
default: {
tokenHandler->characters(nsHtml5Tokenizer::LT_GT, 0, 1);
cstart = pos;
reconsume = true;
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
scriptdataescapedlessthanloop_end: ;
}
case SCRIPT_DATA_DOUBLE_ESCAPE_START: {
for (; ; ) {
@@ -2760,56 +2468,42 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
MOZ_ASSERT(index > 0);
if (index < 6) {
char16_t folded = c;
if (c >= 'A' && c <= 'Z') {
folded += 0x20;
}
if (folded != nsHtml5Tokenizer::SCRIPT_ARR[index]) {
reconsume = true;
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
index++;
continue;
}
switch(c) {
case '\r': {
emitCarriageReturn(buf, pos);
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED, reconsume, pos);
NS_HTML5_BREAK(stateloop);
}
case '\n': {
silentLineFeed();
}
case ' ':
case '\t':
case '\f':
case '/':
case '>': {
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED, reconsume, pos);
NS_HTML5_BREAK(scriptdatadoubleescapestartloop);
}
default: {
reconsume = true;
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
scriptdatadoubleescapestartloop_end: ;
}
case SCRIPT_DATA_DOUBLE_ESCAPED: {
for (; ; ) {
@@ -2818,29 +2512,21 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
} else {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
}
switch(c) {
case '-': {
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED_DASH,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED_DASH, reconsume, pos);
NS_HTML5_BREAK(scriptdatadoubleescapedloop);
}
case '<': {
- state = P::transition(
- mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\0': {
emitReplacementCharacter(buf, pos);
continue;
}
case '\r': {
emitCarriageReturn(buf, pos);
@@ -2859,58 +2545,38 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
case SCRIPT_DATA_DOUBLE_ESCAPED_DASH: {
for (; ; ) {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '-': {
- state = P::transition(
- mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH, reconsume, pos);
NS_HTML5_BREAK(scriptdatadoubleescapeddashloop);
}
case '<': {
- state = P::transition(
- mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\0': {
emitReplacementCharacter(buf, pos);
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\r': {
emitCarriageReturn(buf, pos);
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED, reconsume, pos);
NS_HTML5_BREAK(stateloop);
}
case '\n': {
silentLineFeed();
}
default: {
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
scriptdatadoubleescapeddashloop_end: ;
}
case SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH: {
for (; ; ) {
@@ -2918,84 +2584,59 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '-': {
continue;
}
case '<': {
- state = P::transition(
- mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN, reconsume, pos);
NS_HTML5_BREAK(scriptdatadoubleescapeddashdashloop);
}
case '>': {
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::SCRIPT_DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\0': {
emitReplacementCharacter(buf, pos);
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\r': {
emitCarriageReturn(buf, pos);
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED, reconsume, pos);
NS_HTML5_BREAK(stateloop);
}
case '\n': {
silentLineFeed();
}
default: {
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
scriptdatadoubleescapeddashdashloop_end: ;
}
case SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN: {
for (; ; ) {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '/': {
index = 0;
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPE_END,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPE_END, reconsume, pos);
NS_HTML5_BREAK(scriptdatadoubleescapedlessthanloop);
}
default: {
reconsume = true;
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
scriptdatadoubleescapedlessthanloop_end: ;
}
case SCRIPT_DATA_DOUBLE_ESCAPE_END: {
for (; ; ) {
@@ -3005,56 +2646,42 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
c = checkChar(buf, pos);
if (index < 6) {
char16_t folded = c;
if (c >= 'A' && c <= 'Z') {
folded += 0x20;
}
if (folded != nsHtml5Tokenizer::SCRIPT_ARR[index]) {
reconsume = true;
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
index++;
continue;
}
switch(c) {
case '\r': {
emitCarriageReturn(buf, pos);
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED, reconsume, pos);
NS_HTML5_BREAK(stateloop);
}
case '\n': {
silentLineFeed();
}
case ' ':
case '\t':
case '\f':
case '/':
case '>': {
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_ESCAPED, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
default: {
reconsume = true;
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::SCRIPT_DATA_DOUBLE_ESCAPED, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
}
case MARKUP_DECLARATION_OCTYPE: {
for (; ; ) {
@@ -3069,26 +2696,24 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
}
if (folded == nsHtml5Tokenizer::OCTYPE[index]) {
appendStrBuf(c);
} else {
if (P::reportErrors) {
errBogusComment();
}
reconsume = true;
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::BOGUS_COMMENT, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BOGUS_COMMENT, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
index++;
continue;
} else {
reconsume = true;
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DOCTYPE, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DOCTYPE, reconsume, pos);
NS_HTML5_BREAK(markupdeclarationdoctypeloop);
}
}
markupdeclarationdoctypeloop_end: ;
}
case DOCTYPE: {
for (; ; ) {
if (reconsume) {
@@ -3098,43 +2723,34 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
}
initDoctypeFields();
switch(c) {
case '\r': {
silentCarriageReturn();
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::BEFORE_DOCTYPE_NAME,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BEFORE_DOCTYPE_NAME, reconsume, pos);
NS_HTML5_BREAK(stateloop);
}
case '\n': {
silentLineFeed();
}
case ' ':
case '\t':
case '\f': {
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::BEFORE_DOCTYPE_NAME,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BEFORE_DOCTYPE_NAME, reconsume, pos);
NS_HTML5_BREAK(doctypeloop);
}
default: {
if (P::reportErrors) {
errMissingSpaceBeforeDoctypeName();
}
reconsume = true;
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::BEFORE_DOCTYPE_NAME,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BEFORE_DOCTYPE_NAME, reconsume, pos);
NS_HTML5_BREAK(doctypeloop);
}
}
}
doctypeloop_end: ;
}
case BEFORE_DOCTYPE_NAME: {
for (; ; ) {
@@ -3160,71 +2776,62 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
continue;
}
case '>': {
if (P::reportErrors) {
errNamelessDoctype();
}
forceQuirks = true;
emitDoctypeToken(pos);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\0': {
c = 0xfffd;
}
default: {
if (c >= 'A' && c <= 'Z') {
c += 0x20;
}
clearStrBufBeforeUse();
appendStrBuf(c);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DOCTYPE_NAME, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DOCTYPE_NAME, reconsume, pos);
NS_HTML5_BREAK(beforedoctypenameloop);
}
}
}
beforedoctypenameloop_end: ;
}
case DOCTYPE_NAME: {
for (; ; ) {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '\r': {
silentCarriageReturn();
strBufToDoctypeName();
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::AFTER_DOCTYPE_NAME,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::AFTER_DOCTYPE_NAME, reconsume, pos);
NS_HTML5_BREAK(stateloop);
}
case '\n': {
silentLineFeed();
}
case ' ':
case '\t':
case '\f': {
strBufToDoctypeName();
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::AFTER_DOCTYPE_NAME,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::AFTER_DOCTYPE_NAME, reconsume, pos);
NS_HTML5_BREAK(doctypenameloop);
}
case '>': {
strBufToDoctypeName();
emitDoctypeToken(pos);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\0': {
c = 0xfffd;
}
default: {
if (c >= 'A' && c <= 'Z') {
c += 0x0020;
@@ -3252,38 +2859,34 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
}
case ' ':
case '\t':
case '\f': {
continue;
}
case '>': {
emitDoctypeToken(pos);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case 'p':
case 'P': {
index = 0;
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DOCTYPE_UBLIC, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DOCTYPE_UBLIC, reconsume, pos);
NS_HTML5_BREAK(afterdoctypenameloop);
}
case 's':
case 'S': {
index = 0;
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DOCTYPE_YSTEM, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DOCTYPE_YSTEM, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
default: {
bogusDoctype();
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::BOGUS_DOCTYPE, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BOGUS_DOCTYPE, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
afterdoctypenameloop_end: ;
}
case DOCTYPE_UBLIC: {
for (; ; ) {
@@ -3294,29 +2897,24 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
if (index < 5) {
char16_t folded = c;
if (c >= 'A' && c <= 'Z') {
folded += 0x20;
}
if (folded != nsHtml5Tokenizer::UBLIC[index]) {
bogusDoctype();
reconsume = true;
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::BOGUS_DOCTYPE, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BOGUS_DOCTYPE, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
index++;
continue;
} else {
reconsume = true;
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::AFTER_DOCTYPE_PUBLIC_KEYWORD,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::AFTER_DOCTYPE_PUBLIC_KEYWORD, reconsume, pos);
NS_HTML5_BREAK(doctypeublicloop);
}
}
doctypeublicloop_end: ;
}
case AFTER_DOCTYPE_PUBLIC_KEYWORD: {
for (; ; ) {
if (reconsume) {
@@ -3325,74 +2923,56 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
}
switch(c) {
case '\r': {
silentCarriageReturn();
- state = P::transition(
- mViewSource,
- nsHtml5Tokenizer::BEFORE_DOCTYPE_PUBLIC_IDENTIFIER,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BEFORE_DOCTYPE_PUBLIC_IDENTIFIER, reconsume, pos);
NS_HTML5_BREAK(stateloop);
}
case '\n': {
silentLineFeed();
}
case ' ':
case '\t':
case '\f': {
- state = P::transition(
- mViewSource,
- nsHtml5Tokenizer::BEFORE_DOCTYPE_PUBLIC_IDENTIFIER,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BEFORE_DOCTYPE_PUBLIC_IDENTIFIER, reconsume, pos);
NS_HTML5_BREAK(afterdoctypepublickeywordloop);
}
case '\"': {
if (P::reportErrors) {
errNoSpaceBetweenDoctypePublicKeywordAndQuote();
}
clearStrBufBeforeUse();
- state = P::transition(
- mViewSource,
- nsHtml5Tokenizer::DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\'': {
if (P::reportErrors) {
errNoSpaceBetweenDoctypePublicKeywordAndQuote();
}
clearStrBufBeforeUse();
- state = P::transition(
- mViewSource,
- nsHtml5Tokenizer::DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '>': {
if (P::reportErrors) {
errExpectedPublicId();
}
forceQuirks = true;
emitDoctypeToken(pos);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
default: {
bogusDoctype();
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::BOGUS_DOCTYPE, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BOGUS_DOCTYPE, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
afterdoctypepublickeywordloop_end: ;
}
case BEFORE_DOCTYPE_PUBLIC_IDENTIFIER: {
for (; ; ) {
@@ -3410,77 +2990,62 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
}
case ' ':
case '\t':
case '\f': {
continue;
}
case '\"': {
clearStrBufBeforeUse();
- state = P::transition(
- mViewSource,
- nsHtml5Tokenizer::DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED, reconsume, pos);
NS_HTML5_BREAK(beforedoctypepublicidentifierloop);
}
case '\'': {
clearStrBufBeforeUse();
- state = P::transition(
- mViewSource,
- nsHtml5Tokenizer::DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '>': {
if (P::reportErrors) {
errExpectedPublicId();
}
forceQuirks = true;
emitDoctypeToken(pos);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
default: {
bogusDoctype();
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::BOGUS_DOCTYPE, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BOGUS_DOCTYPE, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
beforedoctypepublicidentifierloop_end: ;
}
case DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED: {
for (; ; ) {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '\"': {
publicIdentifier = strBufToString();
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::AFTER_DOCTYPE_PUBLIC_IDENTIFIER,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::AFTER_DOCTYPE_PUBLIC_IDENTIFIER, reconsume, pos);
NS_HTML5_BREAK(doctypepublicidentifierdoublequotedloop);
}
case '>': {
if (P::reportErrors) {
errGtInPublicId();
}
forceQuirks = true;
publicIdentifier = strBufToString();
emitDoctypeToken(pos);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\r': {
appendStrBufCarriageReturn();
NS_HTML5_BREAK(stateloop);
}
case '\n': {
appendStrBufLineFeed();
@@ -3501,70 +3066,52 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
for (; ; ) {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '\r': {
silentCarriageReturn();
- state = P::transition(
- mViewSource,
- nsHtml5Tokenizer::BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS, reconsume, pos);
NS_HTML5_BREAK(stateloop);
}
case '\n': {
silentLineFeed();
}
case ' ':
case '\t':
case '\f': {
- state = P::transition(
- mViewSource,
- nsHtml5Tokenizer::BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS, reconsume, pos);
NS_HTML5_BREAK(afterdoctypepublicidentifierloop);
}
case '>': {
emitDoctypeToken(pos);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\"': {
if (P::reportErrors) {
errNoSpaceBetweenPublicAndSystemIds();
}
clearStrBufBeforeUse();
- state = P::transition(
- mViewSource,
- nsHtml5Tokenizer::DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\'': {
if (P::reportErrors) {
errNoSpaceBetweenPublicAndSystemIds();
}
clearStrBufBeforeUse();
- state = P::transition(
- mViewSource,
- nsHtml5Tokenizer::DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
default: {
bogusDoctype();
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::BOGUS_DOCTYPE, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BOGUS_DOCTYPE, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
afterdoctypepublicidentifierloop_end: ;
}
case BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS: {
for (; ; ) {
@@ -3582,73 +3129,58 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
}
case ' ':
case '\t':
case '\f': {
continue;
}
case '>': {
emitDoctypeToken(pos);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\"': {
clearStrBufBeforeUse();
- state = P::transition(
- mViewSource,
- nsHtml5Tokenizer::DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED, reconsume, pos);
NS_HTML5_BREAK(betweendoctypepublicandsystemidentifiersloop);
}
case '\'': {
clearStrBufBeforeUse();
- state = P::transition(
- mViewSource,
- nsHtml5Tokenizer::DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
default: {
bogusDoctype();
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::BOGUS_DOCTYPE, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BOGUS_DOCTYPE, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
betweendoctypepublicandsystemidentifiersloop_end: ;
}
case DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED: {
for (; ; ) {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '\"': {
systemIdentifier = strBufToString();
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::AFTER_DOCTYPE_SYSTEM_IDENTIFIER,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::AFTER_DOCTYPE_SYSTEM_IDENTIFIER, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '>': {
if (P::reportErrors) {
errGtInSystemId();
}
forceQuirks = true;
systemIdentifier = strBufToString();
emitDoctypeToken(pos);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\r': {
appendStrBufCarriageReturn();
NS_HTML5_BREAK(stateloop);
}
case '\n': {
appendStrBufLineFeed();
@@ -3681,24 +3213,22 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
}
case ' ':
case '\t':
case '\f': {
continue;
}
case '>': {
emitDoctypeToken(pos);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
default: {
bogusDoctypeWithoutQuirks();
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::BOGUS_DOCTYPE, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BOGUS_DOCTYPE, reconsume, pos);
NS_HTML5_BREAK(afterdoctypesystemidentifierloop);
}
}
}
afterdoctypesystemidentifierloop_end: ;
}
case BOGUS_DOCTYPE: {
for (; ; ) {
@@ -3708,18 +3238,17 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
}
switch(c) {
case '>': {
emitDoctypeToken(pos);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\r': {
silentCarriageReturn();
NS_HTML5_BREAK(stateloop);
}
case '\n': {
silentLineFeed();
@@ -3739,29 +3268,24 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
if (index < 5) {
char16_t folded = c;
if (c >= 'A' && c <= 'Z') {
folded += 0x20;
}
if (folded != nsHtml5Tokenizer::YSTEM[index]) {
bogusDoctype();
reconsume = true;
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::BOGUS_DOCTYPE, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BOGUS_DOCTYPE, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
index++;
NS_HTML5_CONTINUE(stateloop);
} else {
reconsume = true;
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::AFTER_DOCTYPE_SYSTEM_KEYWORD,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::AFTER_DOCTYPE_SYSTEM_KEYWORD, reconsume, pos);
NS_HTML5_BREAK(doctypeystemloop);
}
}
doctypeystemloop_end: ;
}
case AFTER_DOCTYPE_SYSTEM_KEYWORD: {
for (; ; ) {
if (reconsume) {
@@ -3770,74 +3294,56 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
}
switch(c) {
case '\r': {
silentCarriageReturn();
- state = P::transition(
- mViewSource,
- nsHtml5Tokenizer::BEFORE_DOCTYPE_SYSTEM_IDENTIFIER,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BEFORE_DOCTYPE_SYSTEM_IDENTIFIER, reconsume, pos);
NS_HTML5_BREAK(stateloop);
}
case '\n': {
silentLineFeed();
}
case ' ':
case '\t':
case '\f': {
- state = P::transition(
- mViewSource,
- nsHtml5Tokenizer::BEFORE_DOCTYPE_SYSTEM_IDENTIFIER,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BEFORE_DOCTYPE_SYSTEM_IDENTIFIER, reconsume, pos);
NS_HTML5_BREAK(afterdoctypesystemkeywordloop);
}
case '\"': {
if (P::reportErrors) {
errNoSpaceBetweenDoctypeSystemKeywordAndQuote();
}
clearStrBufBeforeUse();
- state = P::transition(
- mViewSource,
- nsHtml5Tokenizer::DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\'': {
if (P::reportErrors) {
errNoSpaceBetweenDoctypeSystemKeywordAndQuote();
}
clearStrBufBeforeUse();
- state = P::transition(
- mViewSource,
- nsHtml5Tokenizer::DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '>': {
if (P::reportErrors) {
errExpectedPublicId();
}
forceQuirks = true;
emitDoctypeToken(pos);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
default: {
bogusDoctype();
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::BOGUS_DOCTYPE, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BOGUS_DOCTYPE, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
afterdoctypesystemkeywordloop_end: ;
}
case BEFORE_DOCTYPE_SYSTEM_IDENTIFIER: {
for (; ; ) {
@@ -3855,77 +3361,62 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
}
case ' ':
case '\t':
case '\f': {
continue;
}
case '\"': {
clearStrBufBeforeUse();
- state = P::transition(
- mViewSource,
- nsHtml5Tokenizer::DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\'': {
clearStrBufBeforeUse();
- state = P::transition(
- mViewSource,
- nsHtml5Tokenizer::DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED, reconsume, pos);
NS_HTML5_BREAK(beforedoctypesystemidentifierloop);
}
case '>': {
if (P::reportErrors) {
errExpectedSystemId();
}
forceQuirks = true;
emitDoctypeToken(pos);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
default: {
bogusDoctype();
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::BOGUS_DOCTYPE, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::BOGUS_DOCTYPE, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
beforedoctypesystemidentifierloop_end: ;
}
case DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED: {
for (; ; ) {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '\'': {
systemIdentifier = strBufToString();
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::AFTER_DOCTYPE_SYSTEM_IDENTIFIER,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::AFTER_DOCTYPE_SYSTEM_IDENTIFIER, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '>': {
if (P::reportErrors) {
errGtInSystemId();
}
forceQuirks = true;
systemIdentifier = strBufToString();
emitDoctypeToken(pos);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\r': {
appendStrBufCarriageReturn();
NS_HTML5_BREAK(stateloop);
}
case '\n': {
appendStrBufLineFeed();
@@ -3945,32 +3436,27 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
for (; ; ) {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '\'': {
publicIdentifier = strBufToString();
- state =
- P::transition(mViewSource,
- nsHtml5Tokenizer::AFTER_DOCTYPE_PUBLIC_IDENTIFIER,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::AFTER_DOCTYPE_PUBLIC_IDENTIFIER, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '>': {
if (P::reportErrors) {
errGtInPublicId();
}
forceQuirks = true;
publicIdentifier = strBufToString();
emitDoctypeToken(pos);
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
case '\r': {
appendStrBufCarriageReturn();
NS_HTML5_BREAK(stateloop);
}
case '\n': {
appendStrBufLineFeed();
@@ -3989,46 +3475,38 @@ nsHtml5Tokenizer::stateLoop(int32_t stat
case PROCESSING_INSTRUCTION: {
for (; ; ) {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '\?': {
- state = P::transition(
- mViewSource,
- nsHtml5Tokenizer::PROCESSING_INSTRUCTION_QUESTION_MARK,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::PROCESSING_INSTRUCTION_QUESTION_MARK, reconsume, pos);
NS_HTML5_BREAK(processinginstructionloop);
}
default: {
continue;
}
}
}
processinginstructionloop_end: ;
}
case PROCESSING_INSTRUCTION_QUESTION_MARK: {
if (++pos == endPos) {
NS_HTML5_BREAK(stateloop);
}
c = checkChar(buf, pos);
switch(c) {
case '>': {
- state = P::transition(
- mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::DATA, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
default: {
- state = P::transition(mViewSource,
- nsHtml5Tokenizer::PROCESSING_INSTRUCTION,
- reconsume,
- pos);
+ state = P::transition(mViewSource, nsHtml5Tokenizer::PROCESSING_INSTRUCTION, reconsume, pos);
NS_HTML5_CONTINUE(stateloop);
}
}
}
}
}
stateloop_end: ;
flushChars(buf, pos);
@@ -4113,17 +3591,17 @@ nsHtml5Tokenizer::handleNcrValue(int32_t
errNcrSurrogate();
emitOrAppendOne(nsHtml5Tokenizer::REPLACEMENT_CHARACTER, returnState);
} else {
char16_t ch = (char16_t) value;
bmpChar[0] = ch;
emitOrAppendOne(bmpChar, returnState);
}
} else if (value <= 0x10FFFF) {
- astralChar[0] = (char16_t)(nsHtml5Tokenizer::LEAD_OFFSET + (value >> 10));
+ astralChar[0] = (char16_t) (nsHtml5Tokenizer::LEAD_OFFSET + (value >> 10));
astralChar[1] = (char16_t) (0xDC00 + (value & 0x3FF));
emitOrAppendTwo(astralChar, returnState);
} else {
errNcrOutOfRange();
emitOrAppendOne(nsHtml5Tokenizer::REPLACEMENT_CHARACTER, returnState);
}
}
@@ -4349,16 +3827,17 @@ nsHtml5Tokenizer::eof()
} else {
NS_HTML5_BREAK(loloop);
}
}
loloop_end: ;
if (hi < lo) {
NS_HTML5_BREAK(outer);
}
+ continue;
}
outer_end: ;
if (candidate == -1) {
errNoNamedCharacterMatch();
emitOrAppendCharRefBuf(returnState);
state = returnState;
NS_HTML5_CONTINUE(eofloop);
} else {
@@ -4428,31 +3907,32 @@ nsHtml5Tokenizer::eof()
case DATA:
default: {
NS_HTML5_BREAK(eofloop);
}
}
}
eofloop_end: ;
tokenHandler->eof();
+ return;
}
void
nsHtml5Tokenizer::emitDoctypeToken(int32_t pos)
{
cstart = pos + 1;
tokenHandler->doctype(doctypeName, publicIdentifier, systemIdentifier, forceQuirks);
doctypeName = nullptr;
publicIdentifier.Release();
publicIdentifier = nullptr;
systemIdentifier.Release();
systemIdentifier = nullptr;
}
-bool
+bool
nsHtml5Tokenizer::internalEncodingDeclaration(nsHtml5String internalCharset)
{
if (encodingDeclarationHandler) {
return encodingDeclarationHandler->internalEncodingDeclaration(internalCharset);
}
return false;
}
@@ -4590,29 +4070,25 @@ nsHtml5Tokenizer::loadState(nsHtml5Token
publicIdentifier = nsHtml5Portability::newStringFromString(other->publicIdentifier);
}
containsHyphen = other->containsHyphen;
if (!other->tagName) {
tagName = nullptr;
} else if (other->tagName->isInterned()) {
tagName = other->tagName;
} else {
- nonInternedTagName->setNameForNonInterned(
- nsHtml5Portability::newLocalFromLocal(other->tagName->getName(),
- interner));
+ nonInternedTagName->setNameForNonInterned(nsHtml5Portability::newLocalFromLocal(other->tagName->getName(), interner));
tagName = nonInternedTagName;
}
if (!other->attributeName) {
attributeName = nullptr;
} else if (other->attributeName->isInterned()) {
attributeName = other->attributeName;
} else {
- nonInternedAttributeName->setNameForNonInterned(
- nsHtml5Portability::newLocalFromLocal(
- other->attributeName->getLocal(nsHtml5AttributeName::HTML), interner));
+ nonInternedAttributeName->setNameForNonInterned(nsHtml5Portability::newLocalFromLocal(other->attributeName->getLocal(nsHtml5AttributeName::HTML), interner));
attributeName = nonInternedAttributeName;
}
delete attributes;
if (!other->attributes) {
attributes = nullptr;
} else {
attributes = other->attributes->cloneAttributes(interner);
}
--- a/parser/html/nsHtml5TreeBuilder.cpp
+++ b/parser/html/nsHtml5TreeBuilder.cpp
@@ -69,17 +69,17 @@
char16_t nsHtml5TreeBuilder::REPLACEMENT_CHARACTER[] = { 0xfffd };
static const char* const QUIRKY_PUBLIC_IDS_DATA[] = { "+//silmaril//dtd html pro v0r11 19970101//", "-//advasoft ltd//dtd html 3.0 aswedit + extensions//", "-//as//dtd html 3.0 aswedit + extensions//", "-//ietf//dtd html 2.0 level 1//", "-//ietf//dtd html 2.0 level 2//", "-//ietf//dtd html 2.0 strict level 1//", "-//ietf//dtd html 2.0 strict level 2//", "-//ietf//dtd html 2.0 strict//", "-//ietf//dtd html 2.0//", "-//ietf//dtd html 2.1e//", "-//ietf//dtd html 3.0//", "-//ietf//dtd html 3.2 final//", "-//ietf//dtd html 3.2//", "-//ietf//dtd html 3//", "-//ietf//dtd html level 0//", "-//ietf//dtd html level 1//", "-//ietf//dtd html level 2//", "-//ietf//dtd html level 3//", "-//ietf//dtd html strict level 0//", "-//ietf//dtd html strict level 1//", "-//ietf//dtd html strict level 2//", "-//ietf//dtd html strict level 3//", "-//ietf//dtd html strict//", "-//ietf//dtd html//", "-//metrius//dtd metrius presentational//", "-//microsoft//dtd internet explorer 2.0 html strict//", "-//microsoft//dtd internet explorer 2.0 html//", "-//microsoft//dtd internet explorer 2.0 tables//", "-//microsoft//dtd internet explorer 3.0 html strict//", "-//microsoft//dtd internet explorer 3.0 html//", "-//microsoft//dtd internet explorer 3.0 tables//", "-//netscape comm. corp.//dtd html//", "-//netscape comm. corp.//dtd strict html//", "-//o'reilly and associates//dtd html 2.0//", "-//o'reilly and associates//dtd html extended 1.0//", "-//o'reilly and associates//dtd html extended relaxed 1.0//", "-//softquad software//dtd hotmetal pro 6.0::19990601::extensions to html 4.0//", "-//softquad//dtd hotmetal pro 4.0::19971010::extensions to html 4.0//", "-//spyglass//dtd html 2.0 extended//", "-//sq//dtd html 2.0 hotmetal + extensions//", "-//sun microsystems corp.//dtd hotjava html//", "-//sun microsystems corp.//dtd hotjava strict html//", "-//w3c//dtd html 3 1995-03-24//", "-//w3c//dtd html 3.2 draft//", "-//w3c//dtd html 3.2 final//", "-//w3c//dtd html 3.2//", "-//w3c//dtd html 3.2s draft//", "-//w3c//dtd html 4.0 frameset//", "-//w3c//dtd html 4.0 transitional//", "-//w3c//dtd html experimental 19960712//", "-//w3c//dtd html experimental 970421//", "-//w3c//dtd w3 html//", "-//w3o//dtd w3 html 3.0//", "-//webtechs//dtd mozilla html 2.0//", "-//webtechs//dtd mozilla html//" };
staticJArray<const char*,int32_t> nsHtml5TreeBuilder::QUIRKY_PUBLIC_IDS = { QUIRKY_PUBLIC_IDS_DATA, MOZ_ARRAY_LENGTH(QUIRKY_PUBLIC_IDS_DATA) };
void
nsHtml5TreeBuilder::startTokenization(nsHtml5Tokenizer* self)
{
tokenizer = self;
- stackNodes = jArray<nsHtml5StackNode*, int32_t>::newJArray(64);
+ stackNodes = jArray<nsHtml5StackNode*,int32_t>::newJArray(64);
stack = jArray<nsHtml5StackNode*,int32_t>::newJArray(64);
templateModeStack = jArray<int32_t,int32_t>::newJArray(64);
listOfActiveFormattingElements = jArray<nsHtml5StackNode*,int32_t>::newJArray(64);
needToDropLF = false;
originalMode = INITIAL;
templateModePtr = -1;
stackNodesIdx = 0;
numStackNodes = 0;
@@ -96,119 +96,92 @@ nsHtml5TreeBuilder::startTokenization(ns
nsIContentHandle* elt;
if (contextNode) {
elt = contextNode;
} else {
elt = createHtmlElementSetAsRoot(tokenizer->emptyAttributes());
}
if (contextNamespace == kNameSpaceID_SVG) {
nsHtml5ElementName* elementName = nsHtml5ElementName::ELT_SVG;
- if (nsGkAtoms::title == contextName || nsGkAtoms::desc == contextName ||
- nsGkAtoms::foreignObject == contextName) {
+ if (nsGkAtoms::title == contextName || nsGkAtoms::desc == contextName || nsGkAtoms::foreignObject == contextName) {
elementName = nsHtml5ElementName::ELT_FOREIGNOBJECT;
}
- nsHtml5StackNode* node =
- createStackNode(elementName, elementName->getCamelCaseName(), elt);
+ nsHtml5StackNode* node = createStackNode(elementName, elementName->getCamelCaseName(), elt);
currentPtr++;
stack[currentPtr] = node;
- tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::DATA,
- contextName);
+ tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::DATA, contextName);
mode = FRAMESET_OK;
} else if (contextNamespace == kNameSpaceID_MathML) {
nsHtml5ElementName* elementName = nsHtml5ElementName::ELT_MATH;
- if (nsGkAtoms::mi_ == contextName || nsGkAtoms::mo_ == contextName ||
- nsGkAtoms::mn_ == contextName || nsGkAtoms::ms_ == contextName ||
- nsGkAtoms::mtext_ == contextName) {
+ if (nsGkAtoms::mi_ == contextName || nsGkAtoms::mo_ == contextName || nsGkAtoms::mn_ == contextName || nsGkAtoms::ms_ == contextName || nsGkAtoms::mtext_ == contextName) {
elementName = nsHtml5ElementName::ELT_MTEXT;
} else if (nsGkAtoms::annotation_xml_ == contextName) {
elementName = nsHtml5ElementName::ELT_ANNOTATION_XML;
}
- nsHtml5StackNode* node =
- createStackNode(elementName, elt, elementName->getName(), false);
+ nsHtml5StackNode* node = createStackNode(elementName, elt, elementName->getName(), false);
currentPtr++;
stack[currentPtr] = node;
- tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::DATA,
- contextName);
+ tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::DATA, contextName);
mode = FRAMESET_OK;
} else {
- nsHtml5StackNode* node =
- createStackNode(nsHtml5ElementName::ELT_HTML, elt);
+ nsHtml5StackNode* node = createStackNode(nsHtml5ElementName::ELT_HTML, elt);
currentPtr++;
stack[currentPtr] = node;
if (nsGkAtoms::_template == contextName) {
pushTemplateMode(IN_TEMPLATE);
}
resetTheInsertionMode();
formPointer = getFormPointerForContext(contextNode);
- if (nsGkAtoms::title == contextName ||
- nsGkAtoms::textarea == contextName) {
- tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::RCDATA,
- contextName);
- } else if (nsGkAtoms::style == contextName ||
- nsGkAtoms::xmp == contextName ||
- nsGkAtoms::iframe == contextName ||
- nsGkAtoms::noembed == contextName ||
- nsGkAtoms::noframes == contextName ||
- (scriptingEnabled && nsGkAtoms::noscript == contextName)) {
- tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::RAWTEXT,
- contextName);
+ if (nsGkAtoms::title == contextName || nsGkAtoms::textarea == contextName) {
+ tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::RCDATA, contextName);
+ } else if (nsGkAtoms::style == contextName || nsGkAtoms::xmp == contextName || nsGkAtoms::iframe == contextName || nsGkAtoms::noembed == contextName || nsGkAtoms::noframes == contextName || (scriptingEnabled && nsGkAtoms::noscript == contextName)) {
+ tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::RAWTEXT, contextName);
} else if (nsGkAtoms::plaintext == contextName) {
- tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::PLAINTEXT,
- contextName);
+ tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::PLAINTEXT, contextName);
} else if (nsGkAtoms::script == contextName) {
- tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::SCRIPT_DATA,
- contextName);
+ tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::SCRIPT_DATA, contextName);
} else {
- tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::DATA,
- contextName);
+ tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::DATA, contextName);
}
}
contextName = nullptr;
contextNode = nullptr;
} else {
mode = INITIAL;
if (tokenizer->isViewingXmlSource()) {
- nsIContentHandle* elt = createElement(kNameSpaceID_SVG,
- nsGkAtoms::svg,
- tokenizer->emptyAttributes(),
- nullptr);
- nsHtml5StackNode* node =
- createStackNode(nsHtml5ElementName::ELT_SVG, nsGkAtoms::svg, elt);
+ nsIContentHandle* elt = createElement(kNameSpaceID_SVG, nsGkAtoms::svg, tokenizer->emptyAttributes(), nullptr);
+ nsHtml5StackNode* node = createStackNode(nsHtml5ElementName::ELT_SVG, nsGkAtoms::svg, elt);
currentPtr++;
stack[currentPtr] = node;
}
}
}
-void
-nsHtml5TreeBuilder::doctype(nsIAtom* name,
- nsHtml5String publicIdentifier,
- nsHtml5String systemIdentifier,
- bool forceQuirks)
+void
+nsHtml5TreeBuilder::doctype(nsIAtom* name, nsHtml5String publicIdentifier, nsHtml5String systemIdentifier, bool forceQuirks)
{
needToDropLF = false;
if (!isInForeign() && mode == INITIAL) {
nsHtml5String emptyString = nsHtml5Portability::newEmptyString();
- appendDoctypeToDocument(!name ? nsGkAtoms::_empty : name,
- !publicIdentifier ? emptyString : publicIdentifier,
- !systemIdentifier ? emptyString : systemIdentifier);
+ appendDoctypeToDocument(!name ? nsGkAtoms::_empty : name, !publicIdentifier ? emptyString : publicIdentifier, !systemIdentifier ? emptyString : systemIdentifier);
emptyString.Release();
if (isQuirky(name, publicIdentifier, systemIdentifier, forceQuirks)) {
errQuirkyDoctype();
documentModeInternal(QUIRKS_MODE, publicIdentifier, systemIdentifier, false);
} else if (isAlmostStandards(publicIdentifier, systemIdentifier)) {
errAlmostStandardsDoctype();
documentModeInternal(ALMOST_STANDARDS_MODE, publicIdentifier, systemIdentifier, false);
} else {
documentModeInternal(STANDARDS_MODE, publicIdentifier, systemIdentifier, false);
}
mode = BEFORE_HTML;
return;
}
errStrayDoctype();
+ return;
}
void
nsHtml5TreeBuilder::comment(char16_t* buf, int32_t start, int32_t length)
{
needToDropLF = false;
if (!isInForeign()) {
switch(mode) {
@@ -226,16 +199,17 @@ nsHtml5TreeBuilder::comment(char16_t* bu
}
default: {
break;
}
}
}
flushCharacters();
appendComment(stack[currentPtr]->node, buf, start, length);
+ return;
}
void
nsHtml5TreeBuilder::characters(const char16_t* buf, int32_t start, int32_t length)
{
if (tokenizer->isViewingXmlSource()) {
return;
}
@@ -416,18 +390,17 @@ nsHtml5TreeBuilder::characters(const cha
start = i + 1;
continue;
}
case IN_COLUMN_GROUP: {
if (start < i) {
accumulateCharacters(buf, start, i - start);
start = i;
}
- if (!currentPtr || stack[currentPtr]->getGroup() ==
- nsHtml5TreeBuilder::TEMPLATE) {
+ if (!currentPtr || stack[currentPtr]->getGroup() == nsHtml5TreeBuilder::TEMPLATE) {
errNonSpaceInColgroupInFragment();
start = i + 1;
continue;
}
flushCharacters();
pop();
mode = IN_TABLE;
i--;
@@ -644,21 +617,17 @@ nsHtml5TreeBuilder::startTag(nsHtml5Elem
int32_t eltPos;
needToDropLF = false;
starttagloop: for (; ; ) {
int32_t group = elementName->getGroup();
nsIAtom* name = elementName->getName();
if (isInForeign()) {
nsHtml5StackNode* currentNode = stack[currentPtr];
int32_t currNs = currentNode->ns;
- if (!(currentNode->isHtmlIntegrationPoint() ||
- (currNs == kNameSpaceID_MathML &&
- ((currentNode->getGroup() == MI_MO_MN_MS_MTEXT &&
- group != MGLYPH_OR_MALIGNMARK) ||
- (currentNode->getGroup() == ANNOTATION_XML && group == SVG))))) {
+ if (!(currentNode->isHtmlIntegrationPoint() || (currNs == kNameSpaceID_MathML && ((currentNode->getGroup() == MI_MO_MN_MS_MTEXT && group != MGLYPH_OR_MALIGNMARK) || (currentNode->getGroup() == ANNOTATION_XML && group == SVG))))) {
switch(group) {
case B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U:
case DIV_OR_BLOCKQUOTE_OR_CENTER_OR_MENU:
case BODY:
case BR:
case RUBY_OR_SPAN_OR_SUB_OR_SUP_OR_VAR:
case DD_OR_DT:
case UL_OR_OL_OR_DL:
@@ -669,20 +638,17 @@ nsHtml5TreeBuilder::startTag(nsHtml5Elem
case HR:
case LI:
case META:
case NOBR:
case P:
case PRE_OR_LISTING:
case TABLE:
case FONT: {
- if (!(group == FONT &&
- !(attributes->contains(nsHtml5AttributeName::ATTR_COLOR) ||
- attributes->contains(nsHtml5AttributeName::ATTR_FACE) ||
- attributes->contains(nsHtml5AttributeName::ATTR_SIZE)))) {
+ if (!(group == FONT && !(attributes->contains(nsHtml5AttributeName::ATTR_COLOR) || attributes->contains(nsHtml5AttributeName::ATTR_FACE) || attributes->contains(nsHtml5AttributeName::ATTR_SIZE)))) {
errHtmlStartTagInForeignContext(name);
if (!fragment) {
while (!isSpecialParentInForeign(stack[currentPtr])) {
pop();
}
NS_HTML5_CONTINUE(starttagloop);
}
}
@@ -908,27 +874,25 @@ nsHtml5TreeBuilder::startTag(nsHtml5Elem
}
resetTheInsertionMode();
NS_HTML5_CONTINUE(starttagloop);
}
case SCRIPT: {
appendToCurrentNodeAndPushElement(elementName, attributes);
originalMode = mode;
mode = TEXT;
- tokenizer->setStateAndEndTagExpectation(
- nsHtml5Tokenizer::SCRIPT_DATA, elementName);
+ tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::SCRIPT_DATA, elementName);
attributes = nullptr;
NS_HTML5_BREAK(starttagloop);
}
case STYLE: {
appendToCurrentNodeAndPushElement(elementName, attributes);
originalMode = mode;
mode = TEXT;
- tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::RAWTEXT,
- elementName);
+ tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::RAWTEXT, elementName);
attributes = nullptr;
NS_HTML5_BREAK(starttagloop);
}
case INPUT: {
errStartTagInTable(name);
if (!nsHtml5Portability::lowerCaseLiteralEqualsIgnoreAsciiCaseString("hidden", attributes->getValue(nsHtml5AttributeName::ATTR_TYPE))) {
NS_HTML5_BREAK(intableloop);
}
@@ -1042,22 +1006,17 @@ nsHtml5TreeBuilder::startTag(nsHtml5Elem
case IMG:
case INPUT:
case KEYGEN:
case HR:
case TEXTAREA:
case XMP:
case IFRAME:
case SELECT: {
- if (mode == FRAMESET_OK &&
- !(group == INPUT &&
- nsHtml5Portability::
- lowerCaseLiteralEqualsIgnoreAsciiCaseString(
- "hidden",
- attributes->getValue(nsHtml5AttributeName::ATTR_TYPE)))) {
+ if (mode == FRAMESET_OK && !(group == INPUT && nsHtml5Portability::lowerCaseLiteralEqualsIgnoreAsciiCaseString("hidden", attributes->getValue(nsHtml5AttributeName::ATTR_TYPE)))) {
framesetOk = false;
mode = IN_BODY;
}
}
default:
; // fall through
}
}
@@ -1077,18 +1036,17 @@ nsHtml5TreeBuilder::startTag(nsHtml5Elem
case META:
case STYLE:
case SCRIPT:
case TITLE:
case TEMPLATE: {
NS_HTML5_BREAK(inbodyloop);
}
case BODY: {
- if (!currentPtr || stack[1]->getGroup() != BODY ||
- isTemplateContents()) {
+ if (!currentPtr || stack[1]->getGroup() != BODY || isTemplateContents()) {
MOZ_ASSERT(fragment || isTemplateContents());
errStrayStartTag(name);
NS_HTML5_BREAK(starttagloop);
}
errFooSeenWhenFooOpen(name);
framesetOk = false;
if (mode == FRAMESET_OK) {
mode = IN_BODY;
@@ -1104,18 +1062,17 @@ nsHtml5TreeBuilder::startTag(nsHtml5Elem
case ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY: {
implicitlyCloseP();
appendToCurrentNodeAndPushElementMayFoster(elementName, attributes);
attributes = nullptr;
NS_HTML5_BREAK(starttagloop);
}
case H1_OR_H2_OR_H3_OR_H4_OR_H5_OR_H6: {
implicitlyCloseP();
- if (stack[currentPtr]->getGroup() ==
- H1_OR_H2_OR_H3_OR_H4_OR_H5_OR_H6) {
+ if (stack[currentPtr]->getGroup() == H1_OR_H2_OR_H3_OR_H4_OR_H5_OR_H6) {
errHeadingWhenHeadingOpen();
pop();
}
appendToCurrentNodeAndPushElementMayFoster(elementName, attributes);
attributes = nullptr;
NS_HTML5_BREAK(starttagloop);
}
case FIELDSET: {
@@ -1151,42 +1108,35 @@ nsHtml5TreeBuilder::startTag(nsHtml5Elem
generateImpliedEndTagsExceptFor(node->name);
if (!!MOZ_UNLIKELY(mViewSource) && eltPos != currentPtr) {
errUnclosedElementsImplied(eltPos, name);
}
while (currentPtr >= eltPos) {
pop();
}
break;
- } else if (!eltPos || (node->isSpecial() &&
- (node->ns != kNameSpaceID_XHTML ||
- (node->name != nsGkAtoms::p &&
- node->name != nsGkAtoms::address &&
- node->name != nsGkAtoms::div)))) {
+ } else if (!eltPos || (node->isSpecial() && (node->ns != kNameSpaceID_XHTML || (node->name != nsGkAtoms::p && node->name != nsGkAtoms::address && node->name != nsGkAtoms::div)))) {
break;
}
eltPos--;
}
implicitlyCloseP();
appendToCurrentNodeAndPushElementMayFoster(elementName, attributes);
attributes = nullptr;
NS_HTML5_BREAK(starttagloop);
}
case PLAINTEXT: {
implicitlyCloseP();
appendToCurrentNodeAndPushElementMayFoster(elementName, attributes);
- tokenizer->setStateAndEndTagExpectation(
- nsHtml5Tokenizer::PLAINTEXT, elementName);
+ tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::PLAINTEXT, elementName);
attributes = nullptr;
NS_HTML5_BREAK(starttagloop);
}
case A: {
- int32_t activeAPos =
- findInListOfActiveFormattingElementsContainsBetweenEndAndLastMarker(
- nsGkAtoms::a);
+ int32_t activeAPos = findInListOfActiveFormattingElementsContainsBetweenEndAndLastMarker(nsGkAtoms::a);
if (activeAPos != -1) {
errFooSeenWhenFooOpen(name);
nsHtml5StackNode* activeA = listOfActiveFormattingElements[activeAPos];
activeA->retain();
adoptionAgencyEndTag(nsGkAtoms::a);
removeFromStack(activeA);
activeAPos = findInListOfActiveFormattingElements(activeA);
if (activeAPos != -1) {
@@ -1197,26 +1147,24 @@ nsHtml5TreeBuilder::startTag(nsHtml5Elem
reconstructTheActiveFormattingElements();
appendToCurrentNodeAndPushFormattingElementMayFoster(elementName, attributes);
attributes = nullptr;
NS_HTML5_BREAK(starttagloop);
}
case B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U:
case FONT: {
reconstructTheActiveFormattingElements();
- maybeForgetEarlierDuplicateFormattingElement(
- elementName->getName(), attributes);
+ maybeForgetEarlierDuplicateFormattingElement(elementName->getName(), attributes);
appendToCurrentNodeAndPushFormattingElementMayFoster(elementName, attributes);
attributes = nullptr;
NS_HTML5_BREAK(starttagloop);
}
case NOBR: {
reconstructTheActiveFormattingElements();
- if (nsHtml5TreeBuilder::NOT_FOUND_ON_STACK !=
- findLastInScope(nsGkAtoms::nobr)) {
+ if (nsHtml5TreeBuilder::NOT_FOUND_ON_STACK != findLastInScope(nsGkAtoms::nobr)) {
errFooSeenWhenFooOpen(name);
adoptionAgencyEndTag(nsGkAtoms::nobr);
reconstructTheActiveFormattingElements();
}
appendToCurrentNodeAndPushFormattingElementMayFoster(elementName, attributes);
attributes = nullptr;
NS_HTML5_BREAK(starttagloop);
}
@@ -1294,32 +1242,30 @@ nsHtml5TreeBuilder::startTag(nsHtml5Elem
reconstructTheActiveFormattingElements();
appendVoidElementToCurrentMayFoster(name, attributes, formPointer);
selfClosing = false;
attributes = nullptr;
NS_HTML5_BREAK(starttagloop);
}
case TEXTAREA: {
appendToCurrentNodeAndPushElementMayFoster(elementName, attributes, formPointer);
- tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::RCDATA,
- elementName);
+ tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::RCDATA, elementName);
originalMode = mode;
mode = TEXT;
needToDropLF = true;
attributes = nullptr;
NS_HTML5_BREAK(starttagloop);
}
case XMP: {
implicitlyCloseP();
reconstructTheActiveFormattingElements();
appendToCurrentNodeAndPushElementMayFoster(elementName, attributes);
originalMode = mode;
mode = TEXT;
- tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::RAWTEXT,
- elementName);
+ tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::RAWTEXT, elementName);
attributes = nullptr;
NS_HTML5_BREAK(starttagloop);
}
case NOSCRIPT: {
if (!scriptingEnabled) {
reconstructTheActiveFormattingElements();
appendToCurrentNodeAndPushElementMayFoster(elementName, attributes);
attributes = nullptr;
@@ -1477,18 +1423,17 @@ nsHtml5TreeBuilder::startTag(nsHtml5Elem
attributes = nullptr;
NS_HTML5_BREAK(starttagloop);
}
case NOSCRIPT: {
if (scriptingEnabled) {
appendToCurrentNodeAndPushElement(elementName, attributes);
originalMode = mode;
mode = TEXT;
- tokenizer->setStateAndEndTagExpectation(
- nsHtml5Tokenizer::RAWTEXT, elementName);
+ tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::RAWTEXT, elementName);
} else {
appendToCurrentNodeAndPushElementMayFoster(elementName, attributes);
mode = IN_HEAD_NOSCRIPT;
}
attributes = nullptr;
NS_HTML5_BREAK(starttagloop);
}
case SCRIPT: {
@@ -1543,18 +1488,17 @@ nsHtml5TreeBuilder::startTag(nsHtml5Elem
attributes = nullptr;
NS_HTML5_BREAK(starttagloop);
}
case STYLE:
case NOFRAMES: {
appendToCurrentNodeAndPushElement(elementName, attributes);
originalMode = mode;
mode = TEXT;
- tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::RAWTEXT,
- elementName);
+ tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::RAWTEXT, elementName);
attributes = nullptr;
NS_HTML5_BREAK(starttagloop);
}
case HEAD: {
errFooSeenWhenFooOpen(name);
NS_HTML5_BREAK(starttagloop);
}
case NOSCRIPT: {
@@ -1743,18 +1687,17 @@ nsHtml5TreeBuilder::startTag(nsHtml5Elem
attributes = nullptr;
}
NS_HTML5_BREAK(starttagloop);
}
case NOFRAMES: {
appendToCurrentNodeAndPushElement(elementName, attributes);
originalMode = mode;
mode = TEXT;
- tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::RAWTEXT,
- elementName);
+ tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::RAWTEXT, elementName);
attributes = nullptr;
NS_HTML5_BREAK(starttagloop);
}
default: {
errStrayStartTag(name);
NS_HTML5_BREAK(starttagloop);
}
}
@@ -1864,41 +1807,38 @@ nsHtml5TreeBuilder::startTag(nsHtml5Elem
NS_HTML5_BREAK(starttagloop);
}
case SCRIPT: {
errFooBetweenHeadAndBody(name);
pushHeadPointerOntoStack();
appendToCurrentNodeAndPushElement(elementName, attributes);
originalMode = mode;
mode = TEXT;
- tokenizer->setStateAndEndTagExpectation(
- nsHtml5Tokenizer::SCRIPT_DATA, elementName);
+ tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::SCRIPT_DATA, elementName);
attributes = nullptr;
NS_HTML5_BREAK(starttagloop);
}
case STYLE:
case NOFRAMES: {
errFooBetweenHeadAndBody(name);
pushHeadPointerOntoStack();
appendToCurrentNodeAndPushElement(elementName, attributes);
originalMode = mode;
mode = TEXT;
- tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::RAWTEXT,
- elementName);
+ tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::RAWTEXT, elementName);
attributes = nullptr;
NS_HTML5_BREAK(starttagloop);
}
case TITLE: {
errFooBetweenHeadAndBody(name);
pushHeadPointerOntoStack();
appendToCurrentNodeAndPushElement(elementName, attributes);
originalMode = mode;
mode = TEXT;
- tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::RCDATA,
- elementName);
+ tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::RCDATA, elementName);
attributes = nullptr;
NS_HTML5_BREAK(starttagloop);
}
case HEAD: {
errStrayStartTag(name);
NS_HTML5_BREAK(starttagloop);
}
default: {
@@ -1963,76 +1903,69 @@ nsHtml5TreeBuilder::startTag(nsHtml5Elem
}
void
nsHtml5TreeBuilder::startTagTitleInHead(nsHtml5ElementName* elementName, nsHtml5HtmlAttributes* attributes)
{
appendToCurrentNodeAndPushElementMayFoster(elementName, attributes);
originalMode = mode;
mode = TEXT;
- tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::RCDATA,
- elementName);
+ tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::RCDATA, elementName);
}
void
nsHtml5TreeBuilder::startTagGenericRawText(nsHtml5ElementName* elementName, nsHtml5HtmlAttributes* attributes)
{
appendToCurrentNodeAndPushElementMayFoster(elementName, attributes);
originalMode = mode;
mode = TEXT;
- tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::RAWTEXT,
- elementName);
+ tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::RAWTEXT, elementName);
}
void
nsHtml5TreeBuilder::startTagScriptInHead(nsHtml5ElementName* elementName, nsHtml5HtmlAttributes* attributes)
{
appendToCurrentNodeAndPushElementMayFoster(elementName, attributes);
originalMode = mode;
mode = TEXT;
- tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::SCRIPT_DATA,
- elementName);
+ tokenizer->setStateAndEndTagExpectation(nsHtml5Tokenizer::SCRIPT_DATA, elementName);
}
void
nsHtml5TreeBuilder::startTagTemplateInHead(nsHtml5ElementName* elementName, nsHtml5HtmlAttributes* attributes)
{
appendToCurrentNodeAndPushElement(elementName, attributes);
insertMarker();
framesetOk = false;
originalMode = mode;
mode = IN_TEMPLATE;
pushTemplateMode(IN_TEMPLATE);
}
bool
nsHtml5TreeBuilder::isTemplateContents()
{
- return nsHtml5TreeBuilder::NOT_FOUND_ON_STACK !=
- findLast(nsGkAtoms::_template);
+ return nsHtml5TreeBuilder::NOT_FOUND_ON_STACK != findLast(nsGkAtoms::_template);
}
bool
nsHtml5TreeBuilder::isTemplateModeStackEmpty()
{
return templateModePtr == -1;
}
bool
nsHtml5TreeBuilder::isSpecialParentInForeign(nsHtml5StackNode* stackNode)
{
int32_t ns = stackNode->ns;
- return (kNameSpaceID_XHTML == ns) || (stackNode->isHtmlIntegrationPoint()) ||
- ((kNameSpaceID_MathML == ns) &&
- (stackNode->getGroup() == MI_MO_MN_MS_MTEXT));
+ return (kNameSpaceID_XHTML == ns) || (stackNode->isHtmlIntegrationPoint()) || ((kNameSpaceID_MathML == ns) && (stackNode->getGroup() == MI_MO_MN_MS_MTEXT));
}
-nsHtml5String
-nsHtml5TreeBuilder::extractCharsetFromContent(nsHtml5String attributeValue,
- nsHtml5TreeBuilder* tb)
+nsHtml5String
+nsHtml5TreeBuilder::extractCharsetFromContent(nsHtml5String attributeValue, nsHtml5TreeBuilder* tb)
{
int32_t charsetState = CHARSET_INITIAL;
int32_t start = -1;
int32_t end = -1;
autoJArray<char16_t,int32_t> buffer = nsHtml5Portability::newCharArrayFromString(attributeValue);
for (int32_t i = 0; i < buffer.length; i++) {
char16_t c = buffer[i];
switch(charsetState) {
@@ -2206,47 +2139,43 @@ nsHtml5TreeBuilder::extractCharsetFromCo
default: {
continue;
}
}
}
}
}
charsetloop_end: ;
- nsHtml5String charset = nullptr;
- if (start != -1) {
- if (end == -1) {
- end = buffer.length;
- }
- charset =
- nsHtml5Portability::newStringFromBuffer(buffer, start, end - start, tb);
+ nsHtml5String charset = nullptr;
+ if (start != -1) {
+ if (end == -1) {
+ end = buffer.length;
+ }
+ charset = nsHtml5Portability::newStringFromBuffer(buffer, start, end - start, tb);
}
return charset;
}
void
nsHtml5TreeBuilder::checkMetaCharset(nsHtml5HtmlAttributes* attributes)
{
- nsHtml5String charset =
- attributes->getValue(nsHtml5AttributeName::ATTR_CHARSET);
+ nsHtml5String charset = attributes->getValue(nsHtml5AttributeName::ATTR_CHARSET);
if (charset) {
if (tokenizer->internalEncodingDeclaration(charset)) {
requestSuspension();
return;
}
return;
}
if (!nsHtml5Portability::lowerCaseLiteralEqualsIgnoreAsciiCaseString("content-type", attributes->getValue(nsHtml5AttributeName::ATTR_HTTP_EQUIV))) {
return;
}
- nsHtml5String content =
- attributes->getValue(nsHtml5AttributeName::ATTR_CONTENT);
+ nsHtml5String content = attributes->getValue(nsHtml5AttributeName::ATTR_CONTENT);
if (content) {
- nsHtml5String extract =
- nsHtml5TreeBuilder::extractCharsetFromContent(content, this);
+ nsHtml5String extract = nsHtml5TreeBuilder::extractCharsetFromContent(content, this);
if (extract) {
if (tokenizer->internalEncodingDeclaration(extract)) {
requestSuspension();
}
}
extract.Release();
}
}
@@ -2319,18 +2248,17 @@ nsHtml5TreeBuilder::endTag(nsHtml5Elemen
NS_HTML5_BREAK(endtagloop);
}
clearStackBackTo(eltPos);
pop();
mode = IN_TABLE_BODY;
continue;
}
case TBODY_OR_THEAD_OR_TFOOT: {
- if (findLastInTableScope(name) ==
- nsHtml5TreeBuilder::NOT_FOUND_ON_STACK) {
+ if (findLastInTableScope(name) == nsHtml5TreeBuilder::NOT_FOUND_ON_STACK) {
errStrayEndTag(name);
NS_HTML5_BREAK(endtagloop);
}
eltPos = findLastOrRoot(nsHtml5TreeBuilder::TR);
if (!eltPos) {
MOZ_ASSERT(fragment || isTemplateContents());
errNoTableRowToClose();
NS_HTML5_BREAK(endtagloop);
@@ -2492,21 +2420,18 @@ nsHtml5TreeBuilder::endTag(nsHtml5Elemen
}
clearTheListOfActiveFormattingElementsUpToTheLastMarker();
mode = IN_ROW;
NS_HTML5_BREAK(endtagloop);
}
case TABLE:
case TBODY_OR_THEAD_OR_TFOOT:
case TR: {
- if (findLastInTableScope(name) ==
- nsHtml5TreeBuilder::NOT_FOUND_ON_STACK) {
- MOZ_ASSERT(name == nsGkAtoms::tbody || name == nsGkAtoms::tfoot ||
- name == nsGkAtoms::thead || fragment ||
- isTemplateContents());
+ if (findLastInTableScope(name) == nsHtml5TreeBuilder::NOT_FOUND_ON_STACK) {
+ MOZ_ASSERT(name == nsGkAtoms::tbody || name == nsGkAtoms::tfoot || name == nsGkAtoms::thead || fragment || isTemplateContents());
errStrayEndTag(name);
NS_HTML5_BREAK(endtagloop);
}
closeTheCell(findLastInTableScopeTdTh());
continue;
}
case BODY:
case CAPTION:
@@ -2842,18 +2767,17 @@ nsHtml5TreeBuilder::endTag(nsHtml5Elemen
errStrayEndTag(name);
NS_HTML5_BREAK(endtagloop);
}
}
}
case IN_COLUMN_GROUP: {
switch(group) {
case COLGROUP: {
- if (!currentPtr ||
- stack[currentPtr]->getGroup() == nsHtml5TreeBuilder::TEMPLATE) {
+ if (!currentPtr || stack[currentPtr]->getGroup() == nsHtml5TreeBuilder::TEMPLATE) {
MOZ_ASSERT(fragment || isTemplateContents());
errGarbageInColgroup();
NS_HTML5_BREAK(endtagloop);
}
pop();
mode = IN_TABLE;
NS_HTML5_BREAK(endtagloop);
}
@@ -2861,18 +2785,17 @@ nsHtml5TreeBuilder::endTag(nsHtml5Elemen
errStrayEndTag(name);
NS_HTML5_BREAK(endtagloop);
}
case TEMPLATE: {
endTagTemplateInHead();
NS_HTML5_BREAK(endtagloop);
}
default: {
- if (!currentPtr ||
- stack[currentPtr]->getGroup() == nsHtml5TreeBuilder::TEMPLATE) {
+ if (!currentPtr || stack[currentPtr]->getGroup() == nsHtml5TreeBuilder::TEMPLATE) {
MOZ_ASSERT(fragment || isTemplateContents());
errGarbageInColgroup();
NS_HTML5_BREAK(endtagloop);
}
pop();
mode = IN_TABLE;
continue;
}
@@ -2881,18 +2804,17 @@ nsHtml5TreeBuilder::endTag(nsHtml5Elemen
case IN_SELECT_IN_TABLE: {
switch(group) {
case CAPTION:
case TABLE:
case TBODY_OR_THEAD_OR_TFOOT:
case TR:
case TD_OR_TH: {
errEndTagSeenWithSelectOpen(name);
- if (findLastInTableScope(name) !=
- nsHtml5TreeBuilder::NOT_FOUND_ON_STACK) {
+ if (findLastInTableScope(name) != nsHtml5TreeBuilder::NOT_FOUND_ON_STACK) {
eltPos = findLastInTableScope(nsGkAtoms::select);
if (eltPos == nsHtml5TreeBuilder::NOT_FOUND_ON_STACK) {
MOZ_ASSERT(fragment);
NS_HTML5_BREAK(endtagloop);
}
while (currentPtr >= eltPos) {
pop();
}
@@ -2913,18 +2835,17 @@ nsHtml5TreeBuilder::endTag(nsHtml5Elemen
pop();
NS_HTML5_BREAK(endtagloop);
} else {
errStrayEndTag(name);
NS_HTML5_BREAK(endtagloop);
}
}
case OPTGROUP: {
- if (isCurrent(nsGkAtoms::option) &&
- nsGkAtoms::optgroup == stack[currentPtr - 1]->name) {
+ if (isCurrent(nsGkAtoms::option) && nsGkAtoms::optgroup == stack[currentPtr - 1]->name) {
pop();
}
if (isCurrent(nsGkAtoms::optgroup)) {
pop();
} else {
errStrayEndTag(name);
}
NS_HTML5_BREAK(endtagloop);
@@ -3100,18 +3021,17 @@ nsHtml5TreeBuilder::endTagTemplateInHead
popTemplateMode();
resetTheInsertionMode();
}
int32_t
nsHtml5TreeBuilder::findLastInTableScopeOrRootTemplateTbodyTheadTfoot()
{
for (int32_t i = currentPtr; i > 0; i--) {
- if (stack[i]->getGroup() == nsHtml5TreeBuilder::TBODY_OR_THEAD_OR_TFOOT ||
- stack[i]->getGroup() == nsHtml5TreeBuilder::TEMPLATE) {
+ if (stack[i]->getGroup() == nsHtml5TreeBuilder::TBODY_OR_THEAD_OR_TFOOT || stack[i]->getGroup() == nsHtml5TreeBuilder::TEMPLATE) {
return i;
}
}
return 0;
}
int32_t
nsHtml5TreeBuilder::findLast(nsIAtom* name)
@@ -3126,18 +3046,17 @@ nsHtml5TreeBuilder::findLast(nsIAtom* na
int32_t
nsHtml5TreeBuilder::findLastInTableScope(nsIAtom* name)
{
for (int32_t i = currentPtr; i > 0; i--) {
if (stack[i]->ns == kNameSpaceID_XHTML) {
if (stack[i]->name == name) {
return i;
- } else if (stack[i]->name == nsGkAtoms::table ||
- stack[i]->name == nsGkAtoms::_template) {
+ } else if (stack[i]->name == nsGkAtoms::table || stack[i]->name == nsGkAtoms::_template) {
return nsHtml5TreeBuilder::NOT_FOUND_ON_STACK;
}
}
}
return nsHtml5TreeBuilder::NOT_FOUND_ON_STACK;
}
int32_t
@@ -3173,34 +3092,32 @@ nsHtml5TreeBuilder::findLastInScope(nsIA
int32_t
nsHtml5TreeBuilder::findLastInListScope(nsIAtom* name)
{
for (int32_t i = currentPtr; i > 0; i--) {
if (stack[i]->ns == kNameSpaceID_XHTML) {
if (stack[i]->name == name) {
return i;
- } else if (stack[i]->name == nsGkAtoms::ul ||
- stack[i]->name == nsGkAtoms::ol) {
+ } else if (stack[i]->name == nsGkAtoms::ul || stack[i]->name == nsGkAtoms::ol) {
return nsHtml5TreeBuilder::NOT_FOUND_ON_STACK;
}
}
if (stack[i]->isScoping()) {
return nsHtml5TreeBuilder::NOT_FOUND_ON_STACK;
}
}
return nsHtml5TreeBuilder::NOT_FOUND_ON_STACK;
}
int32_t
nsHtml5TreeBuilder::findLastInScopeHn()
{
for (int32_t i = currentPtr; i > 0; i--) {
- if (stack[i]->getGroup() ==
- nsHtml5TreeBuilder::H1_OR_H2_OR_H3_OR_H4_OR_H5_OR_H6) {
+ if (stack[i]->getGroup() == nsHtml5TreeBuilder::H1_OR_H2_OR_H3_OR_H4_OR_H5_OR_H6) {
return i;
} else if (stack[i]->isScoping()) {
return nsHtml5TreeBuilder::NOT_FOUND_ON_STACK;
}
}
return nsHtml5TreeBuilder::NOT_FOUND_ON_STACK;
}
@@ -3253,35 +3170,30 @@ nsHtml5TreeBuilder::generateImpliedEndTa
}
bool
nsHtml5TreeBuilder::isSecondOnStackBody()
{
return currentPtr >= 1 && stack[1]->getGroup() == nsHtml5TreeBuilder::BODY;
}
-void
-nsHtml5TreeBuilder::documentModeInternal(
- nsHtml5DocumentMode m,
- nsHtml5String publicIdentifier,
- nsHtml5String systemIdentifier,
- bool html4SpecificAdditionalErrorChecks)
+void
+nsHtml5TreeBuilder::documentModeInternal(nsHtml5DocumentMode m, nsHtml5String publicIdentifier, nsHtml5String systemIdentifier, bool html4SpecificAdditionalErrorChecks)
{
if (isSrcdocDocument) {
quirks = false;
this->documentMode(STANDARDS_MODE);
return;
}
quirks = (m == QUIRKS_MODE);
this->documentMode(m);
}
-bool
-nsHtml5TreeBuilder::isAlmostStandards(nsHtml5String publicIdentifier,
- nsHtml5String systemIdentifier)
+bool
+nsHtml5TreeBuilder::isAlmostStandards(nsHtml5String publicIdentifier, nsHtml5String systemIdentifier)
{
if (nsHtml5Portability::lowerCaseLiteralEqualsIgnoreAsciiCaseString("-//w3c//dtd xhtml 1.0 transitional//en", publicIdentifier)) {
return true;
}
if (nsHtml5Portability::lowerCaseLiteralEqualsIgnoreAsciiCaseString("-//w3c//dtd xhtml 1.0 frameset//en", publicIdentifier)) {
return true;
}
if (systemIdentifier) {
@@ -3290,21 +3202,18 @@ nsHtml5TreeBuilder::isAlmostStandards(ns
}
if (nsHtml5Portability::lowerCaseLiteralEqualsIgnoreAsciiCaseString("-//w3c//dtd html 4.01 frameset//en", publicIdentifier)) {
return true;
}
}
return false;
}
-bool
-nsHtml5TreeBuilder::isQuirky(nsIAtom* name,
- nsHtml5String publicIdentifier,
- nsHtml5String systemIdentifier,
- bool forceQuirks)
+bool
+nsHtml5TreeBuilder::isQuirky(nsIAtom* name, nsHtml5String publicIdentifier, nsHtml5String systemIdentifier, bool forceQuirks)
{
if (forceQuirks) {
return true;
}
if (name != nsGkAtoms::html) {
return true;
}
if (publicIdentifier) {
@@ -3336,16 +3245,17 @@ nsHtml5TreeBuilder::closeTheCell(int32_t
if (!!MOZ_UNLIKELY(mViewSource) && eltPos != currentPtr) {
errUnclosedElementsCell(eltPos);
}
while (currentPtr >= eltPos) {
pop();
}
clearTheListOfActiveFormattingElementsUpToTheLastMarker();
mode = IN_ROW;
+ return;
}
int32_t
nsHtml5TreeBuilder::findLastInTableScopeTdTh()
{
for (int32_t i = currentPtr; i > 0; i--) {
nsIAtom* name = stack[i]->name;
if (stack[i]->ns == kNameSpaceID_XHTML) {
@@ -3359,20 +3269,17 @@ nsHtml5TreeBuilder::findLastInTableScope
return nsHtml5TreeBuilder::NOT_FOUND_ON_STACK;
}
void
nsHtml5TreeBuilder::clearStackBackTo(int32_t eltPos)
{
int32_t eltGroup = stack[eltPos]->getGroup();
while (currentPtr > eltPos) {
- if (stack[currentPtr]->ns == kNameSpaceID_XHTML &&
- stack[currentPtr]->getGroup() == TEMPLATE &&
- (eltGroup == TABLE || eltGroup == TBODY_OR_THEAD_OR_TFOOT ||
- eltGroup == TR || !eltPos)) {
+ if (stack[currentPtr]->ns == kNameSpaceID_XHTML && stack[currentPtr]->getGroup() == TEMPLATE && (eltGroup == TABLE || eltGroup == TBODY_OR_THEAD_OR_TFOOT || eltGroup == TR || !eltPos)) {
return;
}
pop();
}
}
void
nsHtml5TreeBuilder::resetTheInsertionMode()
@@ -3380,18 +3287,17 @@ nsHtml5TreeBuilder::resetTheInsertionMod
nsHtml5StackNode* node;
nsIAtom* name;
int32_t ns;
for (int32_t i = currentPtr; i >= 0; i--) {
node = stack[i];
name = node->name;
ns = node->ns;
if (!i) {
- if (!(contextNamespace == kNameSpaceID_XHTML &&
- (contextName == nsGkAtoms::td || contextName == nsGkAtoms::th))) {
+ if (!(contextNamespace == kNameSpaceID_XHTML && (contextName == nsGkAtoms::td || contextName == nsGkAtoms::th))) {
if (fragment) {
name = contextName;
ns = contextNamespace;
}
} else {
mode = framesetOk ? FRAMESET_OK : IN_BODY;
return;
}
@@ -3413,18 +3319,17 @@ nsHtml5TreeBuilder::resetTheInsertionMod
mode = IN_SELECT;
return;
} else if (nsGkAtoms::td == name || nsGkAtoms::th == name) {
mode = IN_CELL;
return;
} else if (nsGkAtoms::tr == name) {
mode = IN_ROW;
return;
- } else if (nsGkAtoms::tbody == name || nsGkAtoms::thead == name ||
- nsGkAtoms::tfoot == name) {
+ } else if (nsGkAtoms::tbody == name || nsGkAtoms::thead == name || nsGkAtoms::tfoot == name) {
mode = IN_TABLE_BODY;
return;
} else if (nsGkAtoms::caption == name) {
mode = IN_CAPTION;
return;
} else if (nsGkAtoms::colgroup == name) {
mode = IN_COLUMN_GROUP;
return;
@@ -3702,22 +3607,17 @@ nsHtml5TreeBuilder::adoptionAgencyEndTag
continue;
}
if (nodePos == furthestBlockPos) {
bookmark = nodeListPos + 1;
}
MOZ_ASSERT(node == listOfActiveFormattingElements[nodeListPos]);
MOZ_ASSERT(node == stack[nodePos]);
nsIContentHandle* clone = createElement(kNameSpaceID_XHTML, node->name, node->attributes->cloneAttributes(nullptr), commonAncestor->node);
- nsHtml5StackNode* newNode = createStackNode(node->getFlags(),
- node->ns,
- node->name,
- clone,
- node->popName,
- node->attributes);
+ nsHtml5StackNode* newNode = createStackNode(node->getFlags(), node->ns, node->name, clone, node->popName, node->attributes);
node->dropAttributes();
stack[nodePos] = newNode;
newNode->retain();
listOfActiveFormattingElements[nodeListPos] = newNode;
node->release(this);
node->release(this);
node = newNode;
detachFromParent(lastNode->node);
@@ -3728,23 +3628,17 @@ nsHtml5TreeBuilder::adoptionAgencyEndTag
detachFromParent(lastNode->node);
insertIntoFosterParent(lastNode->node);
} else {
detachFromParent(lastNode->node);
appendElement(lastNode->node, commonAncestor->node);
}
nsIContentHandle* clone = createElement(kNameSpaceID_XHTML, formattingElt->name, formattingElt->attributes->cloneAttributes(nullptr), furthestBlock->node);
- nsHtml5StackNode* formattingClone =
- createStackNode(formattingElt->getFlags(),
- formattingElt->ns,
- formattingElt->name,
- clone,
- formattingElt->popName,
- formattingElt->attributes);
+ nsHtml5StackNode* formattingClone = createStackNode(formattingElt->getFlags(), formattingElt->ns, formattingElt->name, clone, formattingElt->popName, formattingElt->attributes);
formattingElt->dropAttributes();
appendChildrenToNewParent(furthestBlock->node, clone);
appendElement(clone, furthestBlock->node);
removeFromListOfActiveFormattingElements(formattingEltListPos);
insertIntoListOfActiveFormattingElements(formattingClone, bookmark);
MOZ_ASSERT(formattingEltStackPos < furthestBlockPos);
removeFromStack(formattingEltStackPos);
insertIntoStack(formattingClone, furthestBlockPos);
@@ -3902,125 +3796,104 @@ nsHtml5TreeBuilder::reconstructTheActive
nsHtml5StackNode* currentNode = stack[currentPtr];
nsIContentHandle* clone;
if (currentNode->isFosterParenting()) {
clone = createAndInsertFosterParentedElement(kNameSpaceID_XHTML, entry->name, entry->attributes->cloneAttributes(nullptr));
} else {
clone = createElement(kNameSpaceID_XHTML, entry->name, entry->attributes->cloneAttributes(nullptr), currentNode->node);
appendElement(clone, currentNode->node);
}
- nsHtml5StackNode* entryClone = createStackNode(entry->getFlags(),
- entry->ns,
- entry->name,
- clone,
- entry->popName,
- entry->attributes);
+ nsHtml5StackNode* entryClone = createStackNode(entry->getFlags(), entry->ns, entry->name, clone, entry->popName, entry->attributes);
entry->dropAttributes();
push(entryClone);
listOfActiveFormattingElements[entryPos] = entryClone;
entry->release(this);
entryClone->retain();
}
}
-void
+void
nsHtml5TreeBuilder::notifyUnusedStackNode(int32_t idxInStackNodes)
{
if (idxInStackNodes < stackNodesIdx) {
stackNodesIdx = idxInStackNodes;
}
}
-nsHtml5StackNode*
+nsHtml5StackNode*
nsHtml5TreeBuilder::getUnusedStackNode()
{
while (stackNodesIdx < numStackNodes) {
if (stackNodes[stackNodesIdx]->isUnused()) {
return stackNodes[stackNodesIdx++];
}
stackNodesIdx++;
}
if (stackNodesIdx < stackNodes.length) {
stackNodes[stackNodesIdx] = new nsHtml5StackNode(stackNodesIdx);
numStackNodes++;
return stackNodes[stackNodesIdx++];
}
- jArray<nsHtml5StackNode*, int32_t> newStack =
- jArray<nsHtml5StackNode*, int32_t>::newJArray(stackNodes.length + 64);
+ jArray<nsHtml5StackNode*,int32_t> newStack = jArray<nsHtml5StackNode*,int32_t>::newJArray(stackNodes.length + 64);
nsHtml5ArrayCopy::arraycopy(stackNodes, newStack, stackNodes.length);
stackNodes = newStack;
stackNodes[stackNodesIdx] = new nsHtml5StackNode(stackNodesIdx);
numStackNodes++;
return stackNodes[stackNodesIdx++];
}
-nsHtml5StackNode*
-nsHtml5TreeBuilder::createStackNode(int32_t flags,
- int32_t ns,
- nsIAtom* name,
- nsIContentHandle* node,
- nsIAtom* popName,
- nsHtml5HtmlAttributes* attributes)
+nsHtml5StackNode*
+nsHtml5TreeBuilder::createStackNode(int32_t flags, int32_t ns, nsIAtom* name, nsIContentHandle* node, nsIAtom* popName, nsHtml5HtmlAttributes* attributes)
{
nsHtml5StackNode* instance = getUnusedStackNode();
instance->setValues(flags, ns, name, node, popName, attributes);
return instance;
}
-nsHtml5StackNode*
-nsHtml5TreeBuilder::createStackNode(nsHtml5ElementName* elementName,
- nsIContentHandle* node)
+nsHtml5StackNode*
+nsHtml5TreeBuilder::createStackNode(nsHtml5ElementName* elementName, nsIContentHandle* node)
{
nsHtml5StackNode* instance = getUnusedStackNode();
instance->setValues(elementName, node);
return instance;
}
-nsHtml5StackNode*
-nsHtml5TreeBuilder::createStackNode(nsHtml5ElementName* elementName,
- nsIContentHandle* node,
- nsHtml5HtmlAttributes* attributes)
+nsHtml5StackNode*
+nsHtml5TreeBuilder::createStackNode(nsHtml5ElementName* elementName, nsIContentHandle* node, nsHtml5HtmlAttributes* attributes)
{
nsHtml5StackNode* instance = getUnusedStackNode();
instance->setValues(elementName, node, attributes);
return instance;
}
-nsHtml5StackNode*
-nsHtml5TreeBuilder::createStackNode(nsHtml5ElementName* elementName,
- nsIContentHandle* node,
- nsIAtom* popName)
+nsHtml5StackNode*
+nsHtml5TreeBuilder::createStackNode(nsHtml5ElementName* elementName, nsIContentHandle* node, nsIAtom* popName)
{
nsHtml5StackNode* instance = getUnusedStackNode();
instance->setValues(elementName, node, popName);
return instance;
}
-nsHtml5StackNode*
-nsHtml5TreeBuilder::createStackNode(nsHtml5ElementName* elementName,
- nsIAtom* popName,
- nsIContentHandle* node)
+nsHtml5StackNode*
+nsHtml5TreeBuilder::createStackNode(nsHtml5ElementName* elementName, nsIAtom* popName, nsIContentHandle* node)
{
nsHtml5StackNode* instance = getUnusedStackNode();
instance->setValues(elementName, popName, node);
return instance;
}
-nsHtml5StackNode*
-nsHtml5TreeBuilder::createStackNode(nsHtml5ElementName* elementName,
- nsIContentHandle* node,
- nsIAtom* popName,
- bool markAsIntegrationPoint)
+nsHtml5StackNode*
+nsHtml5TreeBuilder::createStackNode(nsHtml5ElementName* elementName, nsIContentHandle* node, nsIAtom* popName, bool markAsIntegrationPoint)
{
nsHtml5StackNode* instance = getUnusedStackNode();
instance->setValues(elementName, node, popName, markAsIntegrationPoint);
return instance;
}
-void
+void
nsHtml5TreeBuilder::insertIntoFosterParent(nsIContentHandle* child)
{
int32_t tablePos = findLastOrRoot(nsHtml5TreeBuilder::TABLE);
int32_t templatePos = findLastOrRoot(nsHtml5TreeBuilder::TEMPLATE);
if (templatePos >= tablePos) {
appendElement(child, stack[templatePos]->node);
return;
}
@@ -4108,18 +3981,17 @@ nsHtml5TreeBuilder::appendHtmlElementToD
{
appendHtmlElementToDocumentAndPush(tokenizer->emptyAttributes());
}
void
nsHtml5TreeBuilder::appendToCurrentNodeAndPushHeadElement(nsHtml5HtmlAttributes* attributes)
{
nsIContentHandle* currentNode = stack[currentPtr]->node;
- nsIContentHandle* elt =
- createElement(kNameSpaceID_XHTML, nsGkAtoms::head, attributes, currentNode);
+ nsIContentHandle* elt = createElement(kNameSpaceID_XHTML, nsGkAtoms::head, attributes, currentNode);
appendElement(elt, currentNode);
headPointer = elt;
nsHtml5StackNode* node = createStackNode(nsHtml5ElementName::ELT_HEAD, elt);
push(node);
}
void
nsHtml5TreeBuilder::appendToCurrentNodeAndPushBodyElement(nsHtml5HtmlAttributes* attributes)
@@ -4135,21 +4007,19 @@ nsHtml5TreeBuilder::appendToCurrentNodeA
void
nsHtml5TreeBuilder::appendToCurrentNodeAndPushFormElementMayFoster(nsHtml5HtmlAttributes* attributes)
{
nsIContentHandle* elt;
nsHtml5StackNode* current = stack[currentPtr];
if (current->isFosterParenting()) {
- elt = createAndInsertFosterParentedElement(
- kNameSpaceID_XHTML, nsGkAtoms::form, attributes);
+ elt = createAndInsertFosterParentedElement(kNameSpaceID_XHTML, nsGkAtoms::form, attributes);
} else {
- elt = createElement(
- kNameSpaceID_XHTML, nsGkAtoms::form, attributes, current->node);
+ elt = createElement(kNameSpaceID_XHTML, nsGkAtoms::form, attributes, current->node);
appendElement(elt, current->node);
}
if (!isTemplateContents()) {
formPointer = elt;
}
nsHtml5StackNode* node = createStackNode(nsHtml5ElementName::ELT_FORM, elt);
push(node);
}
@@ -4157,35 +4027,32 @@ nsHtml5TreeBuilder::appendToCurrentNodeA
void
nsHtml5TreeBuilder::appendToCurrentNodeAndPushFormattingElementMayFoster(nsHtml5ElementName* elementName, nsHtml5HtmlAttributes* attributes)
{
nsHtml5HtmlAttributes* clone = attributes->cloneAttributes(nullptr);
nsIContentHandle* elt;
nsHtml5StackNode* current = stack[currentPtr];
if (current->isFosterParenting()) {
- elt = createAndInsertFosterParentedElement(
- kNameSpaceID_XHTML, elementName->getName(), attributes);
+ elt = createAndInsertFosterParentedElement(kNameSpaceID_XHTML, elementName->getName(), attributes);
} else {
- elt = createElement(
- kNameSpaceID_XHTML, elementName->getName(), attributes, current->node);
+ elt = createElement(kNameSpaceID_XHTML, elementName->getName(), attributes, current->node);
appendElement(elt, current->node);
}
nsHtml5StackNode* node = createStackNode(elementName, elt, clone);
push(node);
append(node);
node->retain();
}
void
nsHtml5TreeBuilder::appendToCurrentNodeAndPushElement(nsHtml5ElementName* elementName, nsHtml5HtmlAttributes* attributes)
{
nsIContentHandle* currentNode = stack[currentPtr]->node;
- nsIContentHandle* elt = createElement(
- kNameSpaceID_XHTML, elementName->getName(), attributes, currentNode);
+ nsIContentHandle* elt = createElement(kNameSpaceID_XHTML, elementName->getName(), attributes, currentNode);
appendElement(elt, currentNode);
if (nsHtml5ElementName::ELT_TEMPLATE == elementName) {
elt = getDocumentFragmentForTemplate(elt);
}
nsHtml5StackNode* node = createStackNode(elementName, elt);
push(node);
}
@@ -4218,26 +4085,24 @@ nsHtml5TreeBuilder::appendToCurrentNodeA
nsHtml5StackNode* current = stack[currentPtr];
if (current->isFosterParenting()) {
elt = createAndInsertFosterParentedElement(kNameSpaceID_MathML, popName, attributes);
} else {
elt = createElement(kNameSpaceID_MathML, popName, attributes, current->node);
appendElement(elt, current->node);
}
- nsHtml5StackNode* node =
- createStackNode(elementName, elt, popName, markAsHtmlIntegrationPoint);
+ nsHtml5StackNode* node = createStackNode(elementName, elt, popName, markAsHtmlIntegrationPoint);
push(node);
}
bool
nsHtml5TreeBuilder::annotationXmlEncodingPermitsHtml(nsHtml5HtmlAttributes* attributes)
{
- nsHtml5String encoding =
- attributes->getValue(nsHtml5AttributeName::ATTR_ENCODING);
+ nsHtml5String encoding = attributes->getValue(nsHtml5AttributeName::ATTR_ENCODING);
if (!encoding) {
return false;
}
return nsHtml5Portability::lowerCaseLiteralEqualsIgnoreAsciiCaseString("application/xhtml+xml", encoding) || nsHtml5Portability::lowerCaseLiteralEqualsIgnoreAsciiCaseString("text/html", encoding);
}
void
nsHtml5TreeBuilder::appendToCurrentNodeAndPushElementMayFosterSVG(nsHtml5ElementName* elementName, nsHtml5HtmlAttributes* attributes)
@@ -4259,24 +4124,19 @@ nsHtml5TreeBuilder::appendToCurrentNodeA
void
nsHtml5TreeBuilder::appendToCurrentNodeAndPushElementMayFoster(nsHtml5ElementName* elementName, nsHtml5HtmlAttributes* attributes, nsIContentHandle* form)
{
nsIContentHandle* elt;
nsIContentHandle* formOwner = !form || fragment || isTemplateContents() ? nullptr : form;
nsHtml5StackNode* current = stack[currentPtr];
if (current->isFosterParenting()) {
- elt = createAndInsertFosterParentedElement(
- kNameSpaceID_XHTML, elementName->getName(), attributes, formOwner);
+ elt = createAndInsertFosterParentedElement(kNameSpaceID_XHTML, elementName->getName(), attributes, formOwner);
} else {
- elt = createElement(kNameSpaceID_XHTML,
- elementName->getName(),
- attributes,
- formOwner,
- current->node);
+ elt = createElement(kNameSpaceID_XHTML, elementName->getName(), attributes, formOwner, current->node);
appendElement(elt, current->node);
}
nsHtml5StackNode* node = createStackNode(elementName, elt);
push(node);
}
void
nsHtml5TreeBuilder::appendVoidElementToCurrentMayFoster(nsIAtom* name, nsHtml5HtmlAttributes* attributes, nsIContentHandle* form)
@@ -4355,18 +4215,17 @@ nsHtml5TreeBuilder::appendVoidElementToC
elementPushed(kNameSpaceID_XHTML, name, elt);
elementPopped(kNameSpaceID_XHTML, name, elt);
}
void
nsHtml5TreeBuilder::appendVoidFormToCurrent(nsHtml5HtmlAttributes* attributes)
{
nsIContentHandle* currentNode = stack[currentPtr]->node;
- nsIContentHandle* elt =
- createElement(kNameSpaceID_XHTML, nsGkAtoms::form, attributes, currentNode);
+ nsIContentHandle* elt = createElement(kNameSpaceID_XHTML, nsGkAtoms::form, attributes, currentNode);
formPointer = elt;
appendElement(elt, currentNode);
elementPushed(kNameSpaceID_XHTML, nsGkAtoms::form, elt);
elementPopped(kNameSpaceID_XHTML, nsGkAtoms::form, elt);
}
void
nsHtml5TreeBuilder::requestSuspension()
@@ -4422,18 +4281,17 @@ nsHtml5TreeBuilder::setIsSrcdocDocument(
{
this->isSrcdocDocument = isSrcdocDocument;
}
void
nsHtml5TreeBuilder::flushCharacters()
{
if (charBufferLen > 0) {
- if ((mode == IN_TABLE || mode == IN_TABLE_BODY || mode == IN_ROW) &&
- charBufferContainsNonWhitespace()) {
+ if ((mode == IN_TABLE || mode == IN_TABLE_BODY || mode == IN_ROW) && charBufferContainsNonWhitespace()) {
errNonSpaceInTable();
reconstructTheActiveFormattingElements();
if (!stack[currentPtr]->isFosterParenting()) {
appendCharacters(currentNode(), charBuffer, 0, charBufferLen);
charBufferLen = 0;
return;
}
int32_t tablePos = findLastOrRoot(nsHtml5TreeBuilder::TABLE);
@@ -4476,39 +4334,29 @@ nsHtml5TreeBuilder::charBufferContainsNo
nsAHtml5TreeBuilderState*
nsHtml5TreeBuilder::newSnapshot()
{
jArray<nsHtml5StackNode*,int32_t> listCopy = jArray<nsHtml5StackNode*,int32_t>::newJArray(listPtr + 1);
for (int32_t i = 0; i < listCopy.length; i++) {
nsHtml5StackNode* node = listOfActiveFormattingElements[i];
if (node) {
nsHtml5StackNode* newNode = new nsHtml5StackNode(-1);
- newNode->setValues(node->getFlags(),
- node->ns,
- node->name,
- node->node,
- node->popName,
- node->attributes->cloneAttributes(nullptr));
+ newNode->setValues(node->getFlags(), node->ns, node->name, node->node, node->popName, node->attributes->cloneAttributes(nullptr));
listCopy[i] = newNode;
} else {
listCopy[i] = nullptr;
}
}
jArray<nsHtml5StackNode*,int32_t> stackCopy = jArray<nsHtml5StackNode*,int32_t>::newJArray(currentPtr + 1);
for (int32_t i = 0; i < stackCopy.length; i++) {
nsHtml5StackNode* node = stack[i];
int32_t listIndex = findInListOfActiveFormattingElements(node);
if (listIndex == -1) {
nsHtml5StackNode* newNode = new nsHtml5StackNode(-1);
- newNode->setValues(node->getFlags(),
- node->ns,
- node->name,
- node->node,
- node->popName,
- nullptr);
+ newNode->setValues(node->getFlags(), node->ns, node->name, node->node, node->popName, nullptr);
stackCopy[i] = newNode;
} else {
stackCopy[i] = listCopy[listIndex];
stackCopy[i]->retain();
}
}
jArray<int32_t,int32_t> templateModeStackCopy = jArray<int32_t,int32_t>::newJArray(templateModePtr + 1);
nsHtml5ArrayCopy::arraycopy(templateModeStack, templateModeStackCopy, templateModeStackCopy.length);
@@ -4577,39 +4425,27 @@ nsHtml5TreeBuilder::loadState(nsAHtml5Tr
currentPtr = stackLen - 1;
if (templateModeStack.length < templateModeStackLen) {
templateModeStack = jArray<int32_t,int32_t>::newJArray(templateModeStackLen);
}
templateModePtr = templateModeStackLen - 1;
for (int32_t i = 0; i < listLen; i++) {
nsHtml5StackNode* node = listCopy[i];
if (node) {
- nsHtml5StackNode* newNode = createStackNode(
- node->getFlags(),
- node->ns,
- nsHtml5Portability::newLocalFromLocal(node->name, interner),
- node->node,
- nsHtml5Portability::newLocalFromLocal(node->popName, interner),
- node->attributes->cloneAttributes(nullptr));
+ nsHtml5StackNode* newNode = createStackNode(node->getFlags(), node->ns, nsHtml5Portability::newLocalFromLocal(node->name, interner), node->node, nsHtml5Portability::newLocalFromLocal(node->popName, interner), node->attributes->cloneAttributes(nullptr));
listOfActiveFormattingElements[i] = newNode;
} else {
listOfActiveFormattingElements[i] = nullptr;
}
}
for (int32_t i = 0; i < stackLen; i++) {
nsHtml5StackNode* node = stackCopy[i];
int32_t listIndex = findInArray(node, listCopy);
if (listIndex == -1) {
- nsHtml5StackNode* newNode = createStackNode(
- node->getFlags(),
- node->ns,
- nsHtml5Portability::newLocalFromLocal(node->name, interner),
- node->node,
- nsHtml5Portability::newLocalFromLocal(node->popName, interner),
- nullptr);
+ nsHtml5StackNode* newNode = createStackNode(node->getFlags(), node->ns, nsHtml5Portability::newLocalFromLocal(node->name, interner), node->node, nsHtml5Portability::newLocalFromLocal(node->popName, interner), nullptr);
stack[i] = newNode;
} else {
stack[i] = listOfActiveFormattingElements[listIndex];
stack[i]->retain();
}
}
nsHtml5ArrayCopy::arraycopy(templateModeStackCopy, templateModeStack, templateModeStackLen);
formPointer = snapshot->getFormPointer();
--- a/parser/html/nsHtml5TreeBuilder.h
+++ b/parser/html/nsHtml5TreeBuilder.h
@@ -156,33 +156,29 @@ class nsHtml5TreeBuilder : public nsAHtm
static const int32_t DD_OR_DT = 41;
static const int32_t H1_OR_H2_OR_H3_OR_H4_OR_H5_OR_H6 = 42;
static const int32_t MARQUEE_OR_APPLET = 43;
static const int32_t PRE_OR_LISTING = 44;
- static const int32_t
- B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U =
- 45;
+ static const int32_t B_OR_BIG_OR_CODE_OR_EM_OR_I_OR_S_OR_SMALL_OR_STRIKE_OR_STRONG_OR_TT_OR_U = 45;
static const int32_t UL_OR_OL_OR_DL = 46;
static const int32_t IFRAME = 47;
static const int32_t EMBED = 48;
static const int32_t AREA_OR_WBR = 49;
static const int32_t DIV_OR_BLOCKQUOTE_OR_CENTER_OR_MENU = 50;
- static const int32_t
- ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY =
- 51;
+ static const int32_t ADDRESS_OR_ARTICLE_OR_ASIDE_OR_DETAILS_OR_DIALOG_OR_DIR_OR_FIGCAPTION_OR_FIGURE_OR_FOOTER_OR_HEADER_OR_HGROUP_OR_MAIN_OR_NAV_OR_SECTION_OR_SUMMARY = 51;
static const int32_t RUBY_OR_SPAN_OR_SUB_OR_SUP_OR_VAR = 52;
static const int32_t RB_OR_RTC = 53;
static const int32_t PARAM_OR_SOURCE_OR_TRACK = 55;
static const int32_t MGLYPH_OR_MALIGNMARK = 56;
@@ -294,17 +290,17 @@ class nsHtml5TreeBuilder : public nsAHtm
bool scriptingEnabled;
bool needToDropLF;
bool fragment;
nsIAtom* contextName;
int32_t contextNamespace;
nsIContentHandle* contextNode;
autoJArray<int32_t,int32_t> templateModeStack;
int32_t templateModePtr;
- autoJArray<nsHtml5StackNode*, int32_t> stackNodes;
+ autoJArray<nsHtml5StackNode*,int32_t> stackNodes;
int32_t stackNodesIdx;
int32_t numStackNodes;
autoJArray<nsHtml5StackNode*,int32_t> stack;
int32_t currentPtr;
autoJArray<nsHtml5StackNode*,int32_t> listOfActiveFormattingElements;
int32_t listPtr;
nsIContentHandle* formPointer;
nsIContentHandle* headPointer;
@@ -312,64 +308,52 @@ class nsHtml5TreeBuilder : public nsAHtm
protected:
autoJArray<char16_t,int32_t> charBuffer;
int32_t charBufferLen;
private:
bool quirks;
bool isSrcdocDocument;
public:
void startTokenization(nsHtml5Tokenizer* self);
- void doctype(nsIAtom* name,
- nsHtml5String publicIdentifier,
- nsHtml5String systemIdentifier,
- bool forceQuirks);
+ void doctype(nsIAtom* name, nsHtml5String publicIdentifier, nsHtml5String systemIdentifier, bool forceQuirks);
void comment(char16_t* buf, int32_t start, int32_t length);
void characters(const char16_t* buf, int32_t start, int32_t length);
void zeroOriginatingReplacementCharacter();
void eof();
void endTokenization();
void startTag(nsHtml5ElementName* elementName, nsHtml5HtmlAttributes* attributes, bool selfClosing);
private:
void startTagTitleInHead(nsHtml5ElementName* elementName, nsHtml5HtmlAttributes* attributes);
void startTagGenericRawText(nsHtml5ElementName* elementName, nsHtml5HtmlAttributes* attributes);
void startTagScriptInHead(nsHtml5ElementName* elementName, nsHtml5HtmlAttributes* attributes);
void startTagTemplateInHead(nsHtml5ElementName* elementName, nsHtml5HtmlAttributes* attributes);
bool isTemplateContents();
bool isTemplateModeStackEmpty();
bool isSpecialParentInForeign(nsHtml5StackNode* stackNode);
public:
- static nsHtml5String extractCharsetFromContent(nsHtml5String attributeValue,
- nsHtml5TreeBuilder* tb);
-
+ static nsHtml5String extractCharsetFromContent(nsHtml5String attributeValue, nsHtml5TreeBuilder* tb);
private:
void checkMetaCharset(nsHtml5HtmlAttributes* attributes);
public:
void endTag(nsHtml5ElementName* elementName);
private:
void endTagTemplateInHead();
int32_t findLastInTableScopeOrRootTemplateTbodyTheadTfoot();
int32_t findLast(nsIAtom* name);
int32_t findLastInTableScope(nsIAtom* name);
int32_t findLastInButtonScope(nsIAtom* name);
int32_t findLastInScope(nsIAtom* name);
int32_t findLastInListScope(nsIAtom* name);
int32_t findLastInScopeHn();
void generateImpliedEndTagsExceptFor(nsIAtom* name);
void generateImpliedEndTags();
bool isSecondOnStackBody();
- void documentModeInternal(nsHtml5DocumentMode m,
- nsHtml5String publicIdentifier,
- nsHtml5String systemIdentifier,
- bool html4SpecificAdditionalErrorChecks);
- bool isAlmostStandards(nsHtml5String publicIdentifier,
- nsHtml5String systemIdentifier);
- bool isQuirky(nsIAtom* name,
- nsHtml5String publicIdentifier,
- nsHtml5String systemIdentifier,
- bool forceQuirks);
+ void documentModeInternal(nsHtml5DocumentMode m, nsHtml5String publicIdentifier, nsHtml5String systemIdentifier, bool html4SpecificAdditionalErrorChecks);
+ bool isAlmostStandards(nsHtml5String publicIdentifier, nsHtml5String systemIdentifier);
+ bool isQuirky(nsIAtom* name, nsHtml5String publicIdentifier, nsHtml5String systemIdentifier, bool forceQuirks);
void closeTheCell(int32_t eltPos);
int32_t findLastInTableScopeTdTh();
void clearStackBackTo(int32_t eltPos);
void resetTheInsertionMode();
void implicitlyCloseP();
bool debugOnlyClearLastStackSlot();
bool debugOnlyClearLastListSlot();
void pushTemplateMode(int32_t mode);
@@ -401,37 +385,22 @@ class nsHtml5TreeBuilder : public nsAHtm
bool addAttributesToBody(nsHtml5HtmlAttributes* attributes);
void addAttributesToHtml(nsHtml5HtmlAttributes* attributes);
void pushHeadPointerOntoStack();
void reconstructTheActiveFormattingElements();
public:
void notifyUnusedStackNode(int32_t idxInStackNodes);
private:
nsHtml5StackNode* getUnusedStackNode();
- nsHtml5StackNode* createStackNode(int32_t flags,
- int32_t ns,
- nsIAtom* name,
- nsIContentHandle* node,
- nsIAtom* popName,
- nsHtml5HtmlAttributes* attributes);
- nsHtml5StackNode* createStackNode(nsHtml5ElementName* elementName,
- nsIContentHandle* node);
- nsHtml5StackNode* createStackNode(nsHtml5ElementName* elementName,
- nsIContentHandle* node,
- nsHtml5HtmlAttributes* attributes);
- nsHtml5StackNode* createStackNode(nsHtml5ElementName* elementName,
- nsIContentHandle* node,
- nsIAtom* popName);
- nsHtml5StackNode* createStackNode(nsHtml5ElementName* elementName,
- nsIAtom* popName,
- nsIContentHandle* node);
- nsHtml5StackNode* createStackNode(nsHtml5ElementName* elementName,
- nsIContentHandle* node,
- nsIAtom* popName,
- bool markAsIntegrationPoint);
+ nsHtml5StackNode* createStackNode(int32_t flags, int32_t ns, nsIAtom* name, nsIContentHandle* node, nsIAtom* popName, nsHtml5HtmlAttributes* attributes);
+ nsHtml5StackNode* createStackNode(nsHtml5ElementName* elementName, nsIContentHandle* node);
+ nsHtml5StackNode* createStackNode(nsHtml5ElementName* elementName, nsIContentHandle* node, nsHtml5HtmlAttributes* attributes);
+ nsHtml5StackNode* createStackNode(nsHtml5ElementName* elementName, nsIContentHandle* node, nsIAtom* popName);
+ nsHtml5StackNode* createStackNode(nsHtml5ElementName* elementName, nsIAtom* popName, nsIContentHandle* node);
+ nsHtml5StackNode* createStackNode(nsHtml5ElementName* elementName, nsIContentHandle* node, nsIAtom* popName, bool markAsIntegrationPoint);
void insertIntoFosterParent(nsIContentHandle* child);
nsIContentHandle* createAndInsertFosterParentedElement(int32_t ns, nsIAtom* name, nsHtml5HtmlAttributes* attributes);
nsIContentHandle* createAndInsertFosterParentedElement(int32_t ns, nsIAtom* name, nsHtml5HtmlAttributes* attributes, nsIContentHandle* form);
bool isInStack(nsHtml5StackNode* node);
void popTemplateMode();
void pop();
void silentPop();
void popOnEof();
@@ -469,19 +438,17 @@ class nsHtml5TreeBuilder : public nsAHtm
;void insertFosterParentedCharacters(char16_t* buf, int32_t start, int32_t length, nsIContentHandle* table, nsIContentHandle* stackParent);
void appendCharacters(nsIContentHandle* parent, char16_t* buf, int32_t start, int32_t length);
void appendComment(nsIContentHandle* parent, char16_t* buf, int32_t start, int32_t length);
void appendCommentToDocument(char16_t* buf, int32_t start, int32_t length);
void addAttributesToElement(nsIContentHandle* element, nsHtml5HtmlAttributes* attributes);
void markMalformedIfScript(nsIContentHandle* elt);
void start(bool fragmentMode);
void end();
- void appendDoctypeToDocument(nsIAtom* name,
- nsHtml5String publicIdentifier,
- nsHtml5String systemIdentifier);
+ void appendDoctypeToDocument(nsIAtom* name, nsHtml5String publicIdentifier, nsHtml5String systemIdentifier);
void elementPushed(int32_t ns, nsIAtom* name, nsIContentHandle* node);
void elementPopped(int32_t ns, nsIAtom* name, nsIContentHandle* node);
public:
inline bool cdataSectionAllowed()
{
return isInForeign();
}