diff options
author | athenian200 <athenian200@outlook.com> | 2020-01-27 22:59:08 -0600 |
---|---|---|
committer | athenian200 <athenian200@outlook.com> | 2020-01-27 22:59:08 -0600 |
commit | 3c4f414db74b84f7d2a6fb13fd888a47a153699b (patch) | |
tree | ea81fca559849967a79d598a6f460830762ec9ea /parser/htmlparser/nsHTMLTagList.h | |
parent | 1f8d508258ac5d7d57fc4eb35cac90f28bc8ca03 (diff) | |
parent | c4b0715baaffc541670fd1158557aa7e61e521d3 (diff) | |
download | UXP-3c4f414db74b84f7d2a6fb13fd888a47a153699b.tar UXP-3c4f414db74b84f7d2a6fb13fd888a47a153699b.tar.gz UXP-3c4f414db74b84f7d2a6fb13fd888a47a153699b.tar.lz UXP-3c4f414db74b84f7d2a6fb13fd888a47a153699b.tar.xz UXP-3c4f414db74b84f7d2a6fb13fd888a47a153699b.zip |
Merge branch 'master' of https://github.com/MoonchildProductions/UXP into form-disabled-issue
Diffstat (limited to 'parser/htmlparser/nsHTMLTagList.h')
-rw-r--r-- | parser/htmlparser/nsHTMLTagList.h | 198 |
1 files changed, 105 insertions, 93 deletions
diff --git a/parser/htmlparser/nsHTMLTagList.h b/parser/htmlparser/nsHTMLTagList.h index 7e1e207cc..e6f1f644c 100644 --- a/parser/htmlparser/nsHTMLTagList.h +++ b/parser/htmlparser/nsHTMLTagList.h @@ -10,8 +10,14 @@ This file contains the list of all HTML tags. See nsHTMLTags.h for access to the enum values for tags. - It is designed to be used as inline input to nsHTMLTags.cpp and - nsHTMLContentSink *only* through the magic of C preprocessing. + It is designed to be used as input to various places that will define the + HTML_TAG macro in useful ways through the magic of C preprocessing. + Additionally, it is consumed by the self-regeneration code in + ElementName.java from which nsHtml5ElementName.cpp/h is translated. + See parser/html/java/README.txt. + + If you edit this list, you need to re-run ElementName.java + self-regeneration and the HTML parser Java to C++ translation. All entries must be enclosed in the macro HTML_TAG which will have cruel and unusual things done to it. @@ -19,11 +25,13 @@ It is recommended (but not strictly necessary) to keep all entries in alphabetical order. - The first argument to HTML_TAG is both the enum identifier of the - property and the string value. The second argument is the "creator" - method of the form NS_New$TAGNAMEElement, that will be used by + The first argument to HTML_TAG is the tag name. The second argument is the + "creator" method of the form NS_New$TAGNAMEElement, that will be used by nsHTMLContentSink.cpp to create a content object for a tag of that type. Use NOTUSED, if the particular tag has a non-standard creator. + The third argument is the interface name specified for this element + in the HTML specification. It can be empty if the relevant interface name + is "HTMLElement". The HTML_OTHER macro is for values in the nsHTMLTag enum that are not strictly tags. @@ -35,104 +43,106 @@ ** Break these invariants and bad things will happen. ** ******/ -HTML_TAG(a, Anchor) +#define HTML_HTMLELEMENT_TAG(_tag) HTML_TAG(_tag, , ) + +HTML_TAG(a, Anchor, Anchor) HTML_HTMLELEMENT_TAG(abbr) HTML_HTMLELEMENT_TAG(acronym) HTML_HTMLELEMENT_TAG(address) -HTML_TAG(applet, SharedObject) -HTML_TAG(area, Area) +HTML_TAG(applet, SharedObject, Applet) +HTML_TAG(area, Area, Area) HTML_HTMLELEMENT_TAG(article) HTML_HTMLELEMENT_TAG(aside) -HTML_TAG(audio, Audio) +HTML_TAG(audio, Audio, Audio) HTML_HTMLELEMENT_TAG(b) -HTML_TAG(base, Shared) +HTML_TAG(base, Shared, Base) HTML_HTMLELEMENT_TAG(basefont) HTML_HTMLELEMENT_TAG(bdo) -HTML_TAG(bgsound, Unknown) +HTML_TAG(bgsound, Unknown, Unknown) HTML_HTMLELEMENT_TAG(big) -HTML_TAG(blockquote, Shared) -HTML_TAG(body, Body) -HTML_TAG(br, BR) -HTML_TAG(button, Button) -HTML_TAG(canvas, Canvas) -HTML_TAG(caption, TableCaption) +HTML_TAG(blockquote, Shared, Quote) +HTML_TAG(body, Body, Body) +HTML_TAG(br, BR, BR) +HTML_TAG(button, Button, Button) +HTML_TAG(canvas, Canvas, Canvas) +HTML_TAG(caption, TableCaption, TableCaption) HTML_HTMLELEMENT_TAG(center) HTML_HTMLELEMENT_TAG(cite) HTML_HTMLELEMENT_TAG(code) -HTML_TAG(col, TableCol) -HTML_TAG(colgroup, TableCol) -HTML_TAG(content, Content) -HTML_TAG(data, Data) -HTML_TAG(datalist, DataList) +HTML_TAG(col, TableCol, TableCol) +HTML_TAG(colgroup, TableCol, TableCol) +HTML_TAG(content, Content, Content) +HTML_TAG(data, Data, Data) +HTML_TAG(datalist, DataList, DataList) HTML_HTMLELEMENT_TAG(dd) -HTML_TAG(del, Mod) -HTML_TAG(details, Details) +HTML_TAG(del, Mod, Mod) +HTML_TAG(details, Details, Details) HTML_HTMLELEMENT_TAG(dfn) -HTML_TAG(dialog, Dialog) -HTML_TAG(dir, Shared) -HTML_TAG(div, Div) -HTML_TAG(dl, SharedList) +HTML_TAG(dialog, Dialog, Dialog) +HTML_TAG(dir, Shared, Directory) +HTML_TAG(div, Div, Div) +HTML_TAG(dl, SharedList, DList) HTML_HTMLELEMENT_TAG(dt) HTML_HTMLELEMENT_TAG(em) -HTML_TAG(embed, SharedObject) -HTML_TAG(fieldset, FieldSet) +HTML_TAG(embed, SharedObject, Embed) +HTML_TAG(fieldset, FieldSet, FieldSet) HTML_HTMLELEMENT_TAG(figcaption) HTML_HTMLELEMENT_TAG(figure) -HTML_TAG(font, Font) +HTML_TAG(font, Font, Font) HTML_HTMLELEMENT_TAG(footer) -HTML_TAG(form, Form) -HTML_TAG(frame, Frame) -HTML_TAG(frameset, FrameSet) -HTML_TAG(h1, Heading) -HTML_TAG(h2, Heading) -HTML_TAG(h3, Heading) -HTML_TAG(h4, Heading) -HTML_TAG(h5, Heading) -HTML_TAG(h6, Heading) -HTML_TAG(head, Shared) +HTML_TAG(form, Form, Form) +HTML_TAG(frame, Frame, Frame) +HTML_TAG(frameset, FrameSet, FrameSet) +HTML_TAG(h1, Heading, Heading) +HTML_TAG(h2, Heading, Heading) +HTML_TAG(h3, Heading, Heading) +HTML_TAG(h4, Heading, Heading) +HTML_TAG(h5, Heading, Heading) +HTML_TAG(h6, Heading, Heading) +HTML_TAG(head, Shared, Head) HTML_HTMLELEMENT_TAG(header) HTML_HTMLELEMENT_TAG(hgroup) -HTML_TAG(hr, HR) -HTML_TAG(html, Shared) +HTML_TAG(hr, HR, HR) +HTML_TAG(html, Shared, Html) HTML_HTMLELEMENT_TAG(i) -HTML_TAG(iframe, IFrame) +HTML_TAG(iframe, IFrame, IFrame) HTML_HTMLELEMENT_TAG(image) -HTML_TAG(img, Image) -HTML_TAG(input, Input) -HTML_TAG(ins, Mod) +HTML_TAG(img, Image, Image) +HTML_TAG(input, Input, Input) +HTML_TAG(ins, Mod, Mod) HTML_HTMLELEMENT_TAG(kbd) -HTML_TAG(keygen, Span) -HTML_TAG(label, Label) -HTML_TAG(legend, Legend) -HTML_TAG(li, LI) -HTML_TAG(link, Link) -HTML_TAG(listing, Pre) +HTML_TAG(keygen, Span, Span) +HTML_TAG(label, Label, Label) +HTML_TAG(legend, Legend, Legend) +HTML_TAG(li, LI, LI) +HTML_TAG(link, Link, Link) +HTML_TAG(listing, Pre, Pre) HTML_HTMLELEMENT_TAG(main) -HTML_TAG(map, Map) +HTML_TAG(map, Map, Map) HTML_HTMLELEMENT_TAG(mark) -HTML_TAG(marquee, Div) -HTML_TAG(menu, Menu) -HTML_TAG(menuitem, MenuItem) -HTML_TAG(meta, Meta) -HTML_TAG(meter, Meter) -HTML_TAG(multicol, Unknown) +HTML_TAG(marquee, Div, Div) +HTML_TAG(menu, Menu, Menu) +HTML_TAG(menuitem, MenuItem, MenuItem) +HTML_TAG(meta, Meta, Meta) +HTML_TAG(meter, Meter, Meter) +HTML_TAG(multicol, Unknown, Unknown) HTML_HTMLELEMENT_TAG(nav) HTML_HTMLELEMENT_TAG(nobr) HTML_HTMLELEMENT_TAG(noembed) HTML_HTMLELEMENT_TAG(noframes) HTML_HTMLELEMENT_TAG(noscript) -HTML_TAG(object, Object) -HTML_TAG(ol, SharedList) -HTML_TAG(optgroup, OptGroup) -HTML_TAG(option, Option) -HTML_TAG(output, Output) -HTML_TAG(p, Paragraph) -HTML_TAG(param, Shared) -HTML_TAG(picture, Picture) +HTML_TAG(object, Object, Object) +HTML_TAG(ol, SharedList, OList) +HTML_TAG(optgroup, OptGroup, OptGroup) +HTML_TAG(option, Option, Option) +HTML_TAG(output, Output, Output) +HTML_TAG(p, Paragraph, Paragraph) +HTML_TAG(param, Shared, Param) +HTML_TAG(picture, Picture, Picture) HTML_HTMLELEMENT_TAG(plaintext) -HTML_TAG(pre, Pre) -HTML_TAG(progress, Progress) -HTML_TAG(q, Shared) +HTML_TAG(pre, Pre, Pre) +HTML_TAG(progress, Progress, Progress) +HTML_TAG(q, Shared, Quote) HTML_HTMLELEMENT_TAG(rb) HTML_HTMLELEMENT_TAG(rp) HTML_HTMLELEMENT_TAG(rt) @@ -140,38 +150,38 @@ HTML_HTMLELEMENT_TAG(rtc) HTML_HTMLELEMENT_TAG(ruby) HTML_HTMLELEMENT_TAG(s) HTML_HTMLELEMENT_TAG(samp) -HTML_TAG(script, Script) +HTML_TAG(script, Script, Script) HTML_HTMLELEMENT_TAG(section) -HTML_TAG(select, Select) -HTML_TAG(shadow, Shadow) +HTML_TAG(select, Select, Select) +HTML_TAG(shadow, Shadow, Shadow) HTML_HTMLELEMENT_TAG(small) -HTML_TAG(source, Source) -HTML_TAG(span, Span) +HTML_TAG(source, Source, Source) +HTML_TAG(span, Span, Span) HTML_HTMLELEMENT_TAG(strike) HTML_HTMLELEMENT_TAG(strong) -HTML_TAG(style, Style) +HTML_TAG(style, Style, Style) HTML_HTMLELEMENT_TAG(sub) -HTML_TAG(summary, Summary) +HTML_TAG(summary, Summary, ) HTML_HTMLELEMENT_TAG(sup) -HTML_TAG(table, Table) -HTML_TAG(tbody, TableSection) -HTML_TAG(td, TableCell) -HTML_TAG(textarea, TextArea) -HTML_TAG(tfoot, TableSection) -HTML_TAG(th, TableCell) -HTML_TAG(thead, TableSection) -HTML_TAG(template, Template) -HTML_TAG(time, Time) -HTML_TAG(title, Title) -HTML_TAG(tr, TableRow) -HTML_TAG(track, Track) +HTML_TAG(table, Table, Table) +HTML_TAG(tbody, TableSection, TableSection) +HTML_TAG(td, TableCell, TableCell) +HTML_TAG(textarea, TextArea, TextArea) +HTML_TAG(tfoot, TableSection, TableSection) +HTML_TAG(th, TableCell, TableCell) +HTML_TAG(thead, TableSection, TableSection) +HTML_TAG(template, Template, Template) +HTML_TAG(time, Time, Time) +HTML_TAG(title, Title, Title) +HTML_TAG(tr, TableRow, TableRow) +HTML_TAG(track, Track, Track) HTML_HTMLELEMENT_TAG(tt) HTML_HTMLELEMENT_TAG(u) -HTML_TAG(ul, SharedList) +HTML_TAG(ul, SharedList, UList) HTML_HTMLELEMENT_TAG(var) -HTML_TAG(video, Video) +HTML_TAG(video, Video, Video) HTML_HTMLELEMENT_TAG(wbr) -HTML_TAG(xmp, Pre) +HTML_TAG(xmp, Pre, Pre) /* These are not for tags. But they will be included in the nsHTMLTag @@ -185,3 +195,5 @@ HTML_OTHER(entity) HTML_OTHER(doctypeDecl) HTML_OTHER(markupDecl) HTML_OTHER(instruction) + +#undef HTML_HTMLELEMENT_TAG |