/parser/html/nsHtml5AttributeName.h

http://github.com/zpao/v8monkey · C Header · 689 lines · 653 code · 11 blank · 25 comment · 0 complexity · c121f6fc8107eed4bf5524185adffceb MD5 · raw file

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