Eliminate unnecessary String-->AtomicString conversions from generated V8 bindings,
authorsnej@chromium.org <snej@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 18 Nov 2009 19:57:06 +0000 (19:57 +0000)
committersnej@chromium.org <snej@chromium.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Wed, 18 Nov 2009 19:57:06 +0000 (19:57 +0000)
commit0baefb01b3521a0cbed492bbbdbbc3ec715e31e6
tree8312e32b2c6815ef1fa971471c5d3ad5d7a42c02
parentab93596a53970c36a18fc333d5be3fd7d91c3d78
Eliminate unnecessary String-->AtomicString conversions from generated V8 bindings,
by causing the right v8-to-WebCore conversion function to be called for every parameter.
This no longer requires any IDL metadata, so I've removed the [HintAtomic] annotations.
To enforce correctness, I added a mode that disables implicit
String-->AtomicString conversions while compiling the generated bindings.
https://bugs.webkit.org/show_bug.cgi?id=31168

Reviewed by Darin Adler.

* bindings/scripts/CodeGeneratorV8.pm:  Generate usage of V8Parameter class.
* bindings/v8/DerivedSourcesAllInOne.cpp:  Enable NO_IMPLICIT_ATOMICSTRING.
* bindings/v8/V8Binding.h:  Add V8Parameter class.
* css/WebKitCSSKeyframesRule.h:  Make AtomicString conversions explicit.
* dom/Document.idl:  Remove obsolete [HintAtomic] annotation.
* platform/text/AtomicString.h:  Added NO_IMPLICIT_ATOMICSTRING option.
* svg/SVGAnimatedTemplate.h:  Change some return types to String to avoid implicit conversion.
* svg/SVGAnimatedProperty.h: Adapt to changed return types in SVGAnimatedTemplate.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@51125 268f45cc-cd09-0410-ab3c-d52691b4dbfc
WebCore/ChangeLog
WebCore/bindings/scripts/CodeGeneratorV8.pm
WebCore/bindings/v8/DerivedSourcesAllInOne.cpp
WebCore/bindings/v8/V8Binding.h
WebCore/css/WebKitCSSKeyframesRule.h
WebCore/dom/Document.idl
WebCore/platform/text/AtomicString.h
WebCore/svg/SVGAnimatedProperty.h
WebCore/svg/SVGAnimatedTemplate.h