Serenity Operating System
at master 241 lines 14 kB view raw
1/* 2 * Copyright (c) 2020-2021, Andreas Kling <kling@serenityos.org> 3 * 4 * SPDX-License-Identifier: BSD-2-Clause 5 */ 6 7#pragma once 8 9#include <AK/DeprecatedFlyString.h> 10 11namespace Web { 12namespace HTML { 13namespace AttributeNames { 14 15#define ENUMERATE_HTML_ATTRIBUTES \ 16 __ENUMERATE_HTML_ATTRIBUTE(abbr) \ 17 __ENUMERATE_HTML_ATTRIBUTE(accept) \ 18 __ENUMERATE_HTML_ATTRIBUTE(accept_charset) \ 19 __ENUMERATE_HTML_ATTRIBUTE(action) \ 20 __ENUMERATE_HTML_ATTRIBUTE(align) \ 21 __ENUMERATE_HTML_ATTRIBUTE(alink) \ 22 __ENUMERATE_HTML_ATTRIBUTE(allow) \ 23 __ENUMERATE_HTML_ATTRIBUTE(allowfullscreen) \ 24 __ENUMERATE_HTML_ATTRIBUTE(alt) \ 25 __ENUMERATE_HTML_ATTRIBUTE(archive) \ 26 __ENUMERATE_HTML_ATTRIBUTE(async) \ 27 __ENUMERATE_HTML_ATTRIBUTE(autofocus) \ 28 __ENUMERATE_HTML_ATTRIBUTE(autoplay) \ 29 __ENUMERATE_HTML_ATTRIBUTE(axis) \ 30 __ENUMERATE_HTML_ATTRIBUTE(background) \ 31 __ENUMERATE_HTML_ATTRIBUTE(behavior) \ 32 __ENUMERATE_HTML_ATTRIBUTE(bgcolor) \ 33 __ENUMERATE_HTML_ATTRIBUTE(border) \ 34 __ENUMERATE_HTML_ATTRIBUTE(cellpadding) \ 35 __ENUMERATE_HTML_ATTRIBUTE(cellspacing) \ 36 __ENUMERATE_HTML_ATTRIBUTE(char_) \ 37 __ENUMERATE_HTML_ATTRIBUTE(charoff) \ 38 __ENUMERATE_HTML_ATTRIBUTE(charset) \ 39 __ENUMERATE_HTML_ATTRIBUTE(checked) \ 40 __ENUMERATE_HTML_ATTRIBUTE(cite) \ 41 __ENUMERATE_HTML_ATTRIBUTE(class_) \ 42 __ENUMERATE_HTML_ATTRIBUTE(classid) \ 43 __ENUMERATE_HTML_ATTRIBUTE(clear) \ 44 __ENUMERATE_HTML_ATTRIBUTE(code) \ 45 __ENUMERATE_HTML_ATTRIBUTE(codetype) \ 46 __ENUMERATE_HTML_ATTRIBUTE(color) \ 47 __ENUMERATE_HTML_ATTRIBUTE(cols) \ 48 __ENUMERATE_HTML_ATTRIBUTE(colspan) \ 49 __ENUMERATE_HTML_ATTRIBUTE(compact) \ 50 __ENUMERATE_HTML_ATTRIBUTE(content) \ 51 __ENUMERATE_HTML_ATTRIBUTE(contenteditable) \ 52 __ENUMERATE_HTML_ATTRIBUTE(controls) \ 53 __ENUMERATE_HTML_ATTRIBUTE(coords) \ 54 __ENUMERATE_HTML_ATTRIBUTE(data) \ 55 __ENUMERATE_HTML_ATTRIBUTE(datetime) \ 56 __ENUMERATE_HTML_ATTRIBUTE(declare) \ 57 __ENUMERATE_HTML_ATTRIBUTE(default_) \ 58 __ENUMERATE_HTML_ATTRIBUTE(defer) \ 59 __ENUMERATE_HTML_ATTRIBUTE(dir) \ 60 __ENUMERATE_HTML_ATTRIBUTE(direction) \ 61 __ENUMERATE_HTML_ATTRIBUTE(dirname) \ 62 __ENUMERATE_HTML_ATTRIBUTE(disabled) \ 63 __ENUMERATE_HTML_ATTRIBUTE(download) \ 64 __ENUMERATE_HTML_ATTRIBUTE(event) \ 65 __ENUMERATE_HTML_ATTRIBUTE(face) \ 66 __ENUMERATE_HTML_ATTRIBUTE(for_) \ 67 __ENUMERATE_HTML_ATTRIBUTE(form) \ 68 __ENUMERATE_HTML_ATTRIBUTE(formnovalidate) \ 69 __ENUMERATE_HTML_ATTRIBUTE(formtarget) \ 70 __ENUMERATE_HTML_ATTRIBUTE(frame) \ 71 __ENUMERATE_HTML_ATTRIBUTE(frameborder) \ 72 __ENUMERATE_HTML_ATTRIBUTE(headers) \ 73 __ENUMERATE_HTML_ATTRIBUTE(height) \ 74 __ENUMERATE_HTML_ATTRIBUTE(hidden) \ 75 __ENUMERATE_HTML_ATTRIBUTE(href) \ 76 __ENUMERATE_HTML_ATTRIBUTE(hreflang) \ 77 __ENUMERATE_HTML_ATTRIBUTE(hspace) \ 78 __ENUMERATE_HTML_ATTRIBUTE(http_equiv) \ 79 __ENUMERATE_HTML_ATTRIBUTE(id) \ 80 __ENUMERATE_HTML_ATTRIBUTE(imagesizes) \ 81 __ENUMERATE_HTML_ATTRIBUTE(imagesrcset) \ 82 __ENUMERATE_HTML_ATTRIBUTE(inert) \ 83 __ENUMERATE_HTML_ATTRIBUTE(integrity) \ 84 __ENUMERATE_HTML_ATTRIBUTE(ismap) \ 85 __ENUMERATE_HTML_ATTRIBUTE(itemscope) \ 86 __ENUMERATE_HTML_ATTRIBUTE(label) \ 87 __ENUMERATE_HTML_ATTRIBUTE(lang) \ 88 __ENUMERATE_HTML_ATTRIBUTE(language) \ 89 __ENUMERATE_HTML_ATTRIBUTE(link) \ 90 __ENUMERATE_HTML_ATTRIBUTE(longdesc) \ 91 __ENUMERATE_HTML_ATTRIBUTE(loop) \ 92 __ENUMERATE_HTML_ATTRIBUTE(marginheight) \ 93 __ENUMERATE_HTML_ATTRIBUTE(marginwidth) \ 94 __ENUMERATE_HTML_ATTRIBUTE(max) \ 95 __ENUMERATE_HTML_ATTRIBUTE(media) \ 96 __ENUMERATE_HTML_ATTRIBUTE(method) \ 97 __ENUMERATE_HTML_ATTRIBUTE(min) \ 98 __ENUMERATE_HTML_ATTRIBUTE(multiple) \ 99 __ENUMERATE_HTML_ATTRIBUTE(muted) \ 100 __ENUMERATE_HTML_ATTRIBUTE(name) \ 101 __ENUMERATE_HTML_ATTRIBUTE(nohref) \ 102 __ENUMERATE_HTML_ATTRIBUTE(nomodule) \ 103 __ENUMERATE_HTML_ATTRIBUTE(noshade) \ 104 __ENUMERATE_HTML_ATTRIBUTE(novalidate) \ 105 __ENUMERATE_HTML_ATTRIBUTE(nowrap) \ 106 __ENUMERATE_HTML_ATTRIBUTE(onabort) \ 107 __ENUMERATE_HTML_ATTRIBUTE(onafterprint) \ 108 __ENUMERATE_HTML_ATTRIBUTE(onauxclick) \ 109 __ENUMERATE_HTML_ATTRIBUTE(onbeforeprint) \ 110 __ENUMERATE_HTML_ATTRIBUTE(onbeforeunload) \ 111 __ENUMERATE_HTML_ATTRIBUTE(onblur) \ 112 __ENUMERATE_HTML_ATTRIBUTE(oncancel) \ 113 __ENUMERATE_HTML_ATTRIBUTE(oncanplay) \ 114 __ENUMERATE_HTML_ATTRIBUTE(oncanplaythrough) \ 115 __ENUMERATE_HTML_ATTRIBUTE(onchange) \ 116 __ENUMERATE_HTML_ATTRIBUTE(onclick) \ 117 __ENUMERATE_HTML_ATTRIBUTE(onclose) \ 118 __ENUMERATE_HTML_ATTRIBUTE(oncontextmenu) \ 119 __ENUMERATE_HTML_ATTRIBUTE(oncuechange) \ 120 __ENUMERATE_HTML_ATTRIBUTE(ondblclick) \ 121 __ENUMERATE_HTML_ATTRIBUTE(ondrag) \ 122 __ENUMERATE_HTML_ATTRIBUTE(ondragend) \ 123 __ENUMERATE_HTML_ATTRIBUTE(ondragenter) \ 124 __ENUMERATE_HTML_ATTRIBUTE(ondragleave) \ 125 __ENUMERATE_HTML_ATTRIBUTE(ondragover) \ 126 __ENUMERATE_HTML_ATTRIBUTE(ondragstart) \ 127 __ENUMERATE_HTML_ATTRIBUTE(ondrop) \ 128 __ENUMERATE_HTML_ATTRIBUTE(ondurationchange) \ 129 __ENUMERATE_HTML_ATTRIBUTE(onemptied) \ 130 __ENUMERATE_HTML_ATTRIBUTE(onended) \ 131 __ENUMERATE_HTML_ATTRIBUTE(onerror) \ 132 __ENUMERATE_HTML_ATTRIBUTE(onfocus) \ 133 __ENUMERATE_HTML_ATTRIBUTE(onformdata) \ 134 __ENUMERATE_HTML_ATTRIBUTE(onhashchange) \ 135 __ENUMERATE_HTML_ATTRIBUTE(oninput) \ 136 __ENUMERATE_HTML_ATTRIBUTE(oninvalid) \ 137 __ENUMERATE_HTML_ATTRIBUTE(onkeydown) \ 138 __ENUMERATE_HTML_ATTRIBUTE(onkeypress) \ 139 __ENUMERATE_HTML_ATTRIBUTE(onkeyup) \ 140 __ENUMERATE_HTML_ATTRIBUTE(onlanguagechange) \ 141 __ENUMERATE_HTML_ATTRIBUTE(onload) \ 142 __ENUMERATE_HTML_ATTRIBUTE(onloadeddata) \ 143 __ENUMERATE_HTML_ATTRIBUTE(onloadedmetadata) \ 144 __ENUMERATE_HTML_ATTRIBUTE(onloadstart) \ 145 __ENUMERATE_HTML_ATTRIBUTE(onmessage) \ 146 __ENUMERATE_HTML_ATTRIBUTE(onmessageerror) \ 147 __ENUMERATE_HTML_ATTRIBUTE(onmousedown) \ 148 __ENUMERATE_HTML_ATTRIBUTE(onmouseenter) \ 149 __ENUMERATE_HTML_ATTRIBUTE(onmouseleave) \ 150 __ENUMERATE_HTML_ATTRIBUTE(onmousemove) \ 151 __ENUMERATE_HTML_ATTRIBUTE(onmouseout) \ 152 __ENUMERATE_HTML_ATTRIBUTE(onmouseover) \ 153 __ENUMERATE_HTML_ATTRIBUTE(onmouseup) \ 154 __ENUMERATE_HTML_ATTRIBUTE(onoffline) \ 155 __ENUMERATE_HTML_ATTRIBUTE(ononline) \ 156 __ENUMERATE_HTML_ATTRIBUTE(onpagehide) \ 157 __ENUMERATE_HTML_ATTRIBUTE(onpageshow) \ 158 __ENUMERATE_HTML_ATTRIBUTE(onpause) \ 159 __ENUMERATE_HTML_ATTRIBUTE(onplay) \ 160 __ENUMERATE_HTML_ATTRIBUTE(onplaying) \ 161 __ENUMERATE_HTML_ATTRIBUTE(onpopstate) \ 162 __ENUMERATE_HTML_ATTRIBUTE(onprogress) \ 163 __ENUMERATE_HTML_ATTRIBUTE(onratechange) \ 164 __ENUMERATE_HTML_ATTRIBUTE(onrejectionhandled) \ 165 __ENUMERATE_HTML_ATTRIBUTE(onreset) \ 166 __ENUMERATE_HTML_ATTRIBUTE(onresize) \ 167 __ENUMERATE_HTML_ATTRIBUTE(onscroll) \ 168 __ENUMERATE_HTML_ATTRIBUTE(onsecuritypolicyviolation) \ 169 __ENUMERATE_HTML_ATTRIBUTE(onseeked) \ 170 __ENUMERATE_HTML_ATTRIBUTE(onseeking) \ 171 __ENUMERATE_HTML_ATTRIBUTE(onselect) \ 172 __ENUMERATE_HTML_ATTRIBUTE(onslotchange) \ 173 __ENUMERATE_HTML_ATTRIBUTE(onstalled) \ 174 __ENUMERATE_HTML_ATTRIBUTE(onstorage) \ 175 __ENUMERATE_HTML_ATTRIBUTE(onsubmit) \ 176 __ENUMERATE_HTML_ATTRIBUTE(onsuspend) \ 177 __ENUMERATE_HTML_ATTRIBUTE(ontimeupdate) \ 178 __ENUMERATE_HTML_ATTRIBUTE(ontoggle) \ 179 __ENUMERATE_HTML_ATTRIBUTE(onunhandledrejection) \ 180 __ENUMERATE_HTML_ATTRIBUTE(onunload) \ 181 __ENUMERATE_HTML_ATTRIBUTE(onvolumechange) \ 182 __ENUMERATE_HTML_ATTRIBUTE(onwaiting) \ 183 __ENUMERATE_HTML_ATTRIBUTE(onwebkitanimationend) \ 184 __ENUMERATE_HTML_ATTRIBUTE(onwebkitanimationiteration) \ 185 __ENUMERATE_HTML_ATTRIBUTE(onwebkitanimationstart) \ 186 __ENUMERATE_HTML_ATTRIBUTE(onwebkittransitionend) \ 187 __ENUMERATE_HTML_ATTRIBUTE(onwheel) \ 188 __ENUMERATE_HTML_ATTRIBUTE(open) \ 189 __ENUMERATE_HTML_ATTRIBUTE(pattern) \ 190 __ENUMERATE_HTML_ATTRIBUTE(ping) \ 191 __ENUMERATE_HTML_ATTRIBUTE(placeholder) \ 192 __ENUMERATE_HTML_ATTRIBUTE(playsinline) \ 193 __ENUMERATE_HTML_ATTRIBUTE(poster) \ 194 __ENUMERATE_HTML_ATTRIBUTE(preload) \ 195 __ENUMERATE_HTML_ATTRIBUTE(readonly) \ 196 __ENUMERATE_HTML_ATTRIBUTE(rel) \ 197 __ENUMERATE_HTML_ATTRIBUTE(required) \ 198 __ENUMERATE_HTML_ATTRIBUTE(rev) \ 199 __ENUMERATE_HTML_ATTRIBUTE(reversed) \ 200 __ENUMERATE_HTML_ATTRIBUTE(rows) \ 201 __ENUMERATE_HTML_ATTRIBUTE(rowspan) \ 202 __ENUMERATE_HTML_ATTRIBUTE(rules) \ 203 __ENUMERATE_HTML_ATTRIBUTE(scheme) \ 204 __ENUMERATE_HTML_ATTRIBUTE(scrolling) \ 205 __ENUMERATE_HTML_ATTRIBUTE(selected) \ 206 __ENUMERATE_HTML_ATTRIBUTE(shape) \ 207 __ENUMERATE_HTML_ATTRIBUTE(size) \ 208 __ENUMERATE_HTML_ATTRIBUTE(sizes) \ 209 __ENUMERATE_HTML_ATTRIBUTE(src) \ 210 __ENUMERATE_HTML_ATTRIBUTE(srcdoc) \ 211 __ENUMERATE_HTML_ATTRIBUTE(srclang) \ 212 __ENUMERATE_HTML_ATTRIBUTE(srcset) \ 213 __ENUMERATE_HTML_ATTRIBUTE(standby) \ 214 __ENUMERATE_HTML_ATTRIBUTE(step) \ 215 __ENUMERATE_HTML_ATTRIBUTE(style) \ 216 __ENUMERATE_HTML_ATTRIBUTE(summary) \ 217 __ENUMERATE_HTML_ATTRIBUTE(tabindex) \ 218 __ENUMERATE_HTML_ATTRIBUTE(target) \ 219 __ENUMERATE_HTML_ATTRIBUTE(text) \ 220 __ENUMERATE_HTML_ATTRIBUTE(title) \ 221 __ENUMERATE_HTML_ATTRIBUTE(type) \ 222 __ENUMERATE_HTML_ATTRIBUTE(usemap) \ 223 __ENUMERATE_HTML_ATTRIBUTE(valign) \ 224 __ENUMERATE_HTML_ATTRIBUTE(value) \ 225 __ENUMERATE_HTML_ATTRIBUTE(valuetype) \ 226 __ENUMERATE_HTML_ATTRIBUTE(version) \ 227 __ENUMERATE_HTML_ATTRIBUTE(vlink) \ 228 __ENUMERATE_HTML_ATTRIBUTE(vspace) \ 229 __ENUMERATE_HTML_ATTRIBUTE(width) \ 230 __ENUMERATE_HTML_ATTRIBUTE(wrap) 231 232#define __ENUMERATE_HTML_ATTRIBUTE(name) extern DeprecatedFlyString name; 233ENUMERATE_HTML_ATTRIBUTES 234#undef __ENUMERATE_HTML_ATTRIBUTE 235 236} 237 238bool is_boolean_attribute(DeprecatedFlyString const& attribute); 239 240} 241}