blob: 9a7a2a801eea67620e23c29280ca5746ff9fd642 [file] [log] [blame]
// Copyright 2016 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CustomElementReaction_h
#define CustomElementReaction_h
#include "core/CoreExport.h"
#include "platform/heap/Handle.h"
#include "wtf/Noncopyable.h"
namespace blink {
class CustomElementDefinition;
class Element;
class CORE_EXPORT CustomElementReaction
: public GarbageCollectedFinalized<CustomElementReaction> {
WTF_MAKE_NONCOPYABLE(CustomElementReaction);
public:
CustomElementReaction(CustomElementDefinition*);
virtual ~CustomElementReaction() = default;
virtual void invoke(Element*) = 0;
DECLARE_VIRTUAL_TRACE();
protected:
Member<CustomElementDefinition> m_definition;
};
} // namespace blink
#endif // CustomElementReaction_h