JSTestCallbackFunctionWithThisObject.h [plain text]
#pragma once
#include "IDLTypes.h"
#include "JSCallbackData.h"
#include "TestCallbackFunctionWithThisObject.h"
#include <wtf/Forward.h>
namespace WebCore {
class JSTestCallbackFunctionWithThisObject final : public TestCallbackFunctionWithThisObject {
public:
static Ref<JSTestCallbackFunctionWithThisObject> create(JSC::JSObject* callback, JSDOMGlobalObject* globalObject)
{
return adoptRef(*new JSTestCallbackFunctionWithThisObject(callback, globalObject));
}
virtual ScriptExecutionContext* scriptExecutionContext() const { return ContextDestructionObserver::scriptExecutionContext(); }
virtual ~JSTestCallbackFunctionWithThisObject();
JSCallbackDataStrong* callbackData() { return m_data; }
CallbackResult<typename IDLVoid::ImplementationType> handleEvent(typename IDLInterface<TestNode>::ParameterType thisObject, typename IDLSequence<IDLInterface<TestNode>>::ParameterType parameter) override;
private:
JSTestCallbackFunctionWithThisObject(JSC::JSObject*, JSDOMGlobalObject*);
JSCallbackDataStrong* m_data;
};
JSC::JSValue toJS(TestCallbackFunctionWithThisObject&);
inline JSC::JSValue toJS(TestCallbackFunctionWithThisObject* impl) { return impl ? toJS(*impl) : JSC::jsNull(); }
}