OLD | NEW |
1 # Copyright (C) 2005, 2006 Nikolas Zimmermann <zimmermann@kde.org> | 1 # Copyright (C) 2005, 2006 Nikolas Zimmermann <zimmermann@kde.org> |
2 # Copyright (C) 2006 Anders Carlsson <andersca@mac.com> | 2 # Copyright (C) 2006 Anders Carlsson <andersca@mac.com> |
3 # Copyright (C) 2006 Samuel Weinig <sam.weinig@gmail.com> | 3 # Copyright (C) 2006 Samuel Weinig <sam.weinig@gmail.com> |
4 # Copyright (C) 2006 Alexey Proskuryakov <ap@webkit.org> | 4 # Copyright (C) 2006 Alexey Proskuryakov <ap@webkit.org> |
5 # Copyright (C) 2006 Apple Computer, Inc. | 5 # Copyright (C) 2006 Apple Computer, Inc. |
6 # Copyright (C) 2007, 2008, 2009, 2012 Google Inc. | 6 # Copyright (C) 2007, 2008, 2009, 2012 Google Inc. |
7 # Copyright (C) 2009 Cameron McCormack <cam@mcc.id.au> | 7 # Copyright (C) 2009 Cameron McCormack <cam@mcc.id.au> |
8 # Copyright (C) Research In Motion Limited 2010. All rights reserved. | 8 # Copyright (C) Research In Motion Limited 2010. All rights reserved. |
9 # Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) | 9 # Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies) |
10 # Copyright (C) 2012 Ericsson AB. All rights reserved. | 10 # Copyright (C) 2012 Ericsson AB. All rights reserved. |
(...skipping 172 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
183 "Int16Array" => ["short", "v8::kExternalShortArray"], | 183 "Int16Array" => ["short", "v8::kExternalShortArray"], |
184 "Int32Array" => ["int", "v8::kExternalIntArray"], | 184 "Int32Array" => ["int", "v8::kExternalIntArray"], |
185 "Float32Array" => ["float", "v8::kExternalFloatArray"], | 185 "Float32Array" => ["float", "v8::kExternalFloatArray"], |
186 "Float64Array" => ["double", "v8::kExternalDoubleArray"], | 186 "Float64Array" => ["double", "v8::kExternalDoubleArray"], |
187 ); | 187 ); |
188 | 188 |
189 my %callbackFunctionTypeHash = (); | 189 my %callbackFunctionTypeHash = (); |
190 | 190 |
191 my %enumTypeHash = (); | 191 my %enumTypeHash = (); |
192 | 192 |
193 my %svgAnimatedTypeHash = ("SVGAnimatedAngle" => 1, "SVGAnimatedBoolean" => 1, | |
194 "SVGAnimatedEnumeration" => 1, "SVGAnimatedInteger" =
> 1, | |
195 "SVGAnimatedLength" => 1, "SVGAnimatedLengthList" =>
1, | |
196 "SVGAnimatedNumber" => 1, "SVGAnimatedNumberList" =>
1, | |
197 "SVGAnimatedPreserveAspectRatio" => 1, | |
198 "SVGAnimatedRect" => 1, "SVGAnimatedString" => 1, | |
199 "SVGAnimatedTransformList" => 1); | |
200 | |
201 my %svgAttributesInHTMLHash = ("class" => 1, "id" => 1, "onabort" => 1, "onclick
" => 1, | 193 my %svgAttributesInHTMLHash = ("class" => 1, "id" => 1, "onabort" => 1, "onclick
" => 1, |
202 "onerror" => 1, "onload" => 1, "onmousedown" => 1
, | 194 "onerror" => 1, "onload" => 1, "onmousedown" => 1
, |
203 "onmouseenter" => 1, "onmouseleave" => 1, | 195 "onmouseenter" => 1, "onmouseleave" => 1, |
204 "onmousemove" => 1, "onmouseout" => 1, "onmouseov
er" => 1, | 196 "onmousemove" => 1, "onmouseout" => 1, "onmouseov
er" => 1, |
205 "onmouseup" => 1, "onresize" => 1, "onscroll" =>
1, | 197 "onmouseup" => 1, "onresize" => 1, "onscroll" =>
1, |
206 "onunload" => 1); | 198 "onunload" => 1); |
207 | 199 |
208 my %svgTypeNeedingTearOff = ( | 200 my %svgTypeNeedingTearOff = ( |
209 "SVGAngle" => "SVGPropertyTearOff<SVGAngle>", | 201 "SVGAngle" => "SVGPropertyTearOff<SVGAngle>", |
210 "SVGLength" => "SVGPropertyTearOff<SVGLength>", | 202 "SVGLength" => "SVGPropertyTearOff<SVGLength>", |
(...skipping 5505 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5716 } | 5708 } |
5717 | 5709 |
5718 $svgTypeNeedingTearOff =~ s/>//; | 5710 $svgTypeNeedingTearOff =~ s/>//; |
5719 return $svgTypeNeedingTearOff; | 5711 return $svgTypeNeedingTearOff; |
5720 } | 5712 } |
5721 | 5713 |
5722 sub IsSVGAnimatedType | 5714 sub IsSVGAnimatedType |
5723 { | 5715 { |
5724 my $type = shift; | 5716 my $type = shift; |
5725 | 5717 |
5726 return 1 if $svgAnimatedTypeHash{$type}; | 5718 return $type =~ /^SVGAnimated/; |
5727 return 0; | |
5728 } | 5719 } |
5729 | 5720 |
5730 sub GetSequenceType | 5721 sub GetSequenceType |
5731 { | 5722 { |
5732 my $type = shift; | 5723 my $type = shift; |
5733 | 5724 |
5734 return $1 if $type =~ /^sequence<([\w\d_\s]+)>.*/; | 5725 return $1 if $type =~ /^sequence<([\w\d_\s]+)>.*/; |
5735 return ""; | 5726 return ""; |
5736 } | 5727 } |
5737 | 5728 |
(...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5862 if ($contentAttributeName eq "WebCore::HTMLNames::idAttr") { | 5853 if ($contentAttributeName eq "WebCore::HTMLNames::idAttr") { |
5863 $functionName = "getIdAttribute"; | 5854 $functionName = "getIdAttribute"; |
5864 $contentAttributeName = ""; | 5855 $contentAttributeName = ""; |
5865 } elsif ($contentAttributeName eq "WebCore::HTMLNames::nameAttr") { | 5856 } elsif ($contentAttributeName eq "WebCore::HTMLNames::nameAttr") { |
5866 $functionName = "getNameAttribute"; | 5857 $functionName = "getNameAttribute"; |
5867 $contentAttributeName = ""; | 5858 $contentAttributeName = ""; |
5868 } elsif ($contentAttributeName eq "WebCore::HTMLNames::classAttr") { | 5859 } elsif ($contentAttributeName eq "WebCore::HTMLNames::classAttr") { |
5869 $functionName = "getClassAttribute"; | 5860 $functionName = "getClassAttribute"; |
5870 $contentAttributeName = ""; | 5861 $contentAttributeName = ""; |
5871 } else { | 5862 } else { |
5872 $functionName = "fastGetAttribute"; | 5863 # We cannot use fast attributes for animated SVG types. |
| 5864 $functionName = IsSVGAnimatedType($attribute->type) ? "getAttribute"
: "fastGetAttribute"; |
5873 } | 5865 } |
5874 } | 5866 } |
5875 | 5867 |
5876 return ($functionName, $contentAttributeName); | 5868 return ($functionName, $contentAttributeName); |
5877 } | 5869 } |
5878 | 5870 |
5879 sub SetterExpression | 5871 sub SetterExpression |
5880 { | 5872 { |
5881 my ($interfaceName, $attribute) = @_; | 5873 my ($interfaceName, $attribute) = @_; |
5882 | 5874 |
(...skipping 113 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
5996 if ($currentInterface->extendedAttributes->{$extendedAttribute}) { | 5988 if ($currentInterface->extendedAttributes->{$extendedAttribute}) { |
5997 $found = 1; | 5989 $found = 1; |
5998 } | 5990 } |
5999 return 1 if $found; | 5991 return 1 if $found; |
6000 }, 0); | 5992 }, 0); |
6001 | 5993 |
6002 return $found; | 5994 return $found; |
6003 } | 5995 } |
6004 | 5996 |
6005 1; | 5997 1; |
OLD | NEW |