-JSValue JSCallbackFunction::call(ExecState* exec, JSObject* functionObject, JSValue thisValue, const ArgList& args)
+void JSCallbackFunction::finishCreation(VM& vm, const String& name)
+{
+ Base::finishCreation(vm, name);
+ ASSERT(inherits(&s_info));
+}
+
+JSCallbackFunction* JSCallbackFunction::create(ExecState* exec, JSGlobalObject* globalObject, JSObjectCallAsFunctionCallback callback, const String& name)
+{
+ JSCallbackFunction* function = new (NotNull, allocateCell<JSCallbackFunction>(*exec->heap())) JSCallbackFunction(globalObject, globalObject->callbackFunctionStructure(), callback);
+ function->finishCreation(exec->vm(), name);
+ return function;
+}
+
+EncodedJSValue JSCallbackFunction::call(ExecState* exec)