2 * Copyright (c) 2008-2017 Mozilla Foundation
4 * Permission is hereby granted, free of charge, to any person obtaining a
5 * copy of this software and associated documentation files (the "Software"),
6 * to deal in the Software without restriction, including without limitation
7 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8 * and/or sell copies of the Software, and to permit persons to whom the
9 * Software is furnished to do so, subject to the following conditions:
11 * The above copyright notice and this permission notice shall be included in
12 * all copies or substantial portions of the Software.
14 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
15 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
16 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
17 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
18 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
19 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
20 * DEALINGS IN THE SOFTWARE.
24 * THIS IS A GENERATED FILE. PLEASE DO NOT EDIT.
25 * Please edit AttributeName.java instead and regenerate.
28 #ifndef nsHtml5AttributeName_h
29 #define nsHtml5AttributeName_h
32 #include "nsHtml5AtomTable.h"
33 #include "nsHtml5String.h"
34 #include "nsNameSpaceManager.h"
35 #include "nsIContent.h"
36 #include "nsTraceRefcnt.h"
38 #include "nsHtml5ArrayCopy.h"
39 #include "nsAHtml5TreeBuilderState.h"
40 #include "nsGkAtoms.h"
41 #include "nsHtml5ByteReadable.h"
42 #include "nsHtml5Macros.h"
43 #include "nsIContentHandle.h"
44 #include "nsHtml5Portability.h"
45 #include "nsHtml5ContentCreatorFunction.h"
47 class nsHtml5StreamParser
;
49 class nsHtml5ElementName
;
50 class nsHtml5Tokenizer
;
51 class nsHtml5TreeBuilder
;
52 class nsHtml5MetaScanner
;
53 class nsHtml5UTF16Buffer
;
54 class nsHtml5StateSnapshot
;
55 class nsHtml5Portability
;
57 class nsHtml5AttributeName
{
59 static int32_t* ALL_NO_NS
;
62 static int32_t* XMLNS_NS
;
63 static int32_t* XML_NS
;
64 static int32_t* XLINK_NS
;
67 static nsStaticAtom
** ALL_NO_PREFIX
;
70 static nsStaticAtom
** XMLNS_PREFIX
;
71 static nsStaticAtom
** XLINK_PREFIX
;
72 static nsStaticAtom
** XML_PREFIX
;
73 static RefPtr
<nsAtom
>* SVG_DIFFERENT(nsAtom
* name
, nsAtom
* camel
);
74 static RefPtr
<nsAtom
>* MATH_DIFFERENT(nsAtom
* name
, nsAtom
* camel
);
75 static RefPtr
<nsAtom
>* COLONIFIED_LOCAL(nsAtom
* name
, nsAtom
* suffix
);
78 static RefPtr
<nsAtom
>* SAME_LOCAL(nsAtom
* name
);
79 inline static int32_t levelOrderBinarySearch(jArray
<int32_t, int32_t> data
,
81 int32_t n
= data
.length
;
84 int32_t val
= data
[i
];
87 } else if (val
> key
) {
96 inline static nsHtml5AttributeName
* nameByBuffer(char16_t
* buf
,
98 nsHtml5AtomTable
* interner
) {
99 uint32_t hash
= nsHtml5AttributeName::bufToHash(buf
, length
);
100 jArray
<int32_t, int32_t> hashes
;
101 hashes
= nsHtml5AttributeName::ATTRIBUTE_HASHES
;
102 int32_t index
= levelOrderBinarySearch(hashes
, hash
);
106 nsHtml5AttributeName
* attributeName
=
107 nsHtml5AttributeName::ATTRIBUTE_NAMES
[index
];
108 nsAtom
* name
= attributeName
->getLocal(0);
109 if (!nsHtml5Portability::localEqualsBuffer(name
, buf
, length
)) {
112 return attributeName
;
116 inline static uint32_t bufToHash(char16_t
* buf
, int32_t length
) {
117 uint32_t len
= length
;
118 uint32_t first
= buf
[0];
120 uint32_t second
= 1 << 23;
126 second
= buf
[length
- 4];
130 fourth
= buf
[length
- 2];
134 sixth
= buf
[length
- 1];
136 } else if (length
== 3) {
141 } else if (length
== 2) {
145 return len
+ first
+ second
+ third
+ fourth
+ fifth
+ sixth
;
149 static const int32_t HTML
= 0;
151 static const int32_t MATHML
= 1;
153 static const int32_t SVG
= 2;
157 RefPtr
<nsAtom
>* local
;
158 nsStaticAtom
** prefix
;
160 nsHtml5AttributeName(int32_t* uri
, RefPtr
<nsAtom
>* local
,
161 nsStaticAtom
** prefix
);
164 nsHtml5AttributeName();
165 inline bool isInterned() { return !custom
; }
167 inline void setNameForNonInterned(nsAtom
* name
) {
174 static nsHtml5AttributeName
* createAttributeName(nsAtom
* name
);
175 ~nsHtml5AttributeName();
176 int32_t getUri(int32_t mode
);
177 nsAtom
* getLocal(int32_t mode
);
178 nsStaticAtom
* getPrefix(int32_t mode
);
179 bool equalsAnother(nsHtml5AttributeName
* another
);
180 static nsHtml5AttributeName
* ATTR_ALT
;
181 static nsHtml5AttributeName
* ATTR_DIR
;
182 static nsHtml5AttributeName
* ATTR_DUR
;
183 static nsHtml5AttributeName
* ATTR_END
;
184 static nsHtml5AttributeName
* ATTR_FOR
;
185 static nsHtml5AttributeName
* ATTR_IN2
;
186 static nsHtml5AttributeName
* ATTR_LOW
;
187 static nsHtml5AttributeName
* ATTR_MIN
;
188 static nsHtml5AttributeName
* ATTR_MAX
;
189 static nsHtml5AttributeName
* ATTR_REL
;
190 static nsHtml5AttributeName
* ATTR_REV
;
191 static nsHtml5AttributeName
* ATTR_SRC
;
192 static nsHtml5AttributeName
* ATTR_D
;
193 static nsHtml5AttributeName
* ATTR_R
;
194 static nsHtml5AttributeName
* ATTR_X
;
195 static nsHtml5AttributeName
* ATTR_Y
;
196 static nsHtml5AttributeName
* ATTR_Z
;
197 static nsHtml5AttributeName
* ATTR_K1
;
198 static nsHtml5AttributeName
* ATTR_X1
;
199 static nsHtml5AttributeName
* ATTR_Y1
;
200 static nsHtml5AttributeName
* ATTR_K2
;
201 static nsHtml5AttributeName
* ATTR_X2
;
202 static nsHtml5AttributeName
* ATTR_Y2
;
203 static nsHtml5AttributeName
* ATTR_K3
;
204 static nsHtml5AttributeName
* ATTR_K4
;
205 static nsHtml5AttributeName
* ATTR_XML_SPACE
;
206 static nsHtml5AttributeName
* ATTR_XML_LANG
;
207 static nsHtml5AttributeName
* ATTR_ARIA_GRAB
;
208 static nsHtml5AttributeName
* ATTR_ARIA_VALUEMAX
;
209 static nsHtml5AttributeName
* ATTR_ARIA_LABELLEDBY
;
210 static nsHtml5AttributeName
* ATTR_ARIA_DESCRIBEDBY
;
211 static nsHtml5AttributeName
* ATTR_ARIA_DISABLED
;
212 static nsHtml5AttributeName
* ATTR_ARIA_CHECKED
;
213 static nsHtml5AttributeName
* ATTR_ARIA_SELECTED
;
214 static nsHtml5AttributeName
* ATTR_ARIA_DROPEFFECT
;
215 static nsHtml5AttributeName
* ATTR_ARIA_REQUIRED
;
216 static nsHtml5AttributeName
* ATTR_ARIA_EXPANDED
;
217 static nsHtml5AttributeName
* ATTR_ARIA_PRESSED
;
218 static nsHtml5AttributeName
* ATTR_ARIA_LEVEL
;
219 static nsHtml5AttributeName
* ATTR_ARIA_CHANNEL
;
220 static nsHtml5AttributeName
* ATTR_ARIA_HIDDEN
;
221 static nsHtml5AttributeName
* ATTR_ARIA_SECRET
;
222 static nsHtml5AttributeName
* ATTR_ARIA_POSINSET
;
223 static nsHtml5AttributeName
* ATTR_ARIA_ATOMIC
;
224 static nsHtml5AttributeName
* ATTR_ARIA_INVALID
;
225 static nsHtml5AttributeName
* ATTR_ARIA_TEMPLATEID
;
226 static nsHtml5AttributeName
* ATTR_ARIA_VALUEMIN
;
227 static nsHtml5AttributeName
* ATTR_ARIA_MULTISELECTABLE
;
228 static nsHtml5AttributeName
* ATTR_ARIA_CONTROLS
;
229 static nsHtml5AttributeName
* ATTR_ARIA_MULTILINE
;
230 static nsHtml5AttributeName
* ATTR_ARIA_READONLY
;
231 static nsHtml5AttributeName
* ATTR_ARIA_OWNS
;
232 static nsHtml5AttributeName
* ATTR_ARIA_ACTIVEDESCENDANT
;
233 static nsHtml5AttributeName
* ATTR_ARIA_RELEVANT
;
234 static nsHtml5AttributeName
* ATTR_ARIA_DATATYPE
;
235 static nsHtml5AttributeName
* ATTR_ARIA_VALUENOW
;
236 static nsHtml5AttributeName
* ATTR_ARIA_SORT
;
237 static nsHtml5AttributeName
* ATTR_ARIA_AUTOCOMPLETE
;
238 static nsHtml5AttributeName
* ATTR_ARIA_FLOWTO
;
239 static nsHtml5AttributeName
* ATTR_ARIA_BUSY
;
240 static nsHtml5AttributeName
* ATTR_ARIA_LIVE
;
241 static nsHtml5AttributeName
* ATTR_ARIA_HASPOPUP
;
242 static nsHtml5AttributeName
* ATTR_ARIA_SETSIZE
;
243 static nsHtml5AttributeName
* ATTR_CLEAR
;
244 static nsHtml5AttributeName
* ATTR_DISABLED
;
245 static nsHtml5AttributeName
* ATTR_DEFAULT
;
246 static nsHtml5AttributeName
* ATTR_DATA
;
247 static nsHtml5AttributeName
* ATTR_EQUALCOLUMNS
;
248 static nsHtml5AttributeName
* ATTR_EQUALROWS
;
249 static nsHtml5AttributeName
* ATTR_HSPACE
;
250 static nsHtml5AttributeName
* ATTR_ISMAP
;
251 static nsHtml5AttributeName
* ATTR_LOCAL
;
252 static nsHtml5AttributeName
* ATTR_LSPACE
;
253 static nsHtml5AttributeName
* ATTR_MOVABLELIMITS
;
254 static nsHtml5AttributeName
* ATTR_NOTATION
;
255 static nsHtml5AttributeName
* ATTR_ONDATAAVAILABLE
;
256 static nsHtml5AttributeName
* ATTR_ONPASTE
;
257 static nsHtml5AttributeName
* ATTR_RSPACE
;
258 static nsHtml5AttributeName
* ATTR_ROWALIGN
;
259 static nsHtml5AttributeName
* ATTR_ROTATE
;
260 static nsHtml5AttributeName
* ATTR_SEPARATOR
;
261 static nsHtml5AttributeName
* ATTR_SEPARATORS
;
262 static nsHtml5AttributeName
* ATTR_VSPACE
;
263 static nsHtml5AttributeName
* ATTR_XCHANNELSELECTOR
;
264 static nsHtml5AttributeName
* ATTR_YCHANNELSELECTOR
;
265 static nsHtml5AttributeName
* ATTR_ENABLE_BACKGROUND
;
266 static nsHtml5AttributeName
* ATTR_ONDBLCLICK
;
267 static nsHtml5AttributeName
* ATTR_ONABORT
;
268 static nsHtml5AttributeName
* ATTR_CALCMODE
;
269 static nsHtml5AttributeName
* ATTR_CHECKED
;
270 static nsHtml5AttributeName
* ATTR_FENCE
;
271 static nsHtml5AttributeName
* ATTR_ONSCROLL
;
272 static nsHtml5AttributeName
* ATTR_ONACTIVATE
;
273 static nsHtml5AttributeName
* ATTR_OPACITY
;
274 static nsHtml5AttributeName
* ATTR_SPACING
;
275 static nsHtml5AttributeName
* ATTR_SPECULAREXPONENT
;
276 static nsHtml5AttributeName
* ATTR_SPECULARCONSTANT
;
277 static nsHtml5AttributeName
* ATTR_BORDER
;
278 static nsHtml5AttributeName
* ATTR_ID
;
279 static nsHtml5AttributeName
* ATTR_GRADIENTTRANSFORM
;
280 static nsHtml5AttributeName
* ATTR_GRADIENTUNITS
;
281 static nsHtml5AttributeName
* ATTR_HIDDEN
;
282 static nsHtml5AttributeName
* ATTR_HEADERS
;
283 static nsHtml5AttributeName
* ATTR_LOADING
;
284 static nsHtml5AttributeName
* ATTR_READONLY
;
285 static nsHtml5AttributeName
* ATTR_RENDERING_INTENT
;
286 static nsHtml5AttributeName
* ATTR_SEED
;
287 static nsHtml5AttributeName
* ATTR_SRCDOC
;
288 static nsHtml5AttributeName
* ATTR_STDDEVIATION
;
289 static nsHtml5AttributeName
* ATTR_SANDBOX
;
290 static nsHtml5AttributeName
* ATTR_WORD_SPACING
;
291 static nsHtml5AttributeName
* ATTR_ACCENTUNDER
;
292 static nsHtml5AttributeName
* ATTR_ACCEPT_CHARSET
;
293 static nsHtml5AttributeName
* ATTR_ACCESSKEY
;
294 static nsHtml5AttributeName
* ATTR_ACCENT
;
295 static nsHtml5AttributeName
* ATTR_ACCEPT
;
296 static nsHtml5AttributeName
* ATTR_BEVELLED
;
297 static nsHtml5AttributeName
* ATTR_BASEFREQUENCY
;
298 static nsHtml5AttributeName
* ATTR_BASELINE_SHIFT
;
299 static nsHtml5AttributeName
* ATTR_BASEPROFILE
;
300 static nsHtml5AttributeName
* ATTR_BASELINE
;
301 static nsHtml5AttributeName
* ATTR_BASE
;
302 static nsHtml5AttributeName
* ATTR_CODE
;
303 static nsHtml5AttributeName
* ATTR_CODETYPE
;
304 static nsHtml5AttributeName
* ATTR_CODEBASE
;
305 static nsHtml5AttributeName
* ATTR_CITE
;
306 static nsHtml5AttributeName
* ATTR_DEFER
;
307 static nsHtml5AttributeName
* ATTR_DATETIME
;
308 static nsHtml5AttributeName
* ATTR_DIRECTION
;
309 static nsHtml5AttributeName
* ATTR_EDGEMODE
;
310 static nsHtml5AttributeName
* ATTR_EDGE
;
311 static nsHtml5AttributeName
* ATTR_ENTERKEYHINT
;
312 static nsHtml5AttributeName
* ATTR_FACE
;
313 static nsHtml5AttributeName
* ATTR_INDEX
;
314 static nsHtml5AttributeName
* ATTR_INTERCEPT
;
315 static nsHtml5AttributeName
* ATTR_INTEGRITY
;
316 static nsHtml5AttributeName
* ATTR_LINEBREAK
;
317 static nsHtml5AttributeName
* ATTR_LABEL
;
318 static nsHtml5AttributeName
* ATTR_LINETHICKNESS
;
319 static nsHtml5AttributeName
* ATTR_MODE
;
320 static nsHtml5AttributeName
* ATTR_NAME
;
321 static nsHtml5AttributeName
* ATTR_NORESIZE
;
322 static nsHtml5AttributeName
* ATTR_ONBEFOREUNLOAD
;
323 static nsHtml5AttributeName
* ATTR_ONREPEAT
;
324 static nsHtml5AttributeName
* ATTR_OBJECT
;
325 static nsHtml5AttributeName
* ATTR_ONSELECT
;
326 static nsHtml5AttributeName
* ATTR_ORDER
;
327 static nsHtml5AttributeName
* ATTR_OTHER
;
328 static nsHtml5AttributeName
* ATTR_ONRESET
;
329 static nsHtml5AttributeName
* ATTR_ONREADYSTATECHANGE
;
330 static nsHtml5AttributeName
* ATTR_ONMESSAGE
;
331 static nsHtml5AttributeName
* ATTR_ONBEGIN
;
332 static nsHtml5AttributeName
* ATTR_ONBEFOREPRINT
;
333 static nsHtml5AttributeName
* ATTR_ORIENT
;
334 static nsHtml5AttributeName
* ATTR_ORIENTATION
;
335 static nsHtml5AttributeName
* ATTR_ONBEFORECOPY
;
336 static nsHtml5AttributeName
* ATTR_ONSELECTSTART
;
337 static nsHtml5AttributeName
* ATTR_ONBEFOREPASTE
;
338 static nsHtml5AttributeName
* ATTR_ONKEYPRESS
;
339 static nsHtml5AttributeName
* ATTR_ONKEYUP
;
340 static nsHtml5AttributeName
* ATTR_ONBEFORECUT
;
341 static nsHtml5AttributeName
* ATTR_ONKEYDOWN
;
342 static nsHtml5AttributeName
* ATTR_ONRESIZE
;
343 static nsHtml5AttributeName
* ATTR_REPEAT
;
344 static nsHtml5AttributeName
* ATTR_REFERRERPOLICY
;
345 static nsHtml5AttributeName
* ATTR_RULES
;
346 static nsHtml5AttributeName
* ATTR_ROLE
;
347 static nsHtml5AttributeName
* ATTR_REPEATCOUNT
;
348 static nsHtml5AttributeName
* ATTR_REPEATDUR
;
349 static nsHtml5AttributeName
* ATTR_SELECTED
;
350 static nsHtml5AttributeName
* ATTR_SIZES
;
351 static nsHtml5AttributeName
* ATTR_SUPERSCRIPTSHIFT
;
352 static nsHtml5AttributeName
* ATTR_STRETCHY
;
353 static nsHtml5AttributeName
* ATTR_SCHEME
;
354 static nsHtml5AttributeName
* ATTR_SPREADMETHOD
;
355 static nsHtml5AttributeName
* ATTR_SELECTION
;
356 static nsHtml5AttributeName
* ATTR_SIZE
;
357 static nsHtml5AttributeName
* ATTR_TYPE
;
358 static nsHtml5AttributeName
* ATTR_DIFFUSECONSTANT
;
359 static nsHtml5AttributeName
* ATTR_HREF
;
360 static nsHtml5AttributeName
* ATTR_HREFLANG
;
361 static nsHtml5AttributeName
* ATTR_ONAFTERPRINT
;
362 static nsHtml5AttributeName
* ATTR_PROFILE
;
363 static nsHtml5AttributeName
* ATTR_SURFACESCALE
;
364 static nsHtml5AttributeName
* ATTR_XREF
;
365 static nsHtml5AttributeName
* ATTR_ALIGN
;
366 static nsHtml5AttributeName
* ATTR_ALIGNMENT_BASELINE
;
367 static nsHtml5AttributeName
* ATTR_ALIGNMENTSCOPE
;
368 static nsHtml5AttributeName
* ATTR_DRAGGABLE
;
369 static nsHtml5AttributeName
* ATTR_HEIGHT
;
370 static nsHtml5AttributeName
* ATTR_IMAGESIZES
;
371 static nsHtml5AttributeName
* ATTR_IMAGESRCSET
;
372 static nsHtml5AttributeName
* ATTR_IMAGE_RENDERING
;
373 static nsHtml5AttributeName
* ATTR_LANGUAGE
;
374 static nsHtml5AttributeName
* ATTR_LANG
;
375 static nsHtml5AttributeName
* ATTR_LARGEOP
;
376 static nsHtml5AttributeName
* ATTR_LONGDESC
;
377 static nsHtml5AttributeName
* ATTR_LENGTHADJUST
;
378 static nsHtml5AttributeName
* ATTR_MARGINHEIGHT
;
379 static nsHtml5AttributeName
* ATTR_MARGINWIDTH
;
380 static nsHtml5AttributeName
* ATTR_ORIGIN
;
381 static nsHtml5AttributeName
* ATTR_PING
;
382 static nsHtml5AttributeName
* ATTR_TARGET
;
383 static nsHtml5AttributeName
* ATTR_TARGETX
;
384 static nsHtml5AttributeName
* ATTR_TARGETY
;
385 static nsHtml5AttributeName
* ATTR_ARCHIVE
;
386 static nsHtml5AttributeName
* ATTR_HIGH
;
387 static nsHtml5AttributeName
* ATTR_LIGHTING_COLOR
;
388 static nsHtml5AttributeName
* ATTR_MATHBACKGROUND
;
389 static nsHtml5AttributeName
* ATTR_METHOD
;
390 static nsHtml5AttributeName
* ATTR_MATHVARIANT
;
391 static nsHtml5AttributeName
* ATTR_MATHCOLOR
;
392 static nsHtml5AttributeName
* ATTR_MATHSIZE
;
393 static nsHtml5AttributeName
* ATTR_NOSHADE
;
394 static nsHtml5AttributeName
* ATTR_ONCHANGE
;
395 static nsHtml5AttributeName
* ATTR_PATHLENGTH
;
396 static nsHtml5AttributeName
* ATTR_PATH
;
397 static nsHtml5AttributeName
* ATTR_ALTIMG
;
398 static nsHtml5AttributeName
* ATTR_ACTIONTYPE
;
399 static nsHtml5AttributeName
* ATTR_ACTION
;
400 static nsHtml5AttributeName
* ATTR_ACTIVE
;
401 static nsHtml5AttributeName
* ATTR_ADDITIVE
;
402 static nsHtml5AttributeName
* ATTR_BEGIN
;
403 static nsHtml5AttributeName
* ATTR_DOMINANT_BASELINE
;
404 static nsHtml5AttributeName
* ATTR_DIVISOR
;
405 static nsHtml5AttributeName
* ATTR_DEFINITIONURL
;
406 static nsHtml5AttributeName
* ATTR_LIMITINGCONEANGLE
;
407 static nsHtml5AttributeName
* ATTR_MEDIA
;
408 static nsHtml5AttributeName
* ATTR_MANIFEST
;
409 static nsHtml5AttributeName
* ATTR_ONFINISH
;
410 static nsHtml5AttributeName
* ATTR_OPTIMUM
;
411 static nsHtml5AttributeName
* ATTR_RADIOGROUP
;
412 static nsHtml5AttributeName
* ATTR_RADIUS
;
413 static nsHtml5AttributeName
* ATTR_SCRIPTLEVEL
;
414 static nsHtml5AttributeName
* ATTR_SCRIPTSIZEMULTIPLIER
;
415 static nsHtml5AttributeName
* ATTR_SCRIPTMINSIZE
;
416 static nsHtml5AttributeName
* ATTR_TABINDEX
;
417 static nsHtml5AttributeName
* ATTR_VALIGN
;
418 static nsHtml5AttributeName
* ATTR_VISIBILITY
;
419 static nsHtml5AttributeName
* ATTR_BACKGROUND
;
420 static nsHtml5AttributeName
* ATTR_LINK
;
421 static nsHtml5AttributeName
* ATTR_MARKER_MID
;
422 static nsHtml5AttributeName
* ATTR_MARKERHEIGHT
;
423 static nsHtml5AttributeName
* ATTR_MARKER_END
;
424 static nsHtml5AttributeName
* ATTR_MASK
;
425 static nsHtml5AttributeName
* ATTR_MARKER_START
;
426 static nsHtml5AttributeName
* ATTR_MARKERWIDTH
;
427 static nsHtml5AttributeName
* ATTR_MASKUNITS
;
428 static nsHtml5AttributeName
* ATTR_MARKERUNITS
;
429 static nsHtml5AttributeName
* ATTR_MASKCONTENTUNITS
;
430 static nsHtml5AttributeName
* ATTR_AMPLITUDE
;
431 static nsHtml5AttributeName
* ATTR_CELLSPACING
;
432 static nsHtml5AttributeName
* ATTR_CELLPADDING
;
433 static nsHtml5AttributeName
* ATTR_DECLARE
;
434 static nsHtml5AttributeName
* ATTR_FILL_RULE
;
435 static nsHtml5AttributeName
* ATTR_FILL
;
436 static nsHtml5AttributeName
* ATTR_FILL_OPACITY
;
437 static nsHtml5AttributeName
* ATTR_MAXLENGTH
;
438 static nsHtml5AttributeName
* ATTR_ONCLICK
;
439 static nsHtml5AttributeName
* ATTR_ONBLUR
;
440 static nsHtml5AttributeName
* ATTR_REPLACE
;
441 static nsHtml5AttributeName
* ATTR_ROWLINES
;
442 static nsHtml5AttributeName
* ATTR_SCALE
;
443 static nsHtml5AttributeName
* ATTR_STYLE
;
444 static nsHtml5AttributeName
* ATTR_TABLEVALUES
;
445 static nsHtml5AttributeName
* ATTR_TITLE
;
446 static nsHtml5AttributeName
* ATTR_AZIMUTH
;
447 static nsHtml5AttributeName
* ATTR_FORMAT
;
448 static nsHtml5AttributeName
* ATTR_FRAMEBORDER
;
449 static nsHtml5AttributeName
* ATTR_FRAME
;
450 static nsHtml5AttributeName
* ATTR_FRAMESPACING
;
451 static nsHtml5AttributeName
* ATTR_FROM
;
452 static nsHtml5AttributeName
* ATTR_FORM
;
453 static nsHtml5AttributeName
* ATTR_PROMPT
;
454 static nsHtml5AttributeName
* ATTR_PRIMITIVEUNITS
;
455 static nsHtml5AttributeName
* ATTR_SYMMETRIC
;
456 static nsHtml5AttributeName
* ATTR_SUMMARY
;
457 static nsHtml5AttributeName
* ATTR_USEMAP
;
458 static nsHtml5AttributeName
* ATTR_ZOOMANDPAN
;
459 static nsHtml5AttributeName
* ATTR_ASYNC
;
460 static nsHtml5AttributeName
* ATTR_ALINK
;
461 static nsHtml5AttributeName
* ATTR_IN
;
462 static nsHtml5AttributeName
* ATTR_ICON
;
463 static nsHtml5AttributeName
* ATTR_KERNELMATRIX
;
464 static nsHtml5AttributeName
* ATTR_KERNING
;
465 static nsHtml5AttributeName
* ATTR_KERNELUNITLENGTH
;
466 static nsHtml5AttributeName
* ATTR_ONUNLOAD
;
467 static nsHtml5AttributeName
* ATTR_OPEN
;
468 static nsHtml5AttributeName
* ATTR_ONINVALID
;
469 static nsHtml5AttributeName
* ATTR_ONEND
;
470 static nsHtml5AttributeName
* ATTR_ONINPUT
;
471 static nsHtml5AttributeName
* ATTR_POINTER_EVENTS
;
472 static nsHtml5AttributeName
* ATTR_POINTS
;
473 static nsHtml5AttributeName
* ATTR_POINTSATX
;
474 static nsHtml5AttributeName
* ATTR_POINTSATY
;
475 static nsHtml5AttributeName
* ATTR_POINTSATZ
;
476 static nsHtml5AttributeName
* ATTR_SPAN
;
477 static nsHtml5AttributeName
* ATTR_STANDBY
;
478 static nsHtml5AttributeName
* ATTR_TRANSFORM_ORIGIN
;
479 static nsHtml5AttributeName
* ATTR_TRANSFORM
;
480 static nsHtml5AttributeName
* ATTR_VLINK
;
481 static nsHtml5AttributeName
* ATTR_WHEN
;
482 static nsHtml5AttributeName
* ATTR_XLINK_HREF
;
483 static nsHtml5AttributeName
* ATTR_XLINK_TITLE
;
484 static nsHtml5AttributeName
* ATTR_XLINK_ROLE
;
485 static nsHtml5AttributeName
* ATTR_XLINK_ARCROLE
;
486 static nsHtml5AttributeName
* ATTR_XMLNS_XLINK
;
487 static nsHtml5AttributeName
* ATTR_XMLNS
;
488 static nsHtml5AttributeName
* ATTR_XLINK_TYPE
;
489 static nsHtml5AttributeName
* ATTR_XLINK_SHOW
;
490 static nsHtml5AttributeName
* ATTR_XLINK_ACTUATE
;
491 static nsHtml5AttributeName
* ATTR_AUTOPLAY
;
492 static nsHtml5AttributeName
* ATTR_AUTOCOMPLETE
;
493 static nsHtml5AttributeName
* ATTR_AUTOFOCUS
;
494 static nsHtml5AttributeName
* ATTR_AUTOCAPITALIZE
;
495 static nsHtml5AttributeName
* ATTR_BGCOLOR
;
496 static nsHtml5AttributeName
* ATTR_COLOR_PROFILE
;
497 static nsHtml5AttributeName
* ATTR_COLOR_RENDERING
;
498 static nsHtml5AttributeName
* ATTR_COLOR_INTERPOLATION
;
499 static nsHtml5AttributeName
* ATTR_COLOR
;
500 static nsHtml5AttributeName
* ATTR_COLOR_INTERPOLATION_FILTERS
;
501 static nsHtml5AttributeName
* ATTR_ENCODING
;
502 static nsHtml5AttributeName
* ATTR_EXPONENT
;
503 static nsHtml5AttributeName
* ATTR_FLOOD_COLOR
;
504 static nsHtml5AttributeName
* ATTR_FLOOD_OPACITY
;
505 static nsHtml5AttributeName
* ATTR_LQUOTE
;
506 static nsHtml5AttributeName
* ATTR_NUMOCTAVES
;
507 static nsHtml5AttributeName
* ATTR_NOMODULE
;
508 static nsHtml5AttributeName
* ATTR_ONLOAD
;
509 static nsHtml5AttributeName
* ATTR_ONMOUSEWHEEL
;
510 static nsHtml5AttributeName
* ATTR_ONMOUSEENTER
;
511 static nsHtml5AttributeName
* ATTR_ONMOUSEOVER
;
512 static nsHtml5AttributeName
* ATTR_ONFOCUSIN
;
513 static nsHtml5AttributeName
* ATTR_ONCONTEXTMENU
;
514 static nsHtml5AttributeName
* ATTR_ONZOOM
;
515 static nsHtml5AttributeName
* ATTR_ONCOPY
;
516 static nsHtml5AttributeName
* ATTR_ONMOUSELEAVE
;
517 static nsHtml5AttributeName
* ATTR_ONMOUSEMOVE
;
518 static nsHtml5AttributeName
* ATTR_ONMOUSEUP
;
519 static nsHtml5AttributeName
* ATTR_ONFOCUS
;
520 static nsHtml5AttributeName
* ATTR_ONMOUSEOUT
;
521 static nsHtml5AttributeName
* ATTR_ONFOCUSOUT
;
522 static nsHtml5AttributeName
* ATTR_ONMOUSEDOWN
;
523 static nsHtml5AttributeName
* ATTR_TO
;
524 static nsHtml5AttributeName
* ATTR_RQUOTE
;
525 static nsHtml5AttributeName
* ATTR_STROKE_LINECAP
;
526 static nsHtml5AttributeName
* ATTR_STROKE_DASHARRAY
;
527 static nsHtml5AttributeName
* ATTR_STROKE_DASHOFFSET
;
528 static nsHtml5AttributeName
* ATTR_STROKE_LINEJOIN
;
529 static nsHtml5AttributeName
* ATTR_STROKE_MITERLIMIT
;
530 static nsHtml5AttributeName
* ATTR_STROKE
;
531 static nsHtml5AttributeName
* ATTR_SCROLLING
;
532 static nsHtml5AttributeName
* ATTR_STROKE_WIDTH
;
533 static nsHtml5AttributeName
* ATTR_STROKE_OPACITY
;
534 static nsHtml5AttributeName
* ATTR_COMPACT
;
535 static nsHtml5AttributeName
* ATTR_CLIP
;
536 static nsHtml5AttributeName
* ATTR_CLIP_RULE
;
537 static nsHtml5AttributeName
* ATTR_CLIP_PATH
;
538 static nsHtml5AttributeName
* ATTR_CLIPPATHUNITS
;
539 static nsHtml5AttributeName
* ATTR_DISPLAY
;
540 static nsHtml5AttributeName
* ATTR_DISPLAYSTYLE
;
541 static nsHtml5AttributeName
* ATTR_GLYPH_ORIENTATION_VERTICAL
;
542 static nsHtml5AttributeName
* ATTR_GLYPH_ORIENTATION_HORIZONTAL
;
543 static nsHtml5AttributeName
* ATTR_GLYPHREF
;
544 static nsHtml5AttributeName
* ATTR_HTTP_EQUIV
;
545 static nsHtml5AttributeName
* ATTR_KEYPOINTS
;
546 static nsHtml5AttributeName
* ATTR_LOOP
;
547 static nsHtml5AttributeName
* ATTR_PROPERTY
;
548 static nsHtml5AttributeName
* ATTR_SCOPED
;
549 static nsHtml5AttributeName
* ATTR_STEP
;
550 static nsHtml5AttributeName
* ATTR_SHAPE_RENDERING
;
551 static nsHtml5AttributeName
* ATTR_SCOPE
;
552 static nsHtml5AttributeName
* ATTR_SHAPE
;
553 static nsHtml5AttributeName
* ATTR_SLOPE
;
554 static nsHtml5AttributeName
* ATTR_STOP_COLOR
;
555 static nsHtml5AttributeName
* ATTR_STOP_OPACITY
;
556 static nsHtml5AttributeName
* ATTR_TEMPLATE
;
557 static nsHtml5AttributeName
* ATTR_WRAP
;
558 static nsHtml5AttributeName
* ATTR_ABBR
;
559 static nsHtml5AttributeName
* ATTR_ATTRIBUTENAME
;
560 static nsHtml5AttributeName
* ATTR_ATTRIBUTETYPE
;
561 static nsHtml5AttributeName
* ATTR_CHAR
;
562 static nsHtml5AttributeName
* ATTR_COORDS
;
563 static nsHtml5AttributeName
* ATTR_CHAROFF
;
564 static nsHtml5AttributeName
* ATTR_CHARSET
;
565 static nsHtml5AttributeName
* ATTR_NOWRAP
;
566 static nsHtml5AttributeName
* ATTR_NOHREF
;
567 static nsHtml5AttributeName
* ATTR_ONDRAG
;
568 static nsHtml5AttributeName
* ATTR_ONDRAGENTER
;
569 static nsHtml5AttributeName
* ATTR_ONDRAGOVER
;
570 static nsHtml5AttributeName
* ATTR_ONDRAGEND
;
571 static nsHtml5AttributeName
* ATTR_ONDROP
;
572 static nsHtml5AttributeName
* ATTR_ONDRAGDROP
;
573 static nsHtml5AttributeName
* ATTR_ONERROR
;
574 static nsHtml5AttributeName
* ATTR_OPERATOR
;
575 static nsHtml5AttributeName
* ATTR_OVERFLOW
;
576 static nsHtml5AttributeName
* ATTR_ONDRAGSTART
;
577 static nsHtml5AttributeName
* ATTR_ONDRAGLEAVE
;
578 static nsHtml5AttributeName
* ATTR_STARTOFFSET
;
579 static nsHtml5AttributeName
* ATTR_START
;
580 static nsHtml5AttributeName
* ATTR_AS
;
581 static nsHtml5AttributeName
* ATTR_AXIS
;
582 static nsHtml5AttributeName
* ATTR_BIAS
;
583 static nsHtml5AttributeName
* ATTR_COLSPAN
;
584 static nsHtml5AttributeName
* ATTR_CLASSID
;
585 static nsHtml5AttributeName
* ATTR_CROSSORIGIN
;
586 static nsHtml5AttributeName
* ATTR_COLS
;
587 static nsHtml5AttributeName
* ATTR_CURSOR
;
588 static nsHtml5AttributeName
* ATTR_CLOSURE
;
589 static nsHtml5AttributeName
* ATTR_CLOSE
;
590 static nsHtml5AttributeName
* ATTR_CLASS
;
591 static nsHtml5AttributeName
* ATTR_IS
;
592 static nsHtml5AttributeName
* ATTR_KEYSYSTEM
;
593 static nsHtml5AttributeName
* ATTR_KEYSPLINES
;
594 static nsHtml5AttributeName
* ATTR_LOWSRC
;
595 static nsHtml5AttributeName
* ATTR_MAXSIZE
;
596 static nsHtml5AttributeName
* ATTR_MINSIZE
;
597 static nsHtml5AttributeName
* ATTR_OFFSET
;
598 static nsHtml5AttributeName
* ATTR_PRESERVEALPHA
;
599 static nsHtml5AttributeName
* ATTR_PRESERVEASPECTRATIO
;
600 static nsHtml5AttributeName
* ATTR_ROWSPAN
;
601 static nsHtml5AttributeName
* ATTR_ROWSPACING
;
602 static nsHtml5AttributeName
* ATTR_ROWS
;
603 static nsHtml5AttributeName
* ATTR_SRCSET
;
604 static nsHtml5AttributeName
* ATTR_SUBSCRIPTSHIFT
;
605 static nsHtml5AttributeName
* ATTR_VERSION
;
606 static nsHtml5AttributeName
* ATTR_ALTTEXT
;
607 static nsHtml5AttributeName
* ATTR_CONTENTEDITABLE
;
608 static nsHtml5AttributeName
* ATTR_CONTROLS
;
609 static nsHtml5AttributeName
* ATTR_CONTENT
;
610 static nsHtml5AttributeName
* ATTR_CONTEXTMENU
;
611 static nsHtml5AttributeName
* ATTR_DEPTH
;
612 static nsHtml5AttributeName
* ATTR_ENCTYPE
;
613 static nsHtml5AttributeName
* ATTR_FONT_STRETCH
;
614 static nsHtml5AttributeName
* ATTR_FILTER
;
615 static nsHtml5AttributeName
* ATTR_FONTWEIGHT
;
616 static nsHtml5AttributeName
* ATTR_FONT_WEIGHT
;
617 static nsHtml5AttributeName
* ATTR_FONTSTYLE
;
618 static nsHtml5AttributeName
* ATTR_FONT_STYLE
;
619 static nsHtml5AttributeName
* ATTR_FONTFAMILY
;
620 static nsHtml5AttributeName
* ATTR_FONT_FAMILY
;
621 static nsHtml5AttributeName
* ATTR_FONT_VARIANT
;
622 static nsHtml5AttributeName
* ATTR_FONT_SIZE_ADJUST
;
623 static nsHtml5AttributeName
* ATTR_FILTERUNITS
;
624 static nsHtml5AttributeName
* ATTR_FONTSIZE
;
625 static nsHtml5AttributeName
* ATTR_FONT_SIZE
;
626 static nsHtml5AttributeName
* ATTR_KEYTIMES
;
627 static nsHtml5AttributeName
* ATTR_LETTER_SPACING
;
628 static nsHtml5AttributeName
* ATTR_LIST
;
629 static nsHtml5AttributeName
* ATTR_MULTIPLE
;
630 static nsHtml5AttributeName
* ATTR_RT
;
631 static nsHtml5AttributeName
* ATTR_ONSTOP
;
632 static nsHtml5AttributeName
* ATTR_ONSTART
;
633 static nsHtml5AttributeName
* ATTR_POSTER
;
634 static nsHtml5AttributeName
* ATTR_PATTERNTRANSFORM
;
635 static nsHtml5AttributeName
* ATTR_PATTERN
;
636 static nsHtml5AttributeName
* ATTR_PATTERNUNITS
;
637 static nsHtml5AttributeName
* ATTR_PATTERNCONTENTUNITS
;
638 static nsHtml5AttributeName
* ATTR_RESTART
;
639 static nsHtml5AttributeName
* ATTR_STITCHTILES
;
640 static nsHtml5AttributeName
* ATTR_SYSTEMLANGUAGE
;
641 static nsHtml5AttributeName
* ATTR_TEXT_RENDERING
;
642 static nsHtml5AttributeName
* ATTR_TEXT_DECORATION
;
643 static nsHtml5AttributeName
* ATTR_TEXT_ANCHOR
;
644 static nsHtml5AttributeName
* ATTR_TEXTLENGTH
;
645 static nsHtml5AttributeName
* ATTR_TEXT
;
646 static nsHtml5AttributeName
* ATTR_WRITING_MODE
;
647 static nsHtml5AttributeName
* ATTR_WIDTH
;
648 static nsHtml5AttributeName
* ATTR_ACCUMULATE
;
649 static nsHtml5AttributeName
* ATTR_COLUMNSPAN
;
650 static nsHtml5AttributeName
* ATTR_COLUMNLINES
;
651 static nsHtml5AttributeName
* ATTR_COLUMNALIGN
;
652 static nsHtml5AttributeName
* ATTR_COLUMNSPACING
;
653 static nsHtml5AttributeName
* ATTR_COLUMNWIDTH
;
654 static nsHtml5AttributeName
* ATTR_GROUPALIGN
;
655 static nsHtml5AttributeName
* ATTR_INPUTMODE
;
656 static nsHtml5AttributeName
* ATTR_ONSUBMIT
;
657 static nsHtml5AttributeName
* ATTR_ONCUT
;
658 static nsHtml5AttributeName
* ATTR_REQUIRED
;
659 static nsHtml5AttributeName
* ATTR_REQUIREDFEATURES
;
660 static nsHtml5AttributeName
* ATTR_RESULT
;
661 static nsHtml5AttributeName
* ATTR_REQUIREDEXTENSIONS
;
662 static nsHtml5AttributeName
* ATTR_VALUES
;
663 static nsHtml5AttributeName
* ATTR_VALUETYPE
;
664 static nsHtml5AttributeName
* ATTR_VALUE
;
665 static nsHtml5AttributeName
* ATTR_ELEVATION
;
666 static nsHtml5AttributeName
* ATTR_VIEWTARGET
;
667 static nsHtml5AttributeName
* ATTR_VIEWBOX
;
668 static nsHtml5AttributeName
* ATTR_CX
;
669 static nsHtml5AttributeName
* ATTR_DX
;
670 static nsHtml5AttributeName
* ATTR_FX
;
671 static nsHtml5AttributeName
* ATTR_RX
;
672 static nsHtml5AttributeName
* ATTR_REFX
;
673 static nsHtml5AttributeName
* ATTR_BY
;
674 static nsHtml5AttributeName
* ATTR_CY
;
675 static nsHtml5AttributeName
* ATTR_DY
;
676 static nsHtml5AttributeName
* ATTR_FY
;
677 static nsHtml5AttributeName
* ATTR_RY
;
678 static nsHtml5AttributeName
* ATTR_REFY
;
681 static nsHtml5AttributeName
** ATTRIBUTE_NAMES
;
682 static staticJArray
<int32_t, int32_t> ATTRIBUTE_HASHES
;
685 static void initializeStatics();
686 static void releaseStatics();