OLD | NEW |
1 // Copyright 2016 The Chromium Authors. All rights reserved. | 1 // Copyright 2016 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef InlineStylePropertyMap_h | 5 #ifndef InlineStylePropertyMap_h |
6 #define InlineStylePropertyMap_h | 6 #define InlineStylePropertyMap_h |
7 | 7 |
8 #include "core/css/cssom/MutableStylePropertyMap.h" | 8 #include "core/css/cssom/StylePropertyMap.h" |
9 #include "core/dom/Element.h" | 9 #include "core/dom/Element.h" |
10 | 10 |
11 namespace blink { | 11 namespace blink { |
12 | 12 |
13 class CORE_EXPORT InlineStylePropertyMap final | 13 class CORE_EXPORT InlineStylePropertyMap final : public StylePropertyMap { |
14 : public MutableStylePropertyMap { | |
15 WTF_MAKE_NONCOPYABLE(InlineStylePropertyMap); | 14 WTF_MAKE_NONCOPYABLE(InlineStylePropertyMap); |
16 | 15 |
17 public: | 16 public: |
18 explicit InlineStylePropertyMap(Element* ownerElement) | 17 explicit InlineStylePropertyMap(Element* ownerElement) |
19 : m_ownerElement(ownerElement) {} | 18 : m_ownerElement(ownerElement) {} |
20 | 19 |
21 Vector<String> getProperties() override; | 20 Vector<String> getProperties() override; |
22 | 21 |
23 void set(CSSPropertyID, | 22 void set(CSSPropertyID, |
24 CSSStyleValueOrCSSStyleValueSequenceOrString&, | 23 CSSStyleValueOrCSSStyleValueSequenceOrString&, |
25 ExceptionState&) override; | 24 ExceptionState&) override; |
26 void append(CSSPropertyID, | 25 void append(CSSPropertyID, |
27 CSSStyleValueOrCSSStyleValueSequenceOrString&, | 26 CSSStyleValueOrCSSStyleValueSequenceOrString&, |
28 ExceptionState&) override; | 27 ExceptionState&) override; |
29 void remove(CSSPropertyID, ExceptionState&) override; | 28 void remove(CSSPropertyID, ExceptionState&) override; |
30 | 29 |
31 DEFINE_INLINE_VIRTUAL_TRACE() { | 30 DEFINE_INLINE_VIRTUAL_TRACE() { |
32 visitor->trace(m_ownerElement); | 31 visitor->trace(m_ownerElement); |
33 MutableStylePropertyMap::trace(visitor); | 32 StylePropertyMap::trace(visitor); |
34 } | 33 } |
35 | 34 |
36 protected: | 35 protected: |
37 CSSStyleValueVector getAllInternal(CSSPropertyID) override; | 36 CSSStyleValueVector getAllInternal(CSSPropertyID) override; |
38 CSSStyleValueVector getAllInternal(AtomicString customPropertyName) override; | 37 CSSStyleValueVector getAllInternal(AtomicString customPropertyName) override; |
39 | 38 |
40 HeapVector<StylePropertyMapEntry> getIterationEntries() override; | 39 HeapVector<StylePropertyMapEntry> getIterationEntries() override; |
41 | 40 |
42 private: | 41 private: |
43 Member<Element> m_ownerElement; | 42 Member<Element> m_ownerElement; |
44 }; | 43 }; |
45 | 44 |
46 } // namespace blink | 45 } // namespace blink |
47 | 46 |
48 #endif | 47 #endif |
OLD | NEW |