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