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

Side by Side Diff: third_party/WebKit/Source/core/html/parser/HTMLTreeBuilder.cpp

Issue 2583233002: Migrate WTF::Vector::append() to ::push_back() [part 7 of N] (Closed)
Patch Set: Created 4 years 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) 2010 Google, Inc. All Rights Reserved. 2 * Copyright (C) 2010 Google, Inc. All Rights Reserved.
3 * Copyright (C) 2011, 2014 Apple Inc. All rights reserved. 3 * Copyright (C) 2011, 2014 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 236 matching lines...) Expand 10 before | Expand all | Expand 10 after
247 m_fragmentContext.init(fragment, contextElement); 247 m_fragmentContext.init(fragment, contextElement);
248 248
249 // Steps 4.2-4.6 of the HTML5 Fragment Case parsing algorithm: 249 // Steps 4.2-4.6 of the HTML5 Fragment Case parsing algorithm:
250 // http://www.whatwg.org/specs/web-apps/current-work/multipage/the-end.html#fr agment-case 250 // http://www.whatwg.org/specs/web-apps/current-work/multipage/the-end.html#fr agment-case
251 // For efficiency, we skip step 4.2 ("Let root be a new html element with no 251 // For efficiency, we skip step 4.2 ("Let root be a new html element with no
252 // attributes") and instead use the DocumentFragment as a root node. 252 // attributes") and instead use the DocumentFragment as a root node.
253 m_tree.openElements()->pushRootNode(HTMLStackItem::create( 253 m_tree.openElements()->pushRootNode(HTMLStackItem::create(
254 fragment, HTMLStackItem::ItemForDocumentFragmentNode)); 254 fragment, HTMLStackItem::ItemForDocumentFragmentNode));
255 255
256 if (isHTMLTemplateElement(*contextElement)) 256 if (isHTMLTemplateElement(*contextElement))
257 m_templateInsertionModes.append(TemplateContentsMode); 257 m_templateInsertionModes.push_back(TemplateContentsMode);
258 258
259 resetInsertionModeAppropriately(); 259 resetInsertionModeAppropriately();
260 } 260 }
261 261
262 HTMLTreeBuilder::~HTMLTreeBuilder() {} 262 HTMLTreeBuilder::~HTMLTreeBuilder() {}
263 263
264 void HTMLTreeBuilder::FragmentParsingContext::init(DocumentFragment* fragment, 264 void HTMLTreeBuilder::FragmentParsingContext::init(DocumentFragment* fragment,
265 Element* contextElement) { 265 Element* contextElement) {
266 DCHECK(fragment); 266 DCHECK(fragment);
267 DCHECK(!fragment->hasChildren()); 267 DCHECK(!fragment->hasChildren());
(...skipping 576 matching lines...) Expand 10 before | Expand all | Expand 10 after
844 return; 844 return;
845 } 845 }
846 m_tree.reconstructTheActiveFormattingElements(); 846 m_tree.reconstructTheActiveFormattingElements();
847 m_tree.insertHTMLElement(token); 847 m_tree.insertHTMLElement(token);
848 } 848 }
849 849
850 void HTMLTreeBuilder::processTemplateStartTag(AtomicHTMLToken* token) { 850 void HTMLTreeBuilder::processTemplateStartTag(AtomicHTMLToken* token) {
851 m_tree.activeFormattingElements()->appendMarker(); 851 m_tree.activeFormattingElements()->appendMarker();
852 m_tree.insertHTMLElement(token); 852 m_tree.insertHTMLElement(token);
853 m_framesetOk = false; 853 m_framesetOk = false;
854 m_templateInsertionModes.append(TemplateContentsMode); 854 m_templateInsertionModes.push_back(TemplateContentsMode);
855 setInsertionMode(TemplateContentsMode); 855 setInsertionMode(TemplateContentsMode);
856 } 856 }
857 857
858 bool HTMLTreeBuilder::processTemplateEndTag(AtomicHTMLToken* token) { 858 bool HTMLTreeBuilder::processTemplateEndTag(AtomicHTMLToken* token) {
859 ASSERT(token->name() == templateTag.localName()); 859 ASSERT(token->name() == templateTag.localName());
860 if (!m_tree.openElements()->hasTemplateInHTMLScope()) { 860 if (!m_tree.openElements()->hasTemplateInHTMLScope()) {
861 ASSERT(m_templateInsertionModes.isEmpty() || 861 ASSERT(m_templateInsertionModes.isEmpty() ||
862 (m_templateInsertionModes.size() == 1 && 862 (m_templateInsertionModes.size() == 1 &&
863 isHTMLTemplateElement(m_fragmentContext.contextElement()))); 863 isHTMLTemplateElement(m_fragmentContext.contextElement())));
864 parseError(token); 864 parseError(token);
(...skipping 1889 matching lines...) Expand 10 before | Expand all | Expand 10 after
2754 DEFINE_STRINGIFY(AfterFramesetMode) 2754 DEFINE_STRINGIFY(AfterFramesetMode)
2755 DEFINE_STRINGIFY(AfterAfterBodyMode) 2755 DEFINE_STRINGIFY(AfterAfterBodyMode)
2756 DEFINE_STRINGIFY(AfterAfterFramesetMode) 2756 DEFINE_STRINGIFY(AfterAfterFramesetMode)
2757 #undef DEFINE_STRINGIFY 2757 #undef DEFINE_STRINGIFY
2758 } 2758 }
2759 return "<unknown>"; 2759 return "<unknown>";
2760 } 2760 }
2761 #endif 2761 #endif
2762 2762
2763 } // namespace blink 2763 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698