Unreviewed, rolling out r154955.
authorakling@apple.com <akling@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 2 Sep 2013 15:22:23 +0000 (15:22 +0000)
committerakling@apple.com <akling@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Mon, 2 Sep 2013 15:22:23 +0000 (15:22 +0000)
http://trac.webkit.org/changeset/154955
https://bugs.webkit.org/show_bug.cgi?id=120605

broke xcode4 build :| (Requested by kling on #webkit).

Patch by Commit Queue <commit-queue@webkit.org> on 2013-09-02

* GNUmakefile.am:
* GNUmakefile.list.am:
* WebCore.vcxproj/WebCore.vcxproj:
* WebCore.xcodeproj/project.pbxproj:
* dom/make_names.pl:
(defaultTagPropertyHash):
(printLicenseHeader):
* html/HTMLAnchorElement.h:
(WebCore::isHTMLAnchorElement):
(WebCore::HTMLAnchorElement):
* html/HTMLAreaElement.h:
(WebCore::isHTMLAreaElement):
(WebCore::HTMLAreaElement):
* html/HTMLAudioElement.h:
(WebCore::isHTMLAudioElement):
* html/HTMLBaseElement.h:
(WebCore::isHTMLBaseElement):
(WebCore::HTMLBaseElement):
* html/HTMLCanvasElement.h:
(WebCore::isHTMLCanvasElement):
* html/HTMLElement.h:
* html/HTMLFieldSetElement.h:
(WebCore::isHTMLFieldSetElement):
(WebCore::HTMLFieldSetElement):
* html/HTMLFormElement.h:
(WebCore::isHTMLFormElement):
* html/HTMLFrameSetElement.h:
(WebCore::isHTMLFrameSetElement):
(WebCore::HTMLFrameSetElement):
* html/HTMLImageElement.h:
(WebCore::isHTMLImageElement):
* html/HTMLInputElement.h:
(WebCore::isHTMLInputElement):
* html/HTMLLabelElement.h:
(WebCore::isHTMLLabelElement):
(WebCore::HTMLLabelElement):
* html/HTMLLegendElement.h:
(WebCore::isHTMLLegendElement):
(WebCore::HTMLLegendElement):
* html/HTMLMapElement.h:
(WebCore::isHTMLMapElement):
* html/HTMLMeterElement.h:
(WebCore::isHTMLMeterElement):
* html/HTMLOptGroupElement.h:
(WebCore::isHTMLOptGroupElement):
* html/HTMLOptionElement.h:
(WebCore::isHTMLOptionElement):
* html/HTMLParamElement.h:
(WebCore::isHTMLParamElement):
(WebCore::HTMLParamElement):
* html/HTMLProgressElement.h:
(WebCore::isHTMLProgressElement):
* html/HTMLScriptElement.h:
(WebCore::isHTMLScriptElement):
* html/HTMLSourceElement.h:
(WebCore::isHTMLSourceElement):
(WebCore::HTMLSourceElement):
* html/HTMLStyleElement.h:
(WebCore::isHTMLStyleElement):
(WebCore::HTMLStyleElement):
* html/HTMLTableElement.h:
(WebCore::isHTMLTableElement):
* html/HTMLTableRowElement.h:
(WebCore::isHTMLTableRowElement):
(WebCore::HTMLTableRowElement):
* html/HTMLTagNames.in:
* html/HTMLTextAreaElement.h:
(WebCore::isHTMLTextAreaElement):
* html/HTMLTitleElement.h:
(WebCore::isHTMLTitleElement):
(WebCore::HTMLTitleElement):
* html/HTMLTrackElement.h:
(WebCore::isHTMLTrackElement):
(WebCore::HTMLTrackElement):
* svg/SVGElement.h:
* svg/SVGFontElement.h:
(WebCore::isSVGFontElement):
* svg/SVGFontFaceElement.h:
(WebCore::isSVGFontFaceElement):
(WebCore::SVGFontFaceElement):
* svg/SVGForeignObjectElement.h:
(WebCore::isSVGForeignObjectElement):
(WebCore::SVGForeignObjectElement):
* svg/SVGImageElement.h:
(WebCore::isSVGImageElement):
* svg/SVGScriptElement.h:
(WebCore::isSVGScriptElement):
* svg/svgtags.in:

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@154958 268f45cc-cd09-0410-ab3c-d52691b4dbfc

41 files changed:
Source/WebCore/ChangeLog
Source/WebCore/GNUmakefile.am
Source/WebCore/GNUmakefile.list.am
Source/WebCore/WebCore.vcxproj/WebCore.vcxproj
Source/WebCore/WebCore.xcodeproj/project.pbxproj
Source/WebCore/dom/make_names.pl
Source/WebCore/html/HTMLAnchorElement.h
Source/WebCore/html/HTMLAreaElement.h
Source/WebCore/html/HTMLAudioElement.h
Source/WebCore/html/HTMLBaseElement.h
Source/WebCore/html/HTMLCanvasElement.h
Source/WebCore/html/HTMLElement.h
Source/WebCore/html/HTMLFieldSetElement.h
Source/WebCore/html/HTMLFormElement.h
Source/WebCore/html/HTMLFrameSetElement.h
Source/WebCore/html/HTMLImageElement.h
Source/WebCore/html/HTMLInputElement.h
Source/WebCore/html/HTMLLabelElement.h
Source/WebCore/html/HTMLLegendElement.h
Source/WebCore/html/HTMLMapElement.h
Source/WebCore/html/HTMLMeterElement.h
Source/WebCore/html/HTMLOptGroupElement.h
Source/WebCore/html/HTMLOptionElement.h
Source/WebCore/html/HTMLParamElement.h
Source/WebCore/html/HTMLProgressElement.h
Source/WebCore/html/HTMLScriptElement.h
Source/WebCore/html/HTMLSourceElement.h
Source/WebCore/html/HTMLStyleElement.h
Source/WebCore/html/HTMLTableElement.h
Source/WebCore/html/HTMLTableRowElement.h
Source/WebCore/html/HTMLTagNames.in
Source/WebCore/html/HTMLTextAreaElement.h
Source/WebCore/html/HTMLTitleElement.h
Source/WebCore/html/HTMLTrackElement.h
Source/WebCore/svg/SVGElement.h
Source/WebCore/svg/SVGFontElement.h
Source/WebCore/svg/SVGFontFaceElement.h
Source/WebCore/svg/SVGForeignObjectElement.h
Source/WebCore/svg/SVGImageElement.h
Source/WebCore/svg/SVGScriptElement.h
Source/WebCore/svg/svgtags.in

index b1b7da0..de5b7d8 100644 (file)
@@ -1,3 +1,100 @@
+2013-09-02  Commit Queue  <commit-queue@webkit.org>
+
+        Unreviewed, rolling out r154955.
+        http://trac.webkit.org/changeset/154955
+        https://bugs.webkit.org/show_bug.cgi?id=120605
+
+        broke xcode4 build :| (Requested by kling on #webkit).
+
+        * GNUmakefile.am:
+        * GNUmakefile.list.am:
+        * WebCore.vcxproj/WebCore.vcxproj:
+        * WebCore.xcodeproj/project.pbxproj:
+        * dom/make_names.pl:
+        (defaultTagPropertyHash):
+        (printLicenseHeader):
+        * html/HTMLAnchorElement.h:
+        (WebCore::isHTMLAnchorElement):
+        (WebCore::HTMLAnchorElement):
+        * html/HTMLAreaElement.h:
+        (WebCore::isHTMLAreaElement):
+        (WebCore::HTMLAreaElement):
+        * html/HTMLAudioElement.h:
+        (WebCore::isHTMLAudioElement):
+        * html/HTMLBaseElement.h:
+        (WebCore::isHTMLBaseElement):
+        (WebCore::HTMLBaseElement):
+        * html/HTMLCanvasElement.h:
+        (WebCore::isHTMLCanvasElement):
+        * html/HTMLElement.h:
+        * html/HTMLFieldSetElement.h:
+        (WebCore::isHTMLFieldSetElement):
+        (WebCore::HTMLFieldSetElement):
+        * html/HTMLFormElement.h:
+        (WebCore::isHTMLFormElement):
+        * html/HTMLFrameSetElement.h:
+        (WebCore::isHTMLFrameSetElement):
+        (WebCore::HTMLFrameSetElement):
+        * html/HTMLImageElement.h:
+        (WebCore::isHTMLImageElement):
+        * html/HTMLInputElement.h:
+        (WebCore::isHTMLInputElement):
+        * html/HTMLLabelElement.h:
+        (WebCore::isHTMLLabelElement):
+        (WebCore::HTMLLabelElement):
+        * html/HTMLLegendElement.h:
+        (WebCore::isHTMLLegendElement):
+        (WebCore::HTMLLegendElement):
+        * html/HTMLMapElement.h:
+        (WebCore::isHTMLMapElement):
+        * html/HTMLMeterElement.h:
+        (WebCore::isHTMLMeterElement):
+        * html/HTMLOptGroupElement.h:
+        (WebCore::isHTMLOptGroupElement):
+        * html/HTMLOptionElement.h:
+        (WebCore::isHTMLOptionElement):
+        * html/HTMLParamElement.h:
+        (WebCore::isHTMLParamElement):
+        (WebCore::HTMLParamElement):
+        * html/HTMLProgressElement.h:
+        (WebCore::isHTMLProgressElement):
+        * html/HTMLScriptElement.h:
+        (WebCore::isHTMLScriptElement):
+        * html/HTMLSourceElement.h:
+        (WebCore::isHTMLSourceElement):
+        (WebCore::HTMLSourceElement):
+        * html/HTMLStyleElement.h:
+        (WebCore::isHTMLStyleElement):
+        (WebCore::HTMLStyleElement):
+        * html/HTMLTableElement.h:
+        (WebCore::isHTMLTableElement):
+        * html/HTMLTableRowElement.h:
+        (WebCore::isHTMLTableRowElement):
+        (WebCore::HTMLTableRowElement):
+        * html/HTMLTagNames.in:
+        * html/HTMLTextAreaElement.h:
+        (WebCore::isHTMLTextAreaElement):
+        * html/HTMLTitleElement.h:
+        (WebCore::isHTMLTitleElement):
+        (WebCore::HTMLTitleElement):
+        * html/HTMLTrackElement.h:
+        (WebCore::isHTMLTrackElement):
+        (WebCore::HTMLTrackElement):
+        * svg/SVGElement.h:
+        * svg/SVGFontElement.h:
+        (WebCore::isSVGFontElement):
+        * svg/SVGFontFaceElement.h:
+        (WebCore::isSVGFontFaceElement):
+        (WebCore::SVGFontFaceElement):
+        * svg/SVGForeignObjectElement.h:
+        (WebCore::isSVGForeignObjectElement):
+        (WebCore::SVGForeignObjectElement):
+        * svg/SVGImageElement.h:
+        (WebCore::isSVGImageElement):
+        * svg/SVGScriptElement.h:
+        (WebCore::isSVGScriptElement):
+        * svg/svgtags.in:
+
 2013-09-02  Antti Koivisto  <antti@apple.com>
 
         Clean up ContainerNode::childrenChanged
index a4b88e9..4d7e180 100644 (file)
@@ -298,7 +298,6 @@ DerivedSources/WebCore/PlugInsResources.h: $(WebCore)/css/make-css-file-arrays.p
 DerivedSources/WebCore/JSHTMLElementWrapperFactory.cpp: DerivedSources/WebCore/HTMLElementFactory.cpp
 DerivedSources/WebCore/HTMLElementFactory.cpp: DerivedSources/WebCore/HTMLElementFactory.h
 DerivedSources/WebCore/HTMLElementFactory.h: DerivedSources/WebCore/HTMLNames.cpp
-DerivedSources/WebCore/HTMLElementTypeChecks.h: DerivedSources/WebCore/HTMLNames.h
 DerivedSources/WebCore/HTMLNames.cpp: DerivedSources/WebCore/HTMLNames.h
 DerivedSources/WebCore/HTMLNames.h: $(WebCore)/dom/make_names.pl $(WebCore)/bindings/scripts/Hasher.pm $(WebCore)/bindings/scripts/StaticString.pm $(WebCore)/html/HTMLTagNames.in $(WebCore)/html/HTMLAttributeNames.in
        $(AM_V_GEN)$(PERL) -I$(WebCore)/bindings/scripts $< --tags $(WebCore)/html/HTMLTagNames.in --attrs $(WebCore)/html/HTMLAttributeNames.in --extraDefines "$(feature_defines)" --factory --wrapperFactory --outputDir "$(GENSOURCES_WEBCORE)"
index bdf7b72..eefc906 100644 (file)
@@ -15,7 +15,6 @@ webcore_built_sources += \
        DerivedSources/WebCore/ExceptionInterfaces.h \
        DerivedSources/WebCore/HTMLElementFactory.cpp \
        DerivedSources/WebCore/HTMLElementFactory.h \
-       DerivedSources/WebCore/HTMLElementTypeChecks.h \
        DerivedSources/WebCore/HTMLEntityTable.cpp \
        DerivedSources/WebCore/HTMLNames.cpp \
        DerivedSources/WebCore/HTMLNames.h \
index 0b44d0d..002b375 100644 (file)
     <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\ExceptionHeaders.h" />
     <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\ExceptionInterfaces.h" />
     <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\HTMLElementFactory.h" />
-    <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\HTMLElementTypeChecks.h" />
     <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\HTMLNames.h" />
     <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\InjectedScriptCanvasModuleSource.h" />
     <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\InjectedScriptSource.h" />
     <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\MathMLElementFactory.h" />
     <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\MathMLNames.h" />
     <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\SVGElementFactory.h" />
-    <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\SVGElementTypeChecks.h" />
     <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\SVGNames.h" />
     <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\UserAgentStyleSheets.h" />
     <ClInclude Include="$(ConfigurationBuildDir)\obj$(PlatformArchitecture)\$(ProjectName)\DerivedSources\WebKitFontFamilyNames.h" />
   <ImportGroup Label="ExtensionTargets">
     <Import Project="$(VCTargetsPath)\BuildCustomizations\masm.targets" />
   </ImportGroup>
-</Project>
+</Project>
\ No newline at end of file
index 63b1f0e..da3ff28 100644 (file)
                B55D5AA4119131FC00BCC315 /* JSSQLTransactionSyncCallback.h in Headers */ = {isa = PBXBuildFile; fileRef = B55D5AA2119131FC00BCC315 /* JSSQLTransactionSyncCallback.h */; };
                B55D5AA5119131FC00BCC315 /* JSSQLTransactionSyncCallback.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B55D5AA3119131FC00BCC315 /* JSSQLTransactionSyncCallback.cpp */; };
                B55D5AA91191325000BCC315 /* JSSQLTransactionSyncCustom.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B55D5AA71191325000BCC315 /* JSSQLTransactionSyncCustom.cpp */; };
-               B562DB6017D3CD630010AF96 /* HTMLElementTypeChecks.h in Headers */ = {isa = PBXBuildFile; fileRef = B562DB5E17D3CD560010AF96 /* HTMLElementTypeChecks.h */; settings = {ATTRIBUTES = (Private, ); }; };
-               B562DB6117D3CD660010AF96 /* SVGElementTypeChecks.h in Headers */ = {isa = PBXBuildFile; fileRef = B562DB5F17D3CD560010AF96 /* SVGElementTypeChecks.h */; settings = {ATTRIBUTES = (Private, ); }; };
                B58CEB6911913607002A6790 /* JSDatabaseSync.h in Headers */ = {isa = PBXBuildFile; fileRef = B58CEB6711913607002A6790 /* JSDatabaseSync.h */; };
                B58CEB6A11913607002A6790 /* JSDatabaseSync.cpp in Sources */ = {isa = PBXBuildFile; fileRef = B58CEB6811913607002A6790 /* JSDatabaseSync.cpp */; };
                B58CEB6D1191361C002A6790 /* JSSQLTransactionSync.h in Headers */ = {isa = PBXBuildFile; fileRef = B58CEB6B1191361C002A6790 /* JSSQLTransactionSync.h */; };
                B55D5AA2119131FC00BCC315 /* JSSQLTransactionSyncCallback.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSSQLTransactionSyncCallback.h; sourceTree = "<group>"; };
                B55D5AA3119131FC00BCC315 /* JSSQLTransactionSyncCallback.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSSQLTransactionSyncCallback.cpp; sourceTree = "<group>"; };
                B55D5AA71191325000BCC315 /* JSSQLTransactionSyncCustom.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSSQLTransactionSyncCustom.cpp; sourceTree = "<group>"; };
-               B562DB5E17D3CD560010AF96 /* HTMLElementTypeChecks.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = HTMLElementTypeChecks.h; path = ../../../../../../../../../../../Build/Debug/DerivedSources/WebCore/HTMLElementTypeChecks.h; sourceTree = "<group>"; };
-               B562DB5F17D3CD560010AF96 /* SVGElementTypeChecks.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = SVGElementTypeChecks.h; path = ../../../../../../../../../../../Build/Debug/DerivedSources/WebCore/SVGElementTypeChecks.h; sourceTree = "<group>"; };
                B58CEB6711913607002A6790 /* JSDatabaseSync.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSDatabaseSync.h; sourceTree = "<group>"; };
                B58CEB6811913607002A6790 /* JSDatabaseSync.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JSDatabaseSync.cpp; sourceTree = "<group>"; };
                B58CEB6B1191361C002A6790 /* JSSQLTransactionSync.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JSSQLTransactionSync.h; sourceTree = "<group>"; };
                                9767CE0A145ABC13005E64DB /* ExceptionInterfaces.h */,
                                A17C81200F2A5CF7005DAAEB /* HTMLElementFactory.cpp */,
                                A17C81210F2A5CF7005DAAEB /* HTMLElementFactory.h */,
-                               B562DB5E17D3CD560010AF96 /* HTMLElementTypeChecks.h */,
                                A8BC04911214F69600B5F122 /* HTMLEntityTable.cpp */,
                                A8D06B380A265DCD005E7203 /* HTMLNames.cpp */,
                                A8D06B370A265DCD005E7203 /* HTMLNames.h */,
                                53EF766A16530A61004CBE49 /* SettingsMacros.h */,
                                656581E609D1508D000E61D7 /* SVGElementFactory.cpp */,
                                656581E709D1508D000E61D7 /* SVGElementFactory.h */,
-                               B562DB5F17D3CD560010AF96 /* SVGElementTypeChecks.h */,
                                656581E809D1508D000E61D7 /* SVGNames.cpp */,
                                656581E909D1508D000E61D7 /* SVGNames.h */,
                                656581AE09D14EE6000E61D7 /* UserAgentStyleSheets.h */,
                                85909CDC0ACC7A7E00DF01F1 /* DOMCSSCharsetRuleInternal.h in Headers */,
                                85032DD90AA8C9BE007D3B7D /* DOMCSSFontFaceRule.h in Headers */,
                                85909CDD0ACC7A7E00DF01F1 /* DOMCSSFontFaceRuleInternal.h in Headers */,
-                               B562DB6117D3CD660010AF96 /* SVGElementTypeChecks.h in Headers */,
                                85032DDB0AA8C9BE007D3B7D /* DOMCSSImportRule.h in Headers */,
                                85909CDE0ACC7A7E00DF01F1 /* DOMCSSImportRuleInternal.h in Headers */,
                                85032DDD0AA8C9BE007D3B7D /* DOMCSSMediaRule.h in Headers */,
                                8C0E334F138A92C7008DA94F /* LevelDBWriteBatch.h in Headers */,
                                84730D911248F0B300D3A9C9 /* LightSource.h in Headers */,
                                B22279650D00BF220071B782 /* LinearGradientAttributes.h in Headers */,
-                               B562DB6017D3CD630010AF96 /* HTMLElementTypeChecks.h in Headers */,
                                A5ABB78713B904BC00F197E3 /* LineBreakIteratorPoolICU.h in Headers */,
                                AB31C91E10AE1B8E000C7B92 /* LineClampValue.h in Headers */,
                                89B5EAA211E8003D00F2367E /* LineEnding.h in Headers */,
index 98193db..4078241 100755 (executable)
@@ -155,14 +155,12 @@ die "You must specify a namespaceURI (e.g. http://www.w3.org/2000/svg)" unless $
 $parameters{namespacePrefix} = $parameters{namespace} unless $parameters{namespacePrefix};
 $parameters{fallbackJSInterfaceName} = $parameters{fallbackInterfaceName} unless $parameters{fallbackJSInterfaceName};
 
-my $typeChecksBasePath = "$outputDir/$parameters{namespace}ElementTypeChecks";
 my $namesBasePath = "$outputDir/$parameters{namespace}Names";
 my $factoryBasePath = "$outputDir/$parameters{namespace}ElementFactory";
 my $wrapperFactoryFileName = "$parameters{namespace}ElementWrapperFactory";
 
 printNamesHeaderFile("$namesBasePath.h");
 printNamesCppFile("$namesBasePath.cpp");
-printTypeChecksHeaderFile("$typeChecksBasePath.h");
 
 if ($printFactory) {
     printFactoryCppFile("$factoryBasePath.cpp");
@@ -189,8 +187,7 @@ sub defaultTagPropertyHash
         'wrapperOnlyIfMediaIsAvailable' => 0,
         'conditional' => 0,
         'contextConditional' => 0,
-        'runtimeConditional' => 0,
-        'generateTypeChecks' => 0
+        'runtimeConditional' => 0
     );
 }
 
@@ -589,7 +586,7 @@ sub printLicenseHeader
  *
  * This file was generated by the dom/make_names.pl script.
  *
- * Copyright (C) 2005, 2006, 2007, 2008, 2009, 2013 Apple Inc.  All rights reserved.
+ * Copyright (C) 2005, 2006, 2007, 2008, 2009 Apple Inc.  All rights reserved.
  *
  * Redistribution and use in source and binary forms, with or without
  * modification, are permitted provided that the following conditions
@@ -616,50 +613,6 @@ sub printLicenseHeader
 ";
 }
 
-sub printTypeChecks
-{
-    my ($F, $namesRef) = @_;
-    my %names = %$namesRef;
-
-    for my $name (sort keys %names) {
-        if ($parsedTags{$name}{generateTypeChecks} != 1) {
-            next;
-        }
-
-        my $class = $parsedTags{$name}{interfaceName};
-        my $helper = "is$class";
-
-        print F "class $class;\n";
-        print F "inline bool $helper(const Element& element) { return element.hasTagName(".$parameters{namespace}."Names::".$name."Tag); }\n";
-        print F "inline bool $helper(const Element* element) { ASSERT(element); return $helper(*element); }\n";
-        print F "inline bool $helper(const Node* node) { ASSERT(node); return node->isElementNode() && $helper(toElement(node)); }\n";
-        print F "template <> inline bool isElementOfType<$class>(const Element* element) { return $helper(element); }\n";
-
-        print F "\n";
-    }
-}
-
-sub printTypeChecksHeaderFile
-{
-    my ($headerPath) = shift;
-    my $F;
-    open F, ">$headerPath";
-    printLicenseHeader($F);
-
-    print F "#ifndef ".$parameters{namespace}."ElementTypeChecks_h\n";
-    print F "#define ".$parameters{namespace}."ElementTypeChecks_h\n\n";
-    print F "#include \"config.h\"\n";
-    print F "#include \"".$parameters{namespace}."Names.h\"\n\n";
-    print F "namespace WebCore {\n\n";
-
-    printTypeChecks($F, \%allTags);
-
-    print F "}\n\n";
-    print F "#endif\n";
-
-    close F;
-}
-
 sub printNamesHeaderFile
 {
     my ($headerPath) = shift;
index d4ad69b..cf46948 100644 (file)
@@ -149,12 +149,24 @@ inline LinkHash HTMLAnchorElement::visitedLinkHash() const
     return m_cachedVisitedLinkHash; 
 }
 
+inline bool isHTMLAnchorElement(const Node* node)
+{
+    return node->hasTagName(HTMLNames::aTag);
+}
+
+inline bool isHTMLAnchorElement(const Element* element)
+{
+    return element->hasTagName(HTMLNames::aTag);
+}
+
 inline HTMLAnchorElement* toHTMLAnchorElement(Node* node)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!node || isHTMLAnchorElement(node));
     return static_cast<HTMLAnchorElement*>(node);
 }
 
+template <> inline bool isElementOfType<HTMLAnchorElement>(const Element* element) { return isHTMLAnchorElement(element); }
+
 // Functions shared with the other anchor elements (i.e., SVG).
 
 bool isEnterKeyKeydownEvent(Event*);
index d6c2c3d..8ffc025 100644 (file)
@@ -70,6 +70,18 @@ private:
     Shape m_shape;
 };
 
+inline bool isHTMLAreaElement(const Node* node)
+{
+    return node->hasTagName(HTMLNames::areaTag);
+}
+
+inline bool isHTMLAreaElement(const Element* element)
+{
+    return element->hasTagName(HTMLNames::areaTag);
+}
+
+template <> inline bool isElementOfType<HTMLAreaElement>(const Element* element) { return isHTMLAreaElement(element); }
+
 inline HTMLAreaElement* toHTMLAreaElement(Node* node)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!node || isHTMLAreaElement(node));
index 8153b35..07ca48d 100644 (file)
@@ -43,6 +43,16 @@ private:
     HTMLAudioElement(const QualifiedName&, Document*, bool);
 };
 
+inline bool isHTMLAudioElement(Node* node)
+{
+    return node->hasTagName(HTMLNames::audioTag);
+}
+
+inline bool isHTMLAudioElement(Element* element)
+{
+    return element->hasTagName(HTMLNames::audioTag);
+}
+
 inline HTMLAudioElement* toHTMLAudioElement(Node* node)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!node || isHTMLAudioElement(node));
index 88ef7c7..1a35f47 100644 (file)
@@ -44,6 +44,18 @@ private:
     virtual void removedFrom(ContainerNode*) OVERRIDE;
 };
 
+inline bool isHTMLBaseElement(const Node* node)
+{
+    return node->hasTagName(HTMLNames::baseTag);
+}
+
+inline bool isHTMLBaseElement(const Element* element)
+{
+    return element->hasTagName(HTMLNames::baseTag);
+}
+
+template <> inline bool isElementOfType<HTMLBaseElement>(const Element* element) { return isHTMLBaseElement(element); }
+
 } // namespace
 
 #endif
index 2fcb00a..658109d 100644 (file)
@@ -188,6 +188,11 @@ private:
     mutable RefPtr<Image> m_copiedImage; // FIXME: This is temporary for platforms that have to copy the image buffer to render (and for CSSCanvasValue).
 };
 
+inline bool isHTMLCanvasElement(const Node* node)
+{
+    return node->hasTagName(HTMLNames::canvasTag);
+}
+
 inline const HTMLCanvasElement* toHTMLCanvasElement(const Node* node)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!node || isHTMLCanvasElement(node));
index 1541a50..a6dbef2 100644 (file)
@@ -24,7 +24,6 @@
 #define HTMLElement_h
 
 #include "StyledElement.h"
-#include "HTMLElementTypeChecks.h"
 
 namespace WebCore {
 
index 4a34ccc..2c444bc 100644 (file)
@@ -63,6 +63,19 @@ private:
     mutable uint64_t m_documentVersion;
 };
 
+inline bool isHTMLFieldSetElement(const Node* node)
+{
+    return node->isElementNode() && toElement(node)->hasTagName(HTMLNames::fieldsetTag);
+}
+
+inline bool isHTMLFieldSetElement(const Element* element)
+{
+    return element->hasTagName(HTMLNames::fieldsetTag);
+}
+
+template <> inline bool isElementOfType<HTMLFieldSetElement>(const Element* element) { return isHTMLFieldSetElement(element); }
+
+
 } // namespace
 
 #endif
index 61a5a4b..9a7431a 100644 (file)
@@ -166,6 +166,16 @@ private:
     bool m_wasDemoted;
 };
 
+inline bool isHTMLFormElement(Node* node)
+{
+    return node->hasTagName(HTMLNames::formTag);
+}
+
+inline bool isHTMLFormElement(Element* element)
+{
+    return element->hasTagName(HTMLNames::formTag);
+}
+
 inline HTMLFormElement* toHTMLFormElement(Node* node)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!node || isHTMLFormElement(node));
index ac2a99d..7dd931e 100644 (file)
@@ -100,6 +100,16 @@ private:
     bool m_noresize;
 };
 
+inline bool isHTMLFrameSetElement(const Node* node)
+{
+    return node->hasTagName(HTMLNames::framesetTag);
+}
+
+inline bool isHTMLFrameSetElement(const Element* element)
+{
+    return element->hasTagName(HTMLNames::framesetTag);
+}
+
 inline HTMLFrameSetElement* toHTMLFrameSetElement(Node* node)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!node || isHTMLFrameSetElement(node));
@@ -112,6 +122,8 @@ inline const HTMLFrameSetElement* toHTMLFrameSetElement(const Node* node)
     return static_cast<const HTMLFrameSetElement*>(node);
 }
 
+template <> inline bool isElementOfType<HTMLFrameSetElement>(const Element* element) { return isHTMLFrameSetElement(element); }
+
 } // namespace WebCore
 
 #endif // HTMLFrameSetElement_h
index 248e6c2..9f713cc 100644 (file)
@@ -115,6 +115,16 @@ private:
     AtomicString m_bestFitImageURL;
 };
 
+inline bool isHTMLImageElement(Node* node)
+{
+    return node->hasTagName(HTMLNames::imgTag);
+}
+
+inline bool isHTMLImageElement(Element* element)
+{
+    return element->hasTagName(HTMLNames::imgTag);
+}
+
 inline HTMLImageElement* toHTMLImageElement(Node* node)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!node || isHTMLImageElement(node));
index 1d787b7..5b7660b 100644 (file)
@@ -443,6 +443,16 @@ private:
 #endif
 };
 
+inline bool isHTMLInputElement(const Node* node)
+{
+    return node->hasTagName(HTMLNames::inputTag);
+}
+
+inline bool isHTMLInputElement(const Element* element)
+{
+    return element->hasTagName(HTMLNames::inputTag);
+}
+
 inline HTMLInputElement* toHTMLInputElement(Node* node)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!node || isHTMLInputElement(node));
index 90a3691..ab31583 100644 (file)
@@ -55,6 +55,18 @@ private:
     virtual void focus(bool restorePreviousSelection, FocusDirection) OVERRIDE;
 };
 
+inline bool isHTMLLabelElement(const Node* node)
+{
+    return node->hasTagName(HTMLNames::labelTag);
+}
+
+inline bool isHTMLLabelElement(const Element* element)
+{
+    return element->hasTagName(HTMLNames::labelTag);
+}
+
+template <> inline bool isElementOfType<HTMLLabelElement>(const Element* element) { return isHTMLLabelElement(element); }
+
 inline HTMLLabelElement* toHTMLLabelElement(Node* node)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!node || isHTMLLabelElement(node));
index dcc0d38..583172a 100644 (file)
@@ -45,6 +45,18 @@ private:
     virtual HTMLFormElement* virtualForm() const OVERRIDE;
 };
 
+inline bool isHTMLLegendElement(const Node* node)
+{
+    return node->hasTagName(HTMLNames::legendTag);
+}
+
+inline bool isHTMLLegendElement(const Element* element)
+{
+    return element->hasTagName(HTMLNames::legendTag);
+}
+
+template <> inline bool isElementOfType<HTMLLegendElement>(const Element* element) { return isHTMLLegendElement(element); }
+
 } //namespace
 
 #endif
index 8f62741..22b8b4a 100644 (file)
@@ -54,6 +54,16 @@ private:
     AtomicString m_name;
 };
 
+inline bool isHTMLMapElement(Node* node)
+{
+    return node->hasTagName(HTMLNames::mapTag);
+}
+
+inline bool isHTMLMapElement(Element* element)
+{
+    return element->hasTagName(HTMLNames::mapTag);
+}
+
 inline HTMLMapElement* toHTMLMapElement(Node* node)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!node || isHTMLMapElement(node));
index ce74607..5d136f2 100644 (file)
@@ -82,6 +82,11 @@ private:
     RefPtr<MeterValueElement> m_value;
 };
 
+inline bool isHTMLMeterElement(Node* node)
+{
+    return node->hasTagName(HTMLNames::meterTag);
+}
+
 inline HTMLMeterElement* toHTMLMeterElement(Node* node)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!node || isHTMLMeterElement(node));
index 330eb71..593197e 100644 (file)
@@ -63,6 +63,16 @@ private:
     RefPtr<RenderStyle> m_style;
 };
 
+inline bool isHTMLOptGroupElement(const Node* node)
+{
+    return node->hasTagName(HTMLNames::optgroupTag);
+}
+
+inline bool isHTMLOptGroupElement(const Element* element)
+{
+    return element->hasTagName(HTMLNames::optgroupTag);
+}
+
 inline HTMLOptGroupElement* toHTMLOptGroupElement(Node* node)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!node || isHTMLOptGroupElement(node));
index 2762dbe..364e533 100644 (file)
@@ -95,6 +95,16 @@ private:
     RefPtr<RenderStyle> m_style;
 };
 
+inline bool isHTMLOptionElement(const Node* node)
+{
+    return node->hasTagName(HTMLNames::optionTag);
+}
+
+inline bool isHTMLOptionElement(const Element* element)
+{
+    return element->hasTagName(HTMLNames::optionTag);
+}
+
 inline HTMLOptionElement* toHTMLOptionElement(Node* node)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!node || isHTMLOptionElement(node));
index ed091ab..b6595d6 100644 (file)
@@ -40,9 +40,23 @@ private:
     HTMLParamElement(const QualifiedName&, Document*);
 
     virtual bool isURLAttribute(const Attribute&) const OVERRIDE;
+
     virtual void addSubresourceAttributeURLs(ListHashSet<KURL>&) const;
 };
 
+inline bool isHTMLParamElement(const Node* node)
+{
+    return node->hasTagName(HTMLNames::paramTag);
+}
+
+inline bool isHTMLParamElement(const Element* element)
+{
+    return element->hasTagName(HTMLNames::paramTag);
+}
+
+template <> inline bool isElementOfType<HTMLParamElement>(const Element* element) { return isHTMLParamElement(element); }
+
+
 } // namespace WebCore
 
 #endif
index 39ff23d..60c0faa 100644 (file)
@@ -69,6 +69,12 @@ private:
     ProgressValueElement* m_value;
 };
 
+inline bool isHTMLProgressElement(Node* node)
+{
+    ASSERT(node);
+    return node->hasTagName(HTMLNames::progressTag);
+}
+
 inline HTMLProgressElement* toHTMLProgressElement(Node* node)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!node || isHTMLProgressElement(node));
index e33d158..eeb66c7 100644 (file)
@@ -67,6 +67,11 @@ private:
     virtual PassRefPtr<Element> cloneElementWithoutAttributesAndChildren();
 };
 
+inline bool isHTMLScriptElement(Node* node)
+{
+    return node->hasTagName(HTMLNames::scriptTag);
+}
+
 inline HTMLScriptElement* toHTMLScriptElement(Node* node)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!node || node->hasTagName(HTMLNames::scriptTag));
index dc1821f..fc922bc 100644 (file)
@@ -57,6 +57,19 @@ private:
     Timer<HTMLSourceElement> m_errorEventTimer;
 };
 
+inline bool isHTMLSourceElement(const Node* node)
+{
+    return node->hasTagName(HTMLNames::sourceTag);
+}
+
+inline bool isHTMLSourceElement(const Element* element)
+{
+    return element->hasTagName(HTMLNames::sourceTag);
+}
+
+template <> inline bool isElementOfType<HTMLSourceElement>(const Element* element) { return isHTMLSourceElement(element); }
+
+
 } //namespace
 
 #endif
index 920dea5..548ea9f 100644 (file)
@@ -93,12 +93,24 @@ private:
     ScopedStyleRegistrationState m_scopedStyleRegistrationState;
 };
 
+inline bool isHTMLStyleElement(const Node* node)
+{
+    return node->hasTagName(HTMLNames::styleTag);
+}
+
+inline bool isHTMLStyleElement(const Element* element)
+{
+    return element->hasTagName(HTMLNames::styleTag);
+}
+
 inline HTMLStyleElement* toHTMLStyleElement(Node* node)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!node || isHTMLStyleElement(node));
     return static_cast<HTMLStyleElement*>(node);
 }
 
+template <> inline bool isElementOfType<HTMLStyleElement>(const Element* element) { return isHTMLStyleElement(element); }
+
 } //namespace
 
 #endif
index 0d76ab5..ec21401 100644 (file)
@@ -100,6 +100,16 @@ private:
     RefPtr<StylePropertySet> m_sharedCellStyle;
 };
 
+inline bool isHTMLTableElement(const Node* node)
+{
+    return node->hasTagName(HTMLNames::tableTag);
+}
+
+inline bool isHTMLTableElement(const Element* element)
+{
+    return element->hasTagName(HTMLNames::tableTag);
+}
+
 inline HTMLTableElement* toHTMLTableElement(Node* node)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!node || isHTMLTableElement(node));
index 53ef4f3..bed751c 100644 (file)
@@ -51,6 +51,18 @@ private:
     HTMLTableRowElement(const QualifiedName&, Document*);
 };
 
+inline bool isHTMLTableRowElement(const Node* node)
+{
+    return node->hasTagName(HTMLNames::trTag);
+}
+
+inline bool isHTMLTableRowElement(const Element* element)
+{
+    return element->hasTagName(HTMLNames::trTag);
+}
+
+template<> inline bool isElementOfType<HTMLTableRowElement>(const Element* element) { return isHTMLTableRowElement(element); }
+
 inline HTMLTableRowElement* toHTMLTableRowElement(Node* node)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!node || isHTMLTableRowElement(node));
index 4661524..f2d4e50 100644 (file)
@@ -3,17 +3,17 @@ namespacePrefix="xhtml"
 namespaceURI="http://www.w3.org/1999/xhtml"
 fallbackInterfaceName="HTMLUnknownElement"
 
-a interfaceName=HTMLAnchorElement, generateTypeChecks
+a interfaceName=HTMLAnchorElement
 abbr interfaceName=HTMLElement
 acronym interfaceName=HTMLElement
 address interfaceName=HTMLElement
 applet constructorNeedsCreatedByParser
-area generateTypeChecks
+area
 article interfaceName=HTMLElement
 aside interfaceName=HTMLElement
-audio wrapperOnlyIfMediaIsAvailable, conditional=VIDEO, constructorNeedsCreatedByParser, generateTypeChecks
+audio wrapperOnlyIfMediaIsAvailable, conditional=VIDEO, constructorNeedsCreatedByParser
 b interfaceName=HTMLElement
-base generateTypeChecks
+base
 basefont interfaceName=HTMLBaseFontElement
 bdi interfaceName=HTMLBDIElement, JSInterfaceName=HTMLElement
 bdo interfaceName=HTMLElement
@@ -23,7 +23,7 @@ blockquote interfaceName=HTMLQuoteElement
 body
 br interfaceName=HTMLBRElement
 button constructorNeedsFormElement
-canvas generateTypeChecks
+canvas
 caption interfaceName=HTMLTableCaptionElement
 center interfaceName=HTMLElement
 cite interfaceName=HTMLElement
@@ -44,14 +44,14 @@ dl interfaceName=HTMLDListElement
 dt interfaceName=HTMLElement
 em interfaceName=HTMLElement
 embed constructorNeedsCreatedByParser
-fieldset interfaceName=HTMLFieldSetElement, constructorNeedsFormElement, generateTypeChecks
+fieldset interfaceName=HTMLFieldSetElement, constructorNeedsFormElement
 figcaption interfaceName=HTMLElement
 figure interfaceName=HTMLElement
 font
 footer interfaceName=HTMLElement
-form generateTypeChecks
+form
 frame
-frameset interfaceName=HTMLFrameSetElement, generateTypeChecks
+frameset interfaceName=HTMLFrameSetElement
 h1 interfaceName=HTMLHeadingElement
 h2 interfaceName=HTMLHeadingElement
 h3 interfaceName=HTMLHeadingElement
@@ -66,25 +66,25 @@ html
 i interfaceName=HTMLElement
 iframe interfaceName=HTMLIFrameElement
 image interfaceName=HTMLElement
-img interfaceName=HTMLImageElement, constructorNeedsFormElement, generateTypeChecks
-input constructorNeedsFormElement, constructorNeedsCreatedByParser, generateTypeChecks
+img interfaceName=HTMLImageElement, constructorNeedsFormElement
+input constructorNeedsFormElement, constructorNeedsCreatedByParser
 ins interfaceName=HTMLModElement
 isindex interfaceName=HTMLUnknownElement
 kbd interfaceName=HTMLElement
 keygen constructorNeedsFormElement
-label generateTypeChecks
+label
 layer interfaceName=HTMLElement
-legend generateTypeChecks
+legend
 li interfaceName=HTMLLIElement
 link constructorNeedsCreatedByParser
 listing interfaceName=HTMLPreElement
 main interfaceName=HTMLElement
-map generateTypeChecks
+map
 mark interfaceName=HTMLElement
 marquee
 menu
 meta
-meter interfaceName=HTMLMeterElement, conditional=METER_ELEMENT, generateTypeChecks
+meter interfaceName=HTMLMeterElement, conditional=METER_ELEMENT
 nav interfaceName=HTMLElement
 nobr interfaceName=HTMLElement
 noembed interfaceName=HTMLElement
@@ -92,43 +92,43 @@ noframes interfaceName=HTMLElement
 nolayer interfaceName=HTMLElement
 object constructorNeedsFormElement, constructorNeedsCreatedByParser
 ol interfaceName=HTMLOListElement
-optgroup interfaceName=HTMLOptGroupElement, generateTypeChecks
-option generateTypeChecks
+optgroup interfaceName=HTMLOptGroupElement
+option
 output constructorNeedsFormElement
 p interfaceName=HTMLParagraphElement
-param generateTypeChecks
+param
 plaintext interfaceName=HTMLElement
 pre
-progress interfaceName=HTMLProgressElement, conditional=PROGRESS_ELEMENT, generateTypeChecks
+progress interfaceName=HTMLProgressElement, conditional=PROGRESS_ELEMENT
 q interfaceName=HTMLQuoteElement
 rp interfaceName=HTMLElement
 rt interfaceName=HTMLElement
 ruby interfaceName=HTMLElement
 s interfaceName=HTMLElement
 samp interfaceName=HTMLElement
-script constructorNeedsCreatedByParser, generateTypeChecks
+script constructorNeedsCreatedByParser
 section interfaceName=HTMLElement
 select constructorNeedsFormElement
 small interfaceName=HTMLElement
-source wrapperOnlyIfMediaIsAvailable, conditional=VIDEO, generateTypeChecks
+source wrapperOnlyIfMediaIsAvailable, conditional=VIDEO
 span
 strike interfaceName=HTMLElement
 strong interfaceName=HTMLElement
-style constructorNeedsCreatedByParser, generateTypeChecks
+style constructorNeedsCreatedByParser
 sub interfaceName=HTMLElement
 summary interfaceName=HTMLSummaryElement, JSInterfaceName=HTMLElement, conditional=DETAILS_ELEMENT
 sup interfaceName=HTMLElement
-table generateTypeChecks
+table
 tbody interfaceName=HTMLTableSectionElement
 td interfaceName=HTMLTableCellElement
 template conditional=TEMPLATE_ELEMENT
-textarea interfaceName=HTMLTextAreaElement, constructorNeedsFormElement, generateTypeChecks
+textarea interfaceName=HTMLTextAreaElement, constructorNeedsFormElement
 tfoot interfaceName=HTMLTableSectionElement
 th interfaceName=HTMLTableCellElement
 thead interfaceName=HTMLTableSectionElement
-title generateTypeChecks
-tr interfaceName=HTMLTableRowElement, generateTypeChecks
-track wrapperOnlyIfMediaIsAvailable, conditional=VIDEO_TRACK, generateTypeChecks
+title
+tr interfaceName=HTMLTableRowElement
+track wrapperOnlyIfMediaIsAvailable, conditional=VIDEO_TRACK
 tt interfaceName=HTMLElement
 u interfaceName=HTMLElement
 ul interfaceName=HTMLUListElement
index 6755118..fbf85ba 100644 (file)
@@ -127,6 +127,16 @@ private:
     mutable bool m_wasModifiedByUser;
 };
 
+inline bool isHTMLTextAreaElement(Node* node)
+{
+    return node->hasTagName(HTMLNames::textareaTag);
+}
+
+inline bool isHTMLTextAreaElement(Element* element)
+{
+    return element->hasTagName(HTMLNames::textareaTag);
+}
+
 inline HTMLTextAreaElement* toHTMLTextAreaElement(Node* node)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!node || isHTMLTextAreaElement(node));
index b694e36..ddf6da7 100644 (file)
@@ -46,12 +46,24 @@ private:
     StringWithDirection m_title;
 };
 
+inline bool isHTMLTitleElement(const Node* node)
+{
+    return node->hasTagName(HTMLNames::titleTag);
+}
+
+inline bool isHTMLTitleElement(const Element* element)
+{
+    return element->hasTagName(HTMLNames::titleTag);
+}
+
 inline HTMLTitleElement* toHTMLTitleElement(Node* node)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!node || isHTMLTitleElement(node));
     return static_cast<HTMLTitleElement*>(node);
 }
 
+template <> inline bool isElementOfType<HTMLTitleElement>(const Element* element) { return isHTMLTitleElement(element); }
+
 } //namespace
 
 #endif
index 9d8eb3b..c793b34 100644 (file)
@@ -97,6 +97,19 @@ private:
     Timer<HTMLTrackElement> m_loadTimer;
 };
 
+inline bool isHTMLTrackElement(const Node* node)
+{
+    return node->hasTagName(HTMLNames::trackTag);
+}
+
+inline bool isHTMLTrackElement(const Element* element)
+{
+    return element->hasTagName(HTMLNames::trackTag);
+}
+
+template <> inline bool isElementOfType<HTMLTrackElement>(const Element* element) { return isHTMLTrackElement(element); }
+
+
 }
 
 #endif
index b13f025..76bde70 100644 (file)
@@ -26,7 +26,6 @@
 #if ENABLE(SVG)
 #include "CSSPropertyNames.h"
 #include "SVGAnimatedString.h"
-#include "SVGElementTypeChecks.h"
 #include "SVGLangSpace.h"
 #include "SVGLocatable.h"
 #include "SVGParsingError.h"
index 0681a67..01fe6c2 100644 (file)
@@ -89,6 +89,11 @@ private:
     bool m_isGlyphCacheValid;
 };
 
+inline bool isSVGFontElement(const Node* node)
+{
+    return node->hasTagName(SVGNames::fontTag);
+}
+
 inline SVGFontElement* toSVGFontElement(Node* node)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!node || isSVGFontElement(node));
index 6e7d8e6..dab4290 100644 (file)
@@ -67,6 +67,18 @@ private:
     SVGFontElement* m_fontElement;
 };
 
+inline bool isSVGFontFaceElement(const Node* node)
+{
+    return node->hasTagName(SVGNames::font_faceTag);
+}
+
+inline bool isSVGFontFaceElement(const Element* element)
+{
+    return element->hasTagName(SVGNames::font_faceTag);
+}
+
+template <> inline bool isElementOfType<SVGFontFaceElement>(const Element* element) { return isSVGFontFaceElement(element); }
+
 inline SVGFontFaceElement* toSVGFontFaceElement(Node* node)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!node || isSVGFontFaceElement(node));
index 8936308..b0dc620 100644 (file)
@@ -59,6 +59,19 @@ private:
     END_DECLARE_ANIMATED_PROPERTIES
 };
 
+inline bool isSVGForeignObjectElement(const Node* node)
+{
+    return node->hasTagName(SVGNames::foreignObjectTag);
+}
+
+inline bool isSVGForeignObjectElement(const Element* element)
+{
+    return element->hasTagName(SVGNames::foreignObjectTag);
+}
+
+template <> inline bool isElementOfType<SVGForeignObjectElement>(const Element* element) { return isSVGForeignObjectElement(element); }
+
+
 } // namespace WebCore
 
 #endif // ENABLE(SVG)
index 9134f1b..9cd5793 100644 (file)
@@ -77,6 +77,11 @@ private:
     SVGImageLoader m_imageLoader;
 };
 
+inline bool isSVGImageElement(const Node* node)
+{
+    return node->hasTagName(SVGNames::imageTag);
+}
+
 inline SVGImageElement* toSVGImageElement(Node* node)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!node || isSVGImageElement(node));
index caa0982..e6254c5 100644 (file)
@@ -88,6 +88,11 @@ private:
     Timer<SVGElement> m_svgLoadEventTimer;
 };
 
+inline bool isSVGScriptElement(Node* node)
+{
+    return node->hasTagName(SVGNames::scriptTag);
+}
+
 inline SVGScriptElement* toSVGScriptElement(Node* node)
 {
     ASSERT_WITH_SECURITY_IMPLICATION(!node || node->hasTagName(SVGNames::scriptTag));
index c406311..7db4814 100644 (file)
@@ -53,21 +53,21 @@ feTurbulence
 filter
 #endif
 #if ENABLE_SVG_FONTS
-font generateTypeChecks
-font_face generateTypeChecks
+font
+font_face
 font_face_format
 font_face_name
 font_face_src
 font_face_uri
 #endif
-foreignObject generateTypeChecks
+foreignObject
 g
 #if ENABLE_SVG_FONTS
 glyph
 glyphRef
 hkern interfaceName=SVGHKernElement
 #endif
-image generateTypeChecks
+image
 line
 linearGradient
 marker
@@ -83,7 +83,7 @@ polygon
 polyline
 radialGradient
 rect
-script constructorNeedsCreatedByParser, generateTypeChecks
+script constructorNeedsCreatedByParser
 stop
 style constructorNeedsCreatedByParser
 svg interfaceName=SVGSVGElement