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