| Index: Source/core/dom/custom/CustomElementMicrotaskQueue.h
|
| diff --git a/Source/core/dom/custom/CustomElementMicrotaskQueue.h b/Source/core/dom/custom/CustomElementMicrotaskQueue.h
|
| index e3b1840224d4ed5e863e8ef6daedbaf369fc11e1..947e54cb55f9073030e9b9e03e6342a24e03a9bc 100644
|
| --- a/Source/core/dom/custom/CustomElementMicrotaskQueue.h
|
| +++ b/Source/core/dom/custom/CustomElementMicrotaskQueue.h
|
| @@ -41,28 +41,36 @@
|
|
|
| namespace WebCore {
|
|
|
| -class CustomElementMicrotaskQueue : public RefCounted<CustomElementMicrotaskQueue> {
|
| - WTF_MAKE_NONCOPYABLE(CustomElementMicrotaskQueue);
|
| +class CustomElementMicrotaskQueueBase : public RefCounted<CustomElementMicrotaskQueueBase> {
|
| + WTF_MAKE_NONCOPYABLE(CustomElementMicrotaskQueueBase);
|
| public:
|
| - static PassRefPtr<CustomElementMicrotaskQueue> create() { return adoptRef(new CustomElementMicrotaskQueue()); }
|
| -
|
| + virtual ~CustomElementMicrotaskQueueBase() { }
|
|
|
| bool isEmpty() const { return m_queue.isEmpty(); }
|
| - void enqueue(PassOwnPtr<CustomElementMicrotaskStep>);
|
| -
|
| - typedef CustomElementMicrotaskStep::Result Result;
|
| - Result dispatch();
|
| - bool needsProcessOrStop() const;
|
| + void dispatch();
|
|
|
| #if !defined(NDEBUG)
|
| void show(unsigned indent);
|
| #endif
|
| -private:
|
| - CustomElementMicrotaskQueue() { }
|
| +
|
| +protected:
|
| + CustomElementMicrotaskQueueBase() { }
|
| + virtual void doDispatch() = 0;
|
|
|
| Vector<OwnPtr<CustomElementMicrotaskStep> > m_queue;
|
| };
|
|
|
| +class CustomElementMicrotaskQueue : public CustomElementMicrotaskQueueBase {
|
| +public:
|
| + static PassRefPtr<CustomElementMicrotaskQueue> create() { return adoptRef(new CustomElementMicrotaskQueue()); }
|
| +
|
| + void enqueue(PassOwnPtr<CustomElementMicrotaskStep>);
|
| +
|
| +private:
|
| + CustomElementMicrotaskQueue() { }
|
| + virtual void doDispatch();
|
| +};
|
| +
|
| }
|
|
|
| #endif // CustomElementMicrotaskQueue_h
|
|
|