Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(181)

Side by Side Diff: Source/bindings/scripts/deprecated_code_generator_v8.pm

Issue 19540003: Use getAttribute instead of fastGetAttribute for SVG animated types (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 7 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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
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
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
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
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;
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698