| OLD | NEW |
| (Empty) |
| 1 // Copyright (c) 2008, Google Inc. | |
| 2 // All rights reserved. | |
| 3 // | |
| 4 // Redistribution and use in source and binary forms, with or without | |
| 5 // modification, are permitted provided that the following conditions are | |
| 6 // met: | |
| 7 // | |
| 8 // * Redistributions of source code must retain the above copyright | |
| 9 // notice, this list of conditions and the following disclaimer. | |
| 10 // * Redistributions in binary form must reproduce the above | |
| 11 // copyright notice, this list of conditions and the following disclaimer | |
| 12 // in the documentation and/or other materials provided with the | |
| 13 // distribution. | |
| 14 // * Neither the name of Google Inc. nor the names of its | |
| 15 // contributors may be used to endorse or promote products derived from | |
| 16 // this software without specific prior written permission. | |
| 17 // | |
| 18 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS | |
| 19 // "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT | |
| 20 // LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR | |
| 21 // A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT | |
| 22 // OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | |
| 23 // SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT | |
| 24 // LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | |
| 25 // DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | |
| 26 // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | |
| 27 // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | |
| 28 // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | |
| 29 | |
| 30 #include "config.h" | |
| 31 | |
| 32 #include "v8_index.h" | |
| 33 | |
| 34 // TODO: Can we use a macro to include necessary headers by using | |
| 35 // WRAPPER_TYPES? | |
| 36 #include "V8Attr.h" | |
| 37 #include "V8BarInfo.h" | |
| 38 #include "V8CanvasRenderingContext2D.h" | |
| 39 #include "V8CanvasGradient.h" | |
| 40 #include "V8CanvasPattern.h" | |
| 41 #include "V8CanvasPixelArray.h" | |
| 42 #include "V8CDATASection.h" | |
| 43 #include "V8CharacterData.h" | |
| 44 #include "V8ClientRect.h" | |
| 45 #include "V8ClientRectList.h" | |
| 46 #include "V8Clipboard.h" | |
| 47 #include "V8Comment.h" | |
| 48 #include "V8Console.h" | |
| 49 #include "V8Counter.h" | |
| 50 #include "V8CSSStyleDeclaration.h" | |
| 51 #include "V8CSSRule.h" | |
| 52 #include "V8CSSStyleRule.h" | |
| 53 #include "V8CSSCharsetRule.h" | |
| 54 #include "V8CSSImportRule.h" | |
| 55 #include "V8CSSMediaRule.h" | |
| 56 #include "V8CSSFontFaceRule.h" | |
| 57 #include "V8CSSPageRule.h" | |
| 58 #include "V8CSSRuleList.h" | |
| 59 #include "V8CSSPrimitiveValue.h" | |
| 60 #include "V8CSSValue.h" | |
| 61 #include "V8CSSValueList.h" | |
| 62 #include "V8CSSStyleSheet.h" | |
| 63 #include "V8CSSVariablesDeclaration.h" | |
| 64 #include "V8CSSVariablesRule.h" | |
| 65 #include "V8DataGridColumn.h" | |
| 66 #include "V8DataGridColumnList.h" | |
| 67 #include "V8Database.h" | |
| 68 #include "V8Document.h" | |
| 69 #include "V8DocumentFragment.h" | |
| 70 #include "V8DocumentType.h" | |
| 71 #include "V8Element.h" | |
| 72 #include "V8Entity.h" | |
| 73 #include "V8EntityReference.h" | |
| 74 #include "V8File.h" | |
| 75 #include "V8FileList.h" | |
| 76 #include "V8History.h" | |
| 77 #include "V8HTMLCanvasElement.h" | |
| 78 #include "V8UndetectableHTMLCollection.h" | |
| 79 #include "V8HTMLCollection.h" | |
| 80 #include "V8HTMLDocument.h" | |
| 81 #include "V8HTMLElement.h" | |
| 82 #include "V8HTMLOptionsCollection.h" | |
| 83 #include "V8HTMLAnchorElement.h" | |
| 84 #include "V8HTMLAppletElement.h" | |
| 85 #include "V8HTMLAreaElement.h" | |
| 86 #include "V8HTMLBaseElement.h" | |
| 87 #include "V8HTMLBaseFontElement.h" | |
| 88 #include "V8HTMLBlockquoteElement.h" | |
| 89 #include "V8HTMLBodyElement.h" | |
| 90 #include "V8HTMLBRElement.h" | |
| 91 #include "V8HTMLButtonElement.h" | |
| 92 #include "V8HTMLCanvasElement.h" | |
| 93 #include "V8HTMLModElement.h" | |
| 94 #include "V8HTMLDataGridCellElement.h" | |
| 95 #include "V8HTMLDataGridColElement.h" | |
| 96 #include "V8HTMLDataGridElement.h" | |
| 97 #include "V8HTMLDataGridRowElement.h" | |
| 98 #include "V8HTMLDirectoryElement.h" | |
| 99 #include "V8HTMLDivElement.h" | |
| 100 #include "V8HTMLDListElement.h" | |
| 101 #include "V8HTMLEmbedElement.h" | |
| 102 #include "V8HTMLFieldSetElement.h" | |
| 103 #include "V8HTMLFormElement.h" | |
| 104 #include "V8HTMLFontElement.h" | |
| 105 #include "V8HTMLFrameElement.h" | |
| 106 #include "V8HTMLFrameSetElement.h" | |
| 107 #include "V8HTMLHeadingElement.h" | |
| 108 #include "V8HTMLHeadElement.h" | |
| 109 #include "V8HTMLHRElement.h" | |
| 110 #include "V8HTMLHtmlElement.h" | |
| 111 #include "V8HTMLIFrameElement.h" | |
| 112 #include "V8HTMLImageElement.h" | |
| 113 #include "V8HTMLInputElement.h" | |
| 114 #include "V8HTMLIsIndexElement.h" | |
| 115 #include "V8HTMLLabelElement.h" | |
| 116 #include "V8HTMLLegendElement.h" | |
| 117 #include "V8HTMLLIElement.h" | |
| 118 #include "V8HTMLLinkElement.h" | |
| 119 #include "V8HTMLMapElement.h" | |
| 120 #include "V8HTMLMarqueeElement.h" | |
| 121 #include "V8HTMLMenuElement.h" | |
| 122 #include "V8HTMLMetaElement.h" | |
| 123 #include "V8HTMLObjectElement.h" | |
| 124 #include "V8HTMLOListElement.h" | |
| 125 #include "V8HTMLOptGroupElement.h" | |
| 126 #include "V8HTMLOptionElement.h" | |
| 127 #include "V8HTMLParagraphElement.h" | |
| 128 #include "V8HTMLParamElement.h" | |
| 129 #include "V8HTMLPreElement.h" | |
| 130 #include "V8HTMLQuoteElement.h" | |
| 131 #include "V8HTMLScriptElement.h" | |
| 132 #include "V8HTMLSelectElement.h" | |
| 133 #include "V8HTMLStyleElement.h" | |
| 134 #include "V8HTMLTableCaptionElement.h" | |
| 135 #include "V8HTMLTableColElement.h" | |
| 136 #include "V8HTMLTableElement.h" | |
| 137 #include "V8HTMLTableSectionElement.h" | |
| 138 #include "V8HTMLTableCellElement.h" | |
| 139 #include "V8HTMLTableRowElement.h" | |
| 140 #include "V8HTMLTextAreaElement.h" | |
| 141 #include "V8HTMLTitleElement.h" | |
| 142 #include "V8HTMLUListElement.h" | |
| 143 #include "V8ImageData.h" | |
| 144 #include "V8InspectorController.h" | |
| 145 #include "V8MediaList.h" | |
| 146 #include "V8MessageChannel.h" | |
| 147 #include "V8MessageEvent.h" | |
| 148 #include "V8MessagePort.h" | |
| 149 #include "V8NamedNodeMap.h" | |
| 150 #include "V8Node.h" | |
| 151 #include "V8NodeList.h" | |
| 152 #include "V8NodeFilter.h" | |
| 153 #include "V8Notation.h" | |
| 154 #include "V8ProcessingInstruction.h" | |
| 155 #include "V8ProgressEvent.h" | |
| 156 #include "V8StyleSheet.h" | |
| 157 #include "V8Text.h" | |
| 158 #include "V8TextEvent.h" | |
| 159 #include "V8DOMCoreException.h" | |
| 160 #include "V8DOMParser.h" | |
| 161 #include "V8DOMWindow.h" | |
| 162 #include "V8Event.h" | |
| 163 #include "V8EventException.h" | |
| 164 #include "V8KeyboardEvent.h" | |
| 165 #include "V8MouseEvent.h" | |
| 166 #include "V8WebKitAnimationEvent.h" | |
| 167 #include "V8WebKitCSSKeyframeRule.h" | |
| 168 #include "V8WebKitCSSKeyframesRule.h" | |
| 169 #include "V8WebKitCSSMatrix.h" | |
| 170 #include "V8WebKitCSSTransformValue.h" | |
| 171 #include "V8WebKitPoint.h" | |
| 172 #include "V8WebKitTransitionEvent.h" | |
| 173 #include "V8WheelEvent.h" | |
| 174 #include "V8UIEvent.h" | |
| 175 #include "V8MutationEvent.h" | |
| 176 #include "V8OverflowEvent.h" | |
| 177 #include "V8Location.h" | |
| 178 #include "V8Screen.h" | |
| 179 #include "V8DOMSelection.h" | |
| 180 #include "V8Navigator.h" | |
| 181 #include "V8MimeType.h" | |
| 182 #include "V8MimeTypeArray.h" | |
| 183 #include "V8Plugin.h" | |
| 184 #include "V8PluginArray.h" | |
| 185 #include "V8Range.h" | |
| 186 #include "V8RangeException.h" | |
| 187 #include "V8Rect.h" | |
| 188 #include "V8SQLError.h" | |
| 189 #include "V8SQLResultSet.h" | |
| 190 #include "V8SQLResultSetRowList.h" | |
| 191 #include "V8SQLTransaction.h" | |
| 192 #include "V8NodeIterator.h" | |
| 193 #include "V8TextMetrics.h" | |
| 194 #include "V8TreeWalker.h" | |
| 195 #include "V8StyleSheetList.h" | |
| 196 #include "V8DOMImplementation.h" | |
| 197 #include "V8XPathResult.h" | |
| 198 #include "V8XPathException.h" | |
| 199 #include "V8XPathExpression.h" | |
| 200 #include "V8XPathNSResolver.h" | |
| 201 #include "V8XMLHttpRequest.h" | |
| 202 #include "V8XMLHttpRequestException.h" | |
| 203 #include "V8XMLHttpRequestProgressEvent.h" | |
| 204 #include "V8XMLHttpRequestUpload.h" | |
| 205 #include "V8XMLSerializer.h" | |
| 206 #include "V8XPathEvaluator.h" | |
| 207 #include "V8XSLTProcessor.h" | |
| 208 #include "V8RGBColor.h" | |
| 209 | |
| 210 #if ENABLE(DOM_STORAGE) | |
| 211 #include "V8Storage.h" | |
| 212 #include "V8StorageEvent.h" | |
| 213 #endif | |
| 214 | |
| 215 #if ENABLE(SVG_ANIMATION) | |
| 216 #include "V8SVGAnimateColorElement.h" | |
| 217 #include "V8SVGAnimateElement.h" | |
| 218 #include "V8SVGAnimateTransformElement.h" | |
| 219 #include "V8SVGAnimationElement.h" | |
| 220 #include "V8SVGSetElement.h" | |
| 221 #endif | |
| 222 | |
| 223 #if ENABLE(SVG_FILTERS) | |
| 224 #include "V8SVGComponentTransferFunctionElement.h" | |
| 225 #include "V8SVGFEBlendElement.h" | |
| 226 #include "V8SVGFEColorMatrixElement.h" | |
| 227 #include "V8SVGFEComponentTransferElement.h" | |
| 228 #include "V8SVGFECompositeElement.h" | |
| 229 #include "V8SVGFEDiffuseLightingElement.h" | |
| 230 #include "V8SVGFEDisplacementMapElement.h" | |
| 231 #include "V8SVGFEDistantLightElement.h" | |
| 232 #include "V8SVGFEFloodElement.h" | |
| 233 #include "V8SVGFEFuncAElement.h" | |
| 234 #include "V8SVGFEFuncBElement.h" | |
| 235 #include "V8SVGFEFuncGElement.h" | |
| 236 #include "V8SVGFEFuncRElement.h" | |
| 237 #include "V8SVGFEGaussianBlurElement.h" | |
| 238 #include "V8SVGFEImageElement.h" | |
| 239 #include "V8SVGFEMergeElement.h" | |
| 240 #include "V8SVGFEMergeNodeElement.h" | |
| 241 #include "V8SVGFEOffsetElement.h" | |
| 242 #include "V8SVGFEPointLightElement.h" | |
| 243 #include "V8SVGFESpecularLightingElement.h" | |
| 244 #include "V8SVGFESpotLightElement.h" | |
| 245 #include "V8SVGFETileElement.h" | |
| 246 #include "V8SVGFETurbulenceElement.h" | |
| 247 #include "V8SVGFilterElement.h" | |
| 248 #endif | |
| 249 | |
| 250 #if ENABLE(SVG_FONTS) | |
| 251 #include "V8SVGDefinitionSrcElement.h" | |
| 252 #include "V8SVGFontFaceElement.h" | |
| 253 #include "V8SVGFontFaceFormatElement.h" | |
| 254 #include "V8SVGFontFaceNameElement.h" | |
| 255 #include "V8SVGFontFaceSrcElement.h" | |
| 256 #include "V8SVGFontFaceUriElement.h" | |
| 257 #endif | |
| 258 | |
| 259 #if ENABLE(SVG_FOREIGN_OBJECT) | |
| 260 #include "V8SVGForeignObjectElement.h" | |
| 261 #endif | |
| 262 | |
| 263 #if ENABLE(SVG_USE) | |
| 264 #include "V8SVGUseElement.h" | |
| 265 #endif | |
| 266 | |
| 267 #if ENABLE(SVG) | |
| 268 #include "V8SVGAElement.h" | |
| 269 #include "V8SVGAltGlyphElement.h" | |
| 270 #include "V8SVGCircleElement.h" | |
| 271 #include "V8SVGClipPathElement.h" | |
| 272 #include "V8SVGCursorElement.h" | |
| 273 #include "V8SVGDefsElement.h" | |
| 274 #include "V8SVGDescElement.h" | |
| 275 #include "V8SVGElement.h" | |
| 276 #include "V8SVGEllipseElement.h" | |
| 277 #include "V8SVGException.h" | |
| 278 #include "V8SVGGElement.h" | |
| 279 #include "V8SVGGlyphElement.h" | |
| 280 #include "V8SVGGradientElement.h" | |
| 281 #include "V8SVGImageElement.h" | |
| 282 #include "V8SVGLinearGradientElement.h" | |
| 283 #include "V8SVGLineElement.h" | |
| 284 #include "V8SVGMarkerElement.h" | |
| 285 #include "V8SVGMaskElement.h" | |
| 286 #include "V8SVGMetadataElement.h" | |
| 287 #include "V8SVGPathElement.h" | |
| 288 #include "V8SVGPatternElement.h" | |
| 289 #include "V8SVGPolygonElement.h" | |
| 290 #include "V8SVGPolylineElement.h" | |
| 291 #include "V8SVGRadialGradientElement.h" | |
| 292 #include "V8SVGRectElement.h" | |
| 293 #include "V8SVGScriptElement.h" | |
| 294 #include "V8SVGStopElement.h" | |
| 295 #include "V8SVGStyleElement.h" | |
| 296 #include "V8SVGSVGElement.h" | |
| 297 #include "V8SVGSwitchElement.h" | |
| 298 #include "V8SVGSymbolElement.h" | |
| 299 #include "V8SVGTextContentElement.h" | |
| 300 #include "V8SVGTextElement.h" | |
| 301 #include "V8SVGTextPathElement.h" | |
| 302 #include "V8SVGTextPositioningElement.h" | |
| 303 #include "V8SVGTitleElement.h" | |
| 304 #include "V8SVGTRefElement.h" | |
| 305 #include "V8SVGTSpanElement.h" | |
| 306 #include "V8SVGViewElement.h" | |
| 307 #include "V8SVGAngle.h" | |
| 308 #include "V8SVGAnimatedAngle.h" | |
| 309 #include "V8SVGAnimatedBoolean.h" | |
| 310 #include "V8SVGAnimatedEnumeration.h" | |
| 311 #include "V8SVGAnimatedInteger.h" | |
| 312 #include "V8SVGAnimatedLength.h" | |
| 313 #include "V8SVGAnimatedLengthList.h" | |
| 314 #include "V8SVGAnimatedNumber.h" | |
| 315 #include "V8SVGAnimatedNumberList.h" | |
| 316 #include "V8SVGAnimatedPoints.h" | |
| 317 #include "V8SVGAnimatedPreserveAspectRatio.h" | |
| 318 #include "V8SVGAnimatedRect.h" | |
| 319 #include "V8SVGAnimatedString.h" | |
| 320 #include "V8SVGAnimatedTransformList.h" | |
| 321 #include "V8SVGColor.h" | |
| 322 #include "V8SVGDocument.h" | |
| 323 #include "V8SVGElementInstance.h" | |
| 324 #include "V8SVGElementInstanceList.h" | |
| 325 #include "V8SVGLength.h" | |
| 326 #include "V8SVGLengthList.h" | |
| 327 #include "V8SVGMatrix.h" | |
| 328 #include "V8SVGNumber.h" | |
| 329 #include "V8SVGNumberList.h" | |
| 330 #include "V8SVGPaint.h" | |
| 331 #include "V8SVGPathSeg.h" | |
| 332 #include "V8SVGPathSegArcAbs.h" | |
| 333 #include "V8SVGPathSegArcRel.h" | |
| 334 #include "V8SVGPathSegClosePath.h" | |
| 335 #include "V8SVGPathSegCurvetoCubicAbs.h" | |
| 336 #include "V8SVGPathSegCurvetoCubicRel.h" | |
| 337 #include "V8SVGPathSegCurvetoCubicSmoothAbs.h" | |
| 338 #include "V8SVGPathSegCurvetoCubicSmoothRel.h" | |
| 339 #include "V8SVGPathSegCurvetoQuadraticAbs.h" | |
| 340 #include "V8SVGPathSegCurvetoQuadraticRel.h" | |
| 341 #include "V8SVGPathSegCurvetoQuadraticSmoothAbs.h" | |
| 342 #include "V8SVGPathSegCurvetoQuadraticSmoothRel.h" | |
| 343 #include "V8SVGPathSegLinetoAbs.h" | |
| 344 #include "V8SVGPathSegLinetoHorizontalAbs.h" | |
| 345 #include "V8SVGPathSegLinetoHorizontalRel.h" | |
| 346 #include "V8SVGPathSegLinetoRel.h" | |
| 347 #include "V8SVGPathSegLinetoVerticalAbs.h" | |
| 348 #include "V8SVGPathSegLinetoVerticalRel.h" | |
| 349 #include "V8SVGPathSegList.h" | |
| 350 #include "V8SVGPathSegMovetoAbs.h" | |
| 351 #include "V8SVGPathSegMovetoRel.h" | |
| 352 #include "V8SVGPoint.h" | |
| 353 #include "V8SVGPointList.h" | |
| 354 #include "V8SVGPreserveAspectRatio.h" | |
| 355 #include "V8SVGRect.h" | |
| 356 #include "V8SVGRenderingIntent.h" | |
| 357 #include "V8SVGStringList.h" | |
| 358 #include "V8SVGTransform.h" | |
| 359 #include "V8SVGTransformList.h" | |
| 360 #include "V8SVGUnitTypes.h" | |
| 361 #include "V8SVGURIReference.h" | |
| 362 #include "V8SVGZoomEvent.h" | |
| 363 #endif | |
| 364 | |
| 365 #if ENABLE(VIDEO) | |
| 366 #include "V8HTMLAudioElement.h" | |
| 367 #include "V8HTMLMediaElement.h" | |
| 368 #include "V8HTMLSourceElement.h" | |
| 369 #include "V8HTMLVideoElement.h" | |
| 370 #include "V8MediaError.h" | |
| 371 #include "V8TimeRanges.h" | |
| 372 #endif | |
| 373 | |
| 374 #if ENABLE(WORKERS) | |
| 375 #include "V8Worker.h" | |
| 376 #include "V8WorkerContext.h" | |
| 377 #include "V8WorkerLocation.h" | |
| 378 #include "V8WorkerNavigator.h" | |
| 379 #endif | |
| 380 | |
| 381 namespace WebCore { | |
| 382 | |
| 383 FunctionTemplateFactory V8ClassIndex::GetFactory(V8WrapperType type) { | |
| 384 switch (type) { | |
| 385 #define MAKE_CASE(type, name)\ | |
| 386 case V8ClassIndex::type: return V8##name::GetTemplate; | |
| 387 WRAPPER_TYPES(MAKE_CASE) | |
| 388 #undef MAKE_CASE | |
| 389 default: return NULL; | |
| 390 } | |
| 391 } | |
| 392 | |
| 393 | |
| 394 #define MAKE_CACHE(type, name)\ | |
| 395 static v8::Persistent<v8::FunctionTemplate> name##_cache_; | |
| 396 ALL_WRAPPER_TYPES(MAKE_CACHE) | |
| 397 #undef MAKE_CACHE | |
| 398 | |
| 399 | |
| 400 v8::Persistent<v8::FunctionTemplate>* V8ClassIndex::GetCache( | |
| 401 V8WrapperType type) { | |
| 402 switch (type) { | |
| 403 #define MAKE_CASE(type, name)\ | |
| 404 case V8ClassIndex::type: return &name##_cache_; | |
| 405 ALL_WRAPPER_TYPES(MAKE_CASE) | |
| 406 #undef MAKE_CASE | |
| 407 default: | |
| 408 ASSERT(false); | |
| 409 return NULL; | |
| 410 } | |
| 411 } | |
| 412 | |
| 413 } // namespace WebCore | |
| OLD | NEW |