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

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

Issue 932403002: InlinedVisitor: Migrate html to use inlined tracing (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 10 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 | « Source/core/html/parser/HTMLStackItem.h ('k') | Source/core/html/parser/HTMLTreeBuilder.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 41 matching lines...) Expand 10 before | Expand all | Expand 10 after
52 public: 52 public:
53 static PassOwnPtrWillBeRawPtr<HTMLTreeBuilder> create(HTMLDocumentParser* pa rser, HTMLDocument* document, ParserContentPolicy parserContentPolicy, bool repo rtErrors, const HTMLParserOptions& options) 53 static PassOwnPtrWillBeRawPtr<HTMLTreeBuilder> create(HTMLDocumentParser* pa rser, HTMLDocument* document, ParserContentPolicy parserContentPolicy, bool repo rtErrors, const HTMLParserOptions& options)
54 { 54 {
55 return adoptPtrWillBeNoop(new HTMLTreeBuilder(parser, document, parserCo ntentPolicy, reportErrors, options)); 55 return adoptPtrWillBeNoop(new HTMLTreeBuilder(parser, document, parserCo ntentPolicy, reportErrors, options));
56 } 56 }
57 static PassOwnPtrWillBeRawPtr<HTMLTreeBuilder> create(HTMLDocumentParser* pa rser, DocumentFragment* fragment, Element* contextElement, ParserContentPolicy p arserContentPolicy, const HTMLParserOptions& options) 57 static PassOwnPtrWillBeRawPtr<HTMLTreeBuilder> create(HTMLDocumentParser* pa rser, DocumentFragment* fragment, Element* contextElement, ParserContentPolicy p arserContentPolicy, const HTMLParserOptions& options)
58 { 58 {
59 return adoptPtrWillBeNoop(new HTMLTreeBuilder(parser, fragment, contextE lement, parserContentPolicy, options)); 59 return adoptPtrWillBeNoop(new HTMLTreeBuilder(parser, fragment, contextE lement, parserContentPolicy, options));
60 } 60 }
61 ~HTMLTreeBuilder(); 61 ~HTMLTreeBuilder();
62 void trace(Visitor*); 62 DECLARE_TRACE();
63 63
64 const HTMLElementStack* openElements() const { return m_tree.openElements(); } 64 const HTMLElementStack* openElements() const { return m_tree.openElements(); }
65 65
66 bool isParsingFragment() const { return !!m_fragmentContext.fragment(); } 66 bool isParsingFragment() const { return !!m_fragmentContext.fragment(); }
67 bool isParsingTemplateContents() const { return m_tree.openElements()->hasTe mplateInHTMLScope(); } 67 bool isParsingTemplateContents() const { return m_tree.openElements()->hasTe mplateInHTMLScope(); }
68 bool isParsingFragmentOrTemplateContents() const { return isParsingFragment( ) || isParsingTemplateContents(); } 68 bool isParsingFragmentOrTemplateContents() const { return isParsingFragment( ) || isParsingTemplateContents(); }
69 69
70 void detach(); 70 void detach();
71 71
72 void constructTree(AtomicHTMLToken*); 72 void constructTree(AtomicHTMLToken*);
(...skipping 123 matching lines...) Expand 10 before | Expand all | Expand 10 after
196 DISALLOW_ALLOCATION(); 196 DISALLOW_ALLOCATION();
197 public: 197 public:
198 FragmentParsingContext(); 198 FragmentParsingContext();
199 FragmentParsingContext(DocumentFragment*, Element* contextElement); 199 FragmentParsingContext(DocumentFragment*, Element* contextElement);
200 ~FragmentParsingContext(); 200 ~FragmentParsingContext();
201 201
202 DocumentFragment* fragment() const { return m_fragment; } 202 DocumentFragment* fragment() const { return m_fragment; }
203 Element* contextElement() const { ASSERT(m_fragment); return m_contextEl ementStackItem->element(); } 203 Element* contextElement() const { ASSERT(m_fragment); return m_contextEl ementStackItem->element(); }
204 HTMLStackItem* contextElementStackItem() const { ASSERT(m_fragment); ret urn m_contextElementStackItem.get(); } 204 HTMLStackItem* contextElementStackItem() const { ASSERT(m_fragment); ret urn m_contextElementStackItem.get(); }
205 205
206 void trace(Visitor*); 206 DECLARE_TRACE();
207 207
208 private: 208 private:
209 RawPtrWillBeMember<DocumentFragment> m_fragment; 209 RawPtrWillBeMember<DocumentFragment> m_fragment;
210 RefPtrWillBeMember<HTMLStackItem> m_contextElementStackItem; 210 RefPtrWillBeMember<HTMLStackItem> m_contextElementStackItem;
211 }; 211 };
212 212
213 bool m_framesetOk; 213 bool m_framesetOk;
214 #if ENABLE(ASSERT) 214 #if ENABLE(ASSERT)
215 bool m_isAttached; 215 bool m_isAttached;
216 #endif 216 #endif
(...skipping 19 matching lines...) Expand all
236 236
237 RefPtrWillBeMember<Element> m_scriptToProcess; // <script> tag which needs p rocessing before resuming the parser. 237 RefPtrWillBeMember<Element> m_scriptToProcess; // <script> tag which needs p rocessing before resuming the parser.
238 TextPosition m_scriptToProcessStartPosition; // Starting line number of the script tag needing processing. 238 TextPosition m_scriptToProcessStartPosition; // Starting line number of the script tag needing processing.
239 239
240 HTMLParserOptions m_options; 240 HTMLParserOptions m_options;
241 }; 241 };
242 242
243 } 243 }
244 244
245 #endif 245 #endif
OLDNEW
« no previous file with comments | « Source/core/html/parser/HTMLStackItem.h ('k') | Source/core/html/parser/HTMLTreeBuilder.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698