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

Side by Side Diff: Source/core/dom/TreeScopeAdopter.h

Issue 235113002: Oilpan: Remove guardRef and guardDeref from TreeScope. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Only perform weak processing of the event handler registry if the document is active. Created 6 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 | Annotate | Revision Log
OLDNEW
1 /* 1 /*
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
3 * (C) 1999 Antti Koivisto (koivisto@kde.org) 3 * (C) 1999 Antti Koivisto (koivisto@kde.org)
4 * (C) 2001 Dirk Mueller (mueller@kde.org) 4 * (C) 2001 Dirk Mueller (mueller@kde.org)
5 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All r ights reserved. 5 * Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011 Apple Inc. All r ights reserved.
6 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies) 6 * Copyright (C) 2008 Nokia Corporation and/or its subsidiary(-ies)
7 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo bile.com/) 7 * Copyright (C) 2009 Torch Mobile Inc. All rights reserved. (http://www.torchmo bile.com/)
8 * Copyright (C) 2011 Google Inc. All rights reserved. 8 * Copyright (C) 2011 Google Inc. All rights reserved.
9 * 9 *
10 * This library is free software; you can redistribute it and/or 10 * This library is free software; you can redistribute it and/or
(...skipping 14 matching lines...) Expand all
25 #ifndef TreeScopeAdopter_h 25 #ifndef TreeScopeAdopter_h
26 #define TreeScopeAdopter_h 26 #define TreeScopeAdopter_h
27 27
28 #include "core/dom/Node.h" 28 #include "core/dom/Node.h"
29 29
30 namespace WebCore { 30 namespace WebCore {
31 31
32 class TreeScope; 32 class TreeScope;
33 33
34 class TreeScopeAdopter { 34 class TreeScopeAdopter {
35 STACK_ALLOCATED();
35 public: 36 public:
36 TreeScopeAdopter(Node& toAdopt, TreeScope& newScope); 37 TreeScopeAdopter(Node& toAdopt, TreeScope& newScope);
37 38
38 void execute() const { moveTreeToNewScope(m_toAdopt); } 39 void execute() const { moveTreeToNewScope(m_toAdopt); }
39 bool needsScopeChange() const { return m_oldScope != m_newScope; } 40 bool needsScopeChange() const { return m_oldScope != m_newScope; }
40 41
41 #ifdef NDEBUG 42 #ifdef NDEBUG
42 static void ensureDidMoveToNewDocumentWasCalled(Document&) { } 43 static void ensureDidMoveToNewDocumentWasCalled(Document&) { }
43 #else 44 #else
44 static void ensureDidMoveToNewDocumentWasCalled(Document&); 45 static void ensureDidMoveToNewDocumentWasCalled(Document&);
45 #endif 46 #endif
46 47
47 private: 48 private:
48 void updateTreeScope(Node&) const; 49 void updateTreeScope(Node&) const;
49 void moveTreeToNewScope(Node&) const; 50 void moveTreeToNewScope(Node&) const;
50 void moveTreeToNewDocument(Node&, Document& oldDocument, Document& newDocume nt) const; 51 void moveTreeToNewDocument(Node&, Document& oldDocument, Document& newDocume nt) const;
51 void moveNodeToNewDocument(Node&, Document& oldDocument, Document& newDocume nt) const; 52 void moveNodeToNewDocument(Node&, Document& oldDocument, Document& newDocume nt) const;
52 53
53 Node& m_toAdopt; 54 Node& m_toAdopt;
54 TreeScope& m_newScope; 55 TreeScope& m_newScope;
55 TreeScope& m_oldScope; 56 TreeScope& m_oldScope;
haraken 2014/04/25 14:30:32 Can we use Member<TreeScope> for m_newScope and m_
Mads Ager (chromium) 2014/04/28 09:45:21 Yes, we can. However, good transition types for th
56 }; 57 };
57 58
58 inline TreeScopeAdopter::TreeScopeAdopter(Node& toAdopt, TreeScope& newScope) 59 inline TreeScopeAdopter::TreeScopeAdopter(Node& toAdopt, TreeScope& newScope)
59 : m_toAdopt(toAdopt) 60 : m_toAdopt(toAdopt)
60 , m_newScope(newScope) 61 , m_newScope(newScope)
61 , m_oldScope(toAdopt.treeScope()) 62 , m_oldScope(toAdopt.treeScope())
62 { 63 {
63 } 64 }
64 65
65 } 66 }
66 67
67 #endif 68 #endif
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698