| Index: third_party/WebKit/Source/core/dom/custom/CustomElementsRegistry.h
|
| diff --git a/third_party/WebKit/Source/core/dom/custom/CustomElementsRegistry.h b/third_party/WebKit/Source/core/dom/custom/CustomElementsRegistry.h
|
| index de7d2aaa98ccb722181a7683df4dfefd92421b95..dabfdfc945ca6a3d8f8b99451aa755210f70d0b2 100644
|
| --- a/third_party/WebKit/Source/core/dom/custom/CustomElementsRegistry.h
|
| +++ b/third_party/WebKit/Source/core/dom/custom/CustomElementsRegistry.h
|
| @@ -5,18 +5,18 @@
|
| #ifndef CustomElementsRegistry_h
|
| #define CustomElementsRegistry_h
|
|
|
| -#include "bindings/core/v8/ScopedPersistent.h"
|
| #include "bindings/core/v8/ScriptWrappable.h"
|
| #include "core/CoreExport.h"
|
| #include "platform/heap/Handle.h"
|
| -#include "v8.h"
|
| #include "wtf/HashSet.h"
|
| +#include "wtf/Noncopyable.h"
|
| #include "wtf/text/AtomicString.h"
|
| #include "wtf/text/AtomicStringHash.h"
|
|
|
| namespace blink {
|
|
|
| class CustomElementDefinition;
|
| +class CustomElementDefinitionBuilder;
|
| class ElementRegistrationOptions;
|
| class ExceptionState;
|
| class ScriptState;
|
| @@ -27,10 +27,9 @@ class CORE_EXPORT CustomElementsRegistry final
|
| : public GarbageCollectedFinalized<CustomElementsRegistry>
|
| , public ScriptWrappable {
|
| DEFINE_WRAPPERTYPEINFO();
|
| + WTF_MAKE_NONCOPYABLE(CustomElementsRegistry);
|
| public:
|
| - using Id = uint32_t;
|
| static CustomElementsRegistry* create(
|
| - ScriptState*,
|
| V0CustomElementRegistrationContext*);
|
|
|
| void define(
|
| @@ -40,36 +39,24 @@ public:
|
| const ElementRegistrationOptions&,
|
| ExceptionState&);
|
|
|
| - CustomElementDefinition* definitionForConstructor(
|
| - ScriptState*,
|
| - v8::Local<v8::Value> constructor);
|
| - v8::Local<v8::Object> prototype(
|
| - ScriptState*,
|
| - const CustomElementDefinition&);
|
| + void define(
|
| + const AtomicString& name,
|
| + CustomElementDefinitionBuilder&,
|
| + const ElementRegistrationOptions&,
|
| + ExceptionState&);
|
|
|
| - // TODO(dominicc): Remove this when V0CustomElements are removed.
|
| - bool nameIsDefined(const AtomicString& name) const;
|
| + bool nameIsDefined(const AtomicString& name) const
|
| + {
|
| + return m_names.contains(name);
|
| + }
|
|
|
| DECLARE_TRACE();
|
|
|
| private:
|
| CustomElementsRegistry(const V0CustomElementRegistrationContext*);
|
| -
|
| - // Retrieves the Map which, given a constructor, contains the id
|
| - // of the definition; or given an id, contains the prototype.
|
| - // Returns true if the map was retrieved; false if the map was
|
| - // not initialized yet.
|
| - v8::Local<v8::Map> idMap(ScriptState*);
|
| -
|
| - bool idForConstructor(
|
| - ScriptState*,
|
| - v8::Local<v8::Value> constructor,
|
| - Id&) WARN_UNUSED_RETURN;
|
| -
|
| - bool v0NameIsDefined(const AtomicString& name);
|
| + bool v0NameIsDefined(const AtomicString&) const;
|
|
|
| Member<const V0CustomElementRegistrationContext> m_v0;
|
| - HeapVector<Member<CustomElementDefinition>> m_definitions;
|
| HashSet<AtomicString> m_names;
|
| };
|
|
|
|
|