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