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

Side by Side Diff: Source/core/html/parser/HTMLConstructionSite.h

Issue 298043008: [Oilpan]: Move HTMLStackItem and friends to the oilpan heap. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: fix windows build Created 6 years, 6 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
« no previous file with comments | « no previous file | Source/core/html/parser/HTMLConstructionSite.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (C) 2010 Google, Inc. All Rights Reserved. 2 * Copyright (C) 2010 Google, Inc. All Rights Reserved.
3 * Copyright (C) 2011 Apple Inc. All rights reserved. 3 * Copyright (C) 2011 Apple Inc. All rights reserved.
4 * 4 *
5 * Redistribution and use in source and binary forms, with or without 5 * Redistribution and use in source and binary forms, with or without
6 * modification, are permitted provided that the following conditions 6 * modification, are permitted provided that the following conditions
7 * are met: 7 * are met:
8 * 1. Redistributions of source code must retain the above copyright 8 * 1. 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 * 2. Redistributions in binary form must reproduce the above copyright 10 * 2. Redistributions in binary form must reproduce the above copyright
(...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after
152 void insertHTMLBodyStartTagInBody(AtomicHTMLToken*); 152 void insertHTMLBodyStartTagInBody(AtomicHTMLToken*);
153 153
154 void reparent(HTMLElementStack::ElementRecord* newParent, HTMLElementStack:: ElementRecord* child); 154 void reparent(HTMLElementStack::ElementRecord* newParent, HTMLElementStack:: ElementRecord* child);
155 void reparent(HTMLElementStack::ElementRecord* newParent, HTMLStackItem* chi ld); 155 void reparent(HTMLElementStack::ElementRecord* newParent, HTMLStackItem* chi ld);
156 // insertAlreadyParsedChild assumes that |child| has already been parsed (i. e., we're just 156 // insertAlreadyParsedChild assumes that |child| has already been parsed (i. e., we're just
157 // moving it around in the tree rather than parsing it for the first time). That means 157 // moving it around in the tree rather than parsing it for the first time). That means
158 // this function doesn't call beginParsingChildren / finishParsingChildren. 158 // this function doesn't call beginParsingChildren / finishParsingChildren.
159 void insertAlreadyParsedChild(HTMLStackItem* newParent, HTMLElementStack::El ementRecord* child); 159 void insertAlreadyParsedChild(HTMLStackItem* newParent, HTMLElementStack::El ementRecord* child);
160 void takeAllChildren(HTMLStackItem* newParent, HTMLElementStack::ElementReco rd* oldParent); 160 void takeAllChildren(HTMLStackItem* newParent, HTMLElementStack::ElementReco rd* oldParent);
161 161
162 PassRefPtr<HTMLStackItem> createElementFromSavedToken(HTMLStackItem*); 162 PassRefPtrWillBeRawPtr<HTMLStackItem> createElementFromSavedToken(HTMLStackI tem*);
163 163
164 bool shouldFosterParent() const; 164 bool shouldFosterParent() const;
165 void fosterParent(PassRefPtrWillBeRawPtr<Node>); 165 void fosterParent(PassRefPtrWillBeRawPtr<Node>);
166 166
167 bool indexOfFirstUnopenFormattingElement(unsigned& firstUnopenElementIndex) const; 167 bool indexOfFirstUnopenFormattingElement(unsigned& firstUnopenElementIndex) const;
168 void reconstructTheActiveFormattingElements(); 168 void reconstructTheActiveFormattingElements();
169 169
170 void generateImpliedEndTags(); 170 void generateImpliedEndTags();
171 void generateImpliedEndTagsWithExclusion(const AtomicString& tagName); 171 void generateImpliedEndTagsWithExclusion(const AtomicString& tagName);
172 172
(...skipping 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
233 void executeTask(HTMLConstructionSiteTask&); 233 void executeTask(HTMLConstructionSiteTask&);
234 void queueTask(const HTMLConstructionSiteTask&); 234 void queueTask(const HTMLConstructionSiteTask&);
235 235
236 RawPtrWillBeMember<Document> m_document; 236 RawPtrWillBeMember<Document> m_document;
237 237
238 // This is the root ContainerNode to which the parser attaches all newly 238 // This is the root ContainerNode to which the parser attaches all newly
239 // constructed nodes. It points to a DocumentFragment when parsing fragments 239 // constructed nodes. It points to a DocumentFragment when parsing fragments
240 // and a Document in all other cases. 240 // and a Document in all other cases.
241 RawPtrWillBeMember<ContainerNode> m_attachmentRoot; 241 RawPtrWillBeMember<ContainerNode> m_attachmentRoot;
242 242
243 RefPtr<HTMLStackItem> m_head; 243 RefPtrWillBeMember<HTMLStackItem> m_head;
244 RefPtrWillBeMember<HTMLFormElement> m_form; 244 RefPtrWillBeMember<HTMLFormElement> m_form;
245 mutable HTMLElementStack m_openElements; 245 mutable HTMLElementStack m_openElements;
246 mutable HTMLFormattingElementList m_activeFormattingElements; 246 mutable HTMLFormattingElementList m_activeFormattingElements;
247 247
248 TaskQueue m_taskQueue; 248 TaskQueue m_taskQueue;
249 249
250 struct PendingText { 250 struct PendingText {
251 PendingText() 251 PendingText()
252 : whitespaceMode(WhitespaceUnknown) 252 : whitespaceMode(WhitespaceUnknown)
253 { 253 {
(...skipping 48 matching lines...) Expand 10 before | Expand all | Expand 10 after
302 // "whenever a node would be inserted into the current node, it must instead 302 // "whenever a node would be inserted into the current node, it must instead
303 // be foster parented." This flag tracks whether we're in that state. 303 // be foster parented." This flag tracks whether we're in that state.
304 bool m_redirectAttachToFosterParent; 304 bool m_redirectAttachToFosterParent;
305 305
306 bool m_inQuirksMode; 306 bool m_inQuirksMode;
307 }; 307 };
308 308
309 } // namespace WebCore 309 } // namespace WebCore
310 310
311 #endif 311 #endif
OLDNEW
« no previous file with comments | « no previous file | Source/core/html/parser/HTMLConstructionSite.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698