OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2013 Google Inc. All rights reserved. | 2 * Copyright (C) 2013 Google Inc. All rights reserved. |
3 * | 3 * |
4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
6 * met: | 6 * met: |
7 * | 7 * |
8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
(...skipping 26 matching lines...) Expand all Loading... |
37 #include "wtf/HashMap.h" | 37 #include "wtf/HashMap.h" |
38 #include "wtf/LinkedHashSet.h" | 38 #include "wtf/LinkedHashSet.h" |
39 #include "wtf/Noncopyable.h" | 39 #include "wtf/Noncopyable.h" |
40 | 40 |
41 namespace blink { | 41 namespace blink { |
42 | 42 |
43 class CustomElementUpgradeCandidateMap final : public CustomElementObserver { | 43 class CustomElementUpgradeCandidateMap final : public CustomElementObserver { |
44 WTF_MAKE_NONCOPYABLE(CustomElementUpgradeCandidateMap); | 44 WTF_MAKE_NONCOPYABLE(CustomElementUpgradeCandidateMap); |
45 public: | 45 public: |
46 static PassOwnPtrWillBeRawPtr<CustomElementUpgradeCandidateMap> create(); | 46 static PassOwnPtrWillBeRawPtr<CustomElementUpgradeCandidateMap> create(); |
47 virtual ~CustomElementUpgradeCandidateMap(); | 47 ~CustomElementUpgradeCandidateMap() override; |
48 | 48 |
49 // API for CustomElementRegistrationContext to save and take candidates | 49 // API for CustomElementRegistrationContext to save and take candidates |
50 | 50 |
51 typedef WillBeHeapLinkedHashSet<RawPtrWillBeWeakMember<Element>> ElementSet; | 51 typedef WillBeHeapLinkedHashSet<RawPtrWillBeWeakMember<Element>> ElementSet; |
52 | 52 |
53 void add(const CustomElementDescriptor&, Element*); | 53 void add(const CustomElementDescriptor&, Element*); |
54 PassOwnPtrWillBeRawPtr<ElementSet> takeUpgradeCandidatesFor(const CustomElem
entDescriptor&); | 54 PassOwnPtrWillBeRawPtr<ElementSet> takeUpgradeCandidatesFor(const CustomElem
entDescriptor&); |
55 | 55 |
56 DECLARE_VIRTUAL_TRACE(); | 56 DECLARE_VIRTUAL_TRACE(); |
57 | 57 |
58 private: | 58 private: |
59 CustomElementUpgradeCandidateMap() { } | 59 CustomElementUpgradeCandidateMap() { } |
60 | 60 |
61 virtual void elementWasDestroyed(Element*) override; | 61 void elementWasDestroyed(Element*) override; |
62 | 62 |
63 typedef WillBeHeapHashMap<RawPtrWillBeWeakMember<Element>, CustomElementDesc
riptor> UpgradeCandidateMap; | 63 typedef WillBeHeapHashMap<RawPtrWillBeWeakMember<Element>, CustomElementDesc
riptor> UpgradeCandidateMap; |
64 UpgradeCandidateMap m_upgradeCandidates; | 64 UpgradeCandidateMap m_upgradeCandidates; |
65 | 65 |
66 typedef WillBeHeapHashMap<CustomElementDescriptor, OwnPtrWillBeMember<Elemen
tSet>> UnresolvedDefinitionMap; | 66 typedef WillBeHeapHashMap<CustomElementDescriptor, OwnPtrWillBeMember<Elemen
tSet>> UnresolvedDefinitionMap; |
67 UnresolvedDefinitionMap m_unresolvedDefinitions; | 67 UnresolvedDefinitionMap m_unresolvedDefinitions; |
68 }; | 68 }; |
69 | 69 |
70 } // namespace blink | 70 } // namespace blink |
71 | 71 |
72 #endif // CustomElementUpgradeCandidateMap_h | 72 #endif // CustomElementUpgradeCandidateMap_h |
OLD | NEW |