OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2009 Google Inc. All rights reserved. | 2 * Copyright (C) 2009 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 14 matching lines...) Expand all Loading... |
25 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | 25 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | 26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | 27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
29 */ | 29 */ |
30 | 30 |
31 #ifndef WebNodeList_h | 31 #ifndef WebNodeList_h |
32 #define WebNodeList_h | 32 #define WebNodeList_h |
33 | 33 |
34 #include "../platform/WebCommon.h" | 34 #include "../platform/WebCommon.h" |
| 35 #include "WebNodeCollection.h" |
35 | 36 |
36 namespace WebCore { class NodeList; } | 37 namespace WebCore { class NodeList; } |
37 #if BLINK_IMPLEMENTATION | 38 #if BLINK_IMPLEMENTATION |
38 namespace WTF { template <typename T> class PassRefPtr; } | 39 namespace WTF { template <typename T> class PassRefPtr; } |
39 #endif | 40 #endif |
40 | 41 |
41 namespace blink { | 42 namespace blink { |
42 class WebNode; | 43 class WebNode; |
43 | 44 |
44 // Provides readonly access to some properties of a DOM node. | 45 // Provides readonly access to some properties of a DOM node. |
45 class WebNodeList { | 46 class WebNodeList { |
46 public: | 47 public: |
47 ~WebNodeList() { reset(); } | 48 ~WebNodeList() { reset(); } |
48 | 49 |
49 WebNodeList() : m_private(0) { } | 50 WebNodeList() : m_private(0) { } |
50 WebNodeList(const WebNodeList& n) : m_private(0) { assign(n); } | 51 WebNodeList(const WebNodeList& n) : m_private(0) { assign(n); } |
51 WebNodeList& operator=(const WebNodeList& n) | 52 WebNodeList& operator=(const WebNodeList& n) |
52 { | 53 { |
53 assign(n); | 54 assign(n); |
54 return *this; | 55 return *this; |
55 } | 56 } |
56 | 57 |
| 58 // FIXME(crbug.com/235008): Remove once chromium has been updated to stop us
ing |
| 59 // WebCollection as a WebNodeList. |
| 60 BLINK_EXPORT WebNodeList(const WebNodeCollection&); |
| 61 |
57 BLINK_EXPORT void reset(); | 62 BLINK_EXPORT void reset(); |
58 BLINK_EXPORT void assign(const WebNodeList&); | 63 BLINK_EXPORT void assign(const WebNodeList&); |
59 | 64 |
60 BLINK_EXPORT unsigned length() const; | 65 BLINK_EXPORT unsigned length() const; |
61 BLINK_EXPORT WebNode item(size_t) const; | 66 BLINK_EXPORT WebNode item(size_t) const; |
62 | 67 |
63 #if BLINK_IMPLEMENTATION | 68 #if BLINK_IMPLEMENTATION |
64 WebNodeList(const WTF::PassRefPtr<WebCore::NodeList>&); | 69 WebNodeList(const WTF::PassRefPtr<WebCore::NodeList>&); |
65 #endif | 70 #endif |
66 | 71 |
67 private: | 72 private: |
68 void assign(WebCore::NodeList*); | 73 void assign(WebCore::NodeList*); |
69 WebCore::NodeList* m_private; | 74 WebCore::NodeList* m_private; |
70 }; | 75 }; |
71 | 76 |
72 } // namespace blink | 77 } // namespace blink |
73 | 78 |
74 #endif | 79 #endif |
OLD | NEW |