| 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 2720 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2731 # V8 has access-check callback API (see ObjectTemplate::SetAccessCheckCa
llbacks) and it's used on DOMWindow | 2731 # V8 has access-check callback API (see ObjectTemplate::SetAccessCheckCa
llbacks) and it's used on DOMWindow |
| 2732 # instead of deleters or enumerators. In addition, the getter should be
set on prototype template, to | 2732 # instead of deleters or enumerators. In addition, the getter should be
set on prototype template, to |
| 2733 # get implementation straight out of the DOMWindow prototype regardless
of what prototype is actually set | 2733 # get implementation straight out of the DOMWindow prototype regardless
of what prototype is actually set |
| 2734 # on the object. | 2734 # on the object. |
| 2735 if ($interfaceName eq "DOMWindow") { | 2735 if ($interfaceName eq "DOMWindow") { |
| 2736 $setOn = "Prototype"; | 2736 $setOn = "Prototype"; |
| 2737 $hasDeleter = 0; | 2737 $hasDeleter = 0; |
| 2738 $hasEnumerator = 0; | 2738 $hasEnumerator = 0; |
| 2739 } | 2739 } |
| 2740 | 2740 |
| 2741 # FIXME: implement V8HTMLPropertiesCollection::namedPropertyGetter | 2741 push(@implContent, " desc->${setOn}Template()->SetNamedPropertyHandle
r(${v8InterfaceName}::namedPropertyGetter, "); |
| 2742 if ($interfaceName eq "HTMLPropertiesCollection") { | |
| 2743 push(@implContent, " desc->${setOn}Template()->SetNamedPropertyHa
ndler(V8HTMLCollection::namedPropertyGetter, "); | |
| 2744 } else { | |
| 2745 push(@implContent, " desc->${setOn}Template()->SetNamedPropertyHa
ndler(${v8InterfaceName}::namedPropertyGetter, "); | |
| 2746 } | |
| 2747 push(@implContent, $hasCustomNamedSetter ? "${v8InterfaceName}::namedPro
pertySetter, " : "0, "); | 2742 push(@implContent, $hasCustomNamedSetter ? "${v8InterfaceName}::namedPro
pertySetter, " : "0, "); |
| 2748 # If there is a custom enumerator, there MUST be custom query to properl
y communicate property attributes. | 2743 # If there is a custom enumerator, there MUST be custom query to properl
y communicate property attributes. |
| 2749 push(@implContent, $hasEnumerator ? "${v8InterfaceName}::namedPropertyQu
ery, " : "0, "); | 2744 push(@implContent, $hasEnumerator ? "${v8InterfaceName}::namedPropertyQu
ery, " : "0, "); |
| 2750 push(@implContent, $hasDeleter ? "${v8InterfaceName}::namedPropertyDelet
er, " : "0, "); | 2745 push(@implContent, $hasDeleter ? "${v8InterfaceName}::namedPropertyDelet
er, " : "0, "); |
| 2751 push(@implContent, $hasEnumerator ? "${v8InterfaceName}::namedPropertyEn
umerator" : "0"); | 2746 push(@implContent, $hasEnumerator ? "${v8InterfaceName}::namedPropertyEn
umerator" : "0"); |
| 2752 push(@implContent, ");\n"); | 2747 push(@implContent, ");\n"); |
| 2753 } | 2748 } |
| 2754 } | 2749 } |
| 2755 | 2750 |
| 2756 sub GenerateImplementationCustomCall | 2751 sub GenerateImplementationCustomCall |
| (...skipping 197 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2954 } | 2949 } |
| 2955 } | 2950 } |
| 2956 GenerateFunctionCallback($function, $interface, ""); | 2951 GenerateFunctionCallback($function, $interface, ""); |
| 2957 if ($function->signature->extendedAttributes->{"PerWorldBindings"})
{ | 2952 if ($function->signature->extendedAttributes->{"PerWorldBindings"})
{ |
| 2958 GenerateFunctionCallback($function, $interface, "ForMainWorld"); | 2953 GenerateFunctionCallback($function, $interface, "ForMainWorld"); |
| 2959 } | 2954 } |
| 2960 } | 2955 } |
| 2961 | 2956 |
| 2962 if ($function->signature->name eq "item") { | 2957 if ($function->signature->name eq "item") { |
| 2963 $indexer = $function->signature; | 2958 $indexer = $function->signature; |
| 2964 } | |
| 2965 | |
| 2966 if ($interfaceName eq "HTMLPropertiesCollection") { | |
| 2967 if ($function->signature->name eq "propertyNodeList") { | |
| 2968 $namedPropertyGetter = $function->signature; | |
| 2969 } | |
| 2970 } elsif ($function->signature->name eq "namedItem") { | 2959 } elsif ($function->signature->name eq "namedItem") { |
| 2971 $namedPropertyGetter = $function->signature; | 2960 $namedPropertyGetter = $function->signature; |
| 2972 } | 2961 } |
| 2973 | 2962 |
| 2974 # If the function does not need domain security check, we need to | 2963 # If the function does not need domain security check, we need to |
| 2975 # generate an access getter that returns different function objects | 2964 # generate an access getter that returns different function objects |
| 2976 # for different calling context. | 2965 # for different calling context. |
| 2977 if ($interface->extendedAttributes->{"CheckSecurity"} && $function->sign
ature->extendedAttributes->{"DoNotCheckSecurity"}) { | 2966 if ($interface->extendedAttributes->{"CheckSecurity"} && $function->sign
ature->extendedAttributes->{"DoNotCheckSecurity"}) { |
| 2978 if (!HasCustomMethod($function->signature->extendedAttributes) || $f
unction->{overloadIndex} == 1) { | 2967 if (!HasCustomMethod($function->signature->extendedAttributes) || $f
unction->{overloadIndex} == 1) { |
| 2979 GenerateDomainSafeFunctionGetter($function, $interfaceName); | 2968 GenerateDomainSafeFunctionGetter($function, $interfaceName); |
| (...skipping 1608 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 4588 | 4577 |
| 4589 sub GetPassRefPtrType | 4578 sub GetPassRefPtrType |
| 4590 { | 4579 { |
| 4591 my $v8InterfaceName = shift; | 4580 my $v8InterfaceName = shift; |
| 4592 | 4581 |
| 4593 my $angleBracketSpace = $v8InterfaceName =~ />$/ ? " " : ""; | 4582 my $angleBracketSpace = $v8InterfaceName =~ />$/ ? " " : ""; |
| 4594 return "PassRefPtr<${v8InterfaceName}${angleBracketSpace}>"; | 4583 return "PassRefPtr<${v8InterfaceName}${angleBracketSpace}>"; |
| 4595 } | 4584 } |
| 4596 | 4585 |
| 4597 1; | 4586 1; |
| OLD | NEW |