More V8 de-inlining (outlining?) Abstracted a chunk of boilerplate code from every
[WebKit-https.git] / WebCore / bindings / v8 / V8Utilities.h
index 36dce24734a3203f445ac3d51aff099b3830ca79..944823a3ee5a155f59e13f0c89fe65e51a288a84 100644 (file)
@@ -35,6 +35,7 @@
 
 namespace WebCore {
 
+    class EventListener;
     class Frame;
     class KURL;
     class ScriptExecutionContext;
@@ -44,7 +45,10 @@ namespace WebCore {
     // Use an array to hold dependents. It works like a ref-counted scheme. A value can be added more than once to the DOM object.
     void createHiddenDependency(v8::Handle<v8::Object>, v8::Local<v8::Value>, int cacheIndex);
     void removeHiddenDependency(v8::Handle<v8::Object>, v8::Local<v8::Value>, int cacheIndex);
-
+    
+    // Combo create/remove, for generated event-handler-setter bindings:
+    void transferHiddenDependency(v8::Handle<v8::Object>, EventListener* oldValue, v8::Local<v8::Value> newValue, int cacheIndex);
+    
     bool processingUserGesture();
     bool shouldAllowNavigation(Frame*);
     KURL completeURL(const String& relativeURL);