| 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 1670 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1681 $code .= "#endif // ${conditionalString}\n" if $conditionalString; | 1681 $code .= "#endif // ${conditionalString}\n" if $conditionalString; |
| 1682 $code .= "\n"; | 1682 $code .= "\n"; |
| 1683 $implementation{nameSpaceInternal}->add($code); | 1683 $implementation{nameSpaceInternal}->add($code); |
| 1684 } | 1684 } |
| 1685 | 1685 |
| 1686 sub ShouldKeepAttributeAlive | 1686 sub ShouldKeepAttributeAlive |
| 1687 { | 1687 { |
| 1688 my ($interface, $attribute, $returnType) = @_; | 1688 my ($interface, $attribute, $returnType) = @_; |
| 1689 my $attrName = $attribute->name; | 1689 my $attrName = $attribute->name; |
| 1690 | 1690 |
| 1691 return 1 if $attribute->extendedAttributes->{"KeepAttributeAliveForGC"}; | |
| 1692 | |
| 1693 # For readonly attributes (including Replaceable), as a general rule, for | 1691 # For readonly attributes (including Replaceable), as a general rule, for |
| 1694 # performance reasons we keep the attribute wrapper alive while the owner | 1692 # performance reasons we keep the attribute wrapper alive while the owner |
| 1695 # wrapper is alive, because the attribute never changes. | 1693 # wrapper is alive, because the attribute never changes. |
| 1696 return 0 if !IsWrapperType($returnType); | 1694 return 0 if !IsWrapperType($returnType); |
| 1697 return 0 if !IsReadonly($attribute) && !$attribute->extendedAttributes->{"Re
placeable"}; | 1695 return 0 if !IsReadonly($attribute) && !$attribute->extendedAttributes->{"Re
placeable"}; |
| 1698 | 1696 |
| 1699 # However, there are a couple of exceptions. | 1697 # However, there are a couple of exceptions. |
| 1700 | 1698 |
| 1701 # Node lifetime is managed by object grouping. | 1699 # Node lifetime is managed by object grouping. |
| 1702 return 0 if InheritsInterface($interface, "Node"); | 1700 return 0 if InheritsInterface($interface, "Node"); |
| (...skipping 4580 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 6283 | 6281 |
| 6284 return 1 if $interface->extendedAttributes->{"CustomToV8"}; | 6282 return 1 if $interface->extendedAttributes->{"CustomToV8"}; |
| 6285 return 1 if $interface->extendedAttributes->{"SpecialWrapFor"}; | 6283 return 1 if $interface->extendedAttributes->{"SpecialWrapFor"}; |
| 6286 return 1 if InheritsInterface($interface, "Document"); | 6284 return 1 if InheritsInterface($interface, "Document"); |
| 6287 return 1 if SVGTypeNeedsToHoldContextElement($interface->name); | 6285 return 1 if SVGTypeNeedsToHoldContextElement($interface->name); |
| 6288 | 6286 |
| 6289 return 0; | 6287 return 0; |
| 6290 } | 6288 } |
| 6291 | 6289 |
| 6292 1; | 6290 1; |
| OLD | NEW |