Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(208)

Side by Side Diff: third_party/WebKit/Source/core/dom/NodeIterator.h

Issue 1686483002: Oilpan: Remove most WillBe types from the code base (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 /* 1 /*
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
3 * Copyright (C) 2000 Frederik Holljen (frederik.holljen@hig.no) 3 * Copyright (C) 2000 Frederik Holljen (frederik.holljen@hig.no)
4 * Copyright (C) 2001 Peter Kelly (pmk@post.com) 4 * Copyright (C) 2001 Peter Kelly (pmk@post.com)
5 * Copyright (C) 2006 Samuel Weinig (sam.weinig@gmail.com) 5 * Copyright (C) 2006 Samuel Weinig (sam.weinig@gmail.com)
6 * Copyright (C) 2004, 2008 Apple Inc. All rights reserved. 6 * Copyright (C) 2004, 2008 Apple Inc. All rights reserved.
7 * 7 *
8 * This library is free software; you can redistribute it and/or 8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Library General Public 9 * modify it under the terms of the GNU Library General Public
10 * License as published by the Free Software Foundation; either 10 * License as published by the Free Software Foundation; either
(...skipping 18 matching lines...) Expand all
29 #include "core/dom/NodeFilter.h" 29 #include "core/dom/NodeFilter.h"
30 #include "core/dom/NodeIteratorBase.h" 30 #include "core/dom/NodeIteratorBase.h"
31 #include "platform/heap/Handle.h" 31 #include "platform/heap/Handle.h"
32 #include "wtf/PassRefPtr.h" 32 #include "wtf/PassRefPtr.h"
33 #include "wtf/RefCounted.h" 33 #include "wtf/RefCounted.h"
34 34
35 namespace blink { 35 namespace blink {
36 36
37 class ExceptionState; 37 class ExceptionState;
38 38
39 class NodeIterator final : public RefCountedWillBeGarbageCollected<NodeIterator> , public ScriptWrappable, public NodeIteratorBase { 39 class NodeIterator final : public GarbageCollected<NodeIterator>, public ScriptW rappable, public NodeIteratorBase {
40 DEFINE_WRAPPERTYPEINFO(); 40 DEFINE_WRAPPERTYPEINFO();
41 WILL_BE_USING_GARBAGE_COLLECTED_MIXIN(NodeIterator); 41 USING_GARBAGE_COLLECTED_MIXIN(NodeIterator);
42 public: 42 public:
43 static PassRefPtrWillBeRawPtr<NodeIterator> create(PassRefPtrWillBeRawPtr<No de> rootNode, unsigned whatToShow, PassRefPtrWillBeRawPtr<NodeFilter> filter) 43 static RawPtr<NodeIterator> create(RawPtr<Node> rootNode, unsigned whatToSho w, RawPtr<NodeFilter> filter)
44 { 44 {
45 return adoptRefWillBeNoop(new NodeIterator(rootNode, whatToShow, filter) ); 45 return new NodeIterator(rootNode, whatToShow, filter);
46 } 46 }
47 47
48 #if !ENABLE(OILPAN) 48 #if !ENABLE(OILPAN)
49 ~NodeIterator(); 49 ~NodeIterator();
50 #endif 50 #endif
51 51
52 PassRefPtrWillBeRawPtr<Node> nextNode(ExceptionState&); 52 RawPtr<Node> nextNode(ExceptionState&);
53 PassRefPtrWillBeRawPtr<Node> previousNode(ExceptionState&); 53 RawPtr<Node> previousNode(ExceptionState&);
54 void detach(); 54 void detach();
55 55
56 Node* referenceNode() const { return m_referenceNode.node.get(); } 56 Node* referenceNode() const { return m_referenceNode.node.get(); }
57 bool pointerBeforeReferenceNode() const { return m_referenceNode.isPointerBe foreNode; } 57 bool pointerBeforeReferenceNode() const { return m_referenceNode.isPointerBe foreNode; }
58 58
59 // This function is called before any node is removed from the document tree . 59 // This function is called before any node is removed from the document tree .
60 void nodeWillBeRemoved(Node&); 60 void nodeWillBeRemoved(Node&);
61 61
62 DECLARE_VIRTUAL_TRACE(); 62 DECLARE_VIRTUAL_TRACE();
63 63
64 private: 64 private:
65 NodeIterator(PassRefPtrWillBeRawPtr<Node>, unsigned whatToShow, PassRefPtrWi llBeRawPtr<NodeFilter>); 65 NodeIterator(RawPtr<Node>, unsigned whatToShow, RawPtr<NodeFilter>);
66 66
67 class NodePointer { 67 class NodePointer {
68 DISALLOW_NEW(); 68 DISALLOW_NEW();
69 public: 69 public:
70 NodePointer(); 70 NodePointer();
71 NodePointer(PassRefPtrWillBeRawPtr<Node>, bool); 71 NodePointer(RawPtr<Node>, bool);
72 72
73 void clear(); 73 void clear();
74 bool moveToNext(Node* root); 74 bool moveToNext(Node* root);
75 bool moveToPrevious(Node* root); 75 bool moveToPrevious(Node* root);
76 76
77 RefPtrWillBeMember<Node> node; 77 Member<Node> node;
78 bool isPointerBeforeNode; 78 bool isPointerBeforeNode;
79 79
80 DEFINE_INLINE_TRACE() 80 DEFINE_INLINE_TRACE()
81 { 81 {
82 visitor->trace(node); 82 visitor->trace(node);
83 } 83 }
84 }; 84 };
85 85
86 void updateForNodeRemoval(Node& nodeToBeRemoved, NodePointer&) const; 86 void updateForNodeRemoval(Node& nodeToBeRemoved, NodePointer&) const;
87 87
88 NodePointer m_referenceNode; 88 NodePointer m_referenceNode;
89 NodePointer m_candidateNode; 89 NodePointer m_candidateNode;
90 }; 90 };
91 91
92 } // namespace blink 92 } // namespace blink
93 93
94 #endif // NodeIterator_h 94 #endif // NodeIterator_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698