Changeset 65932 in webkit
- Timestamp:
- Aug 24, 2010 1:49:16 PM (14 years ago)
- Location:
- trunk/WebCore
- Files:
-
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/WebCore/ChangeLog
r65931 r65932 1 2010-08-24 Adam Barth <abarth@webkit.org> 2 3 Reviewed by Eric Seidel. 4 5 HTMLTokenizer::create 6 https://bugs.webkit.org/show_bug.cgi?id=44477 7 8 * html/HTMLDocumentParser.cpp: 9 (WebCore::HTMLDocumentParser::HTMLDocumentParser): 10 * html/HTMLPreloadScanner.cpp: 11 (WebCore::HTMLPreloadScanner::HTMLPreloadScanner): 12 (WebCore::HTMLPreloadScanner::scan): 13 (WebCore::HTMLPreloadScanner::processToken): 14 * html/HTMLPreloadScanner.h: 15 * html/HTMLTokenizer.h: 16 (WebCore::HTMLTokenizer::create): 17 * html/HTMLViewSourceParser.cpp: 18 (WebCore::HTMLViewSourceParser::HTMLViewSourceParser): 19 (WebCore::HTMLViewSourceParser::pumpTokenizer): 20 (WebCore::HTMLViewSourceParser::updateTokenizerState): 21 * html/HTMLViewSourceParser.h: 22 1 23 2010-08-24 Adam Barth <abarth@webkit.org> 2 24 -
trunk/WebCore/html/HTMLDocumentParser.cpp
r65931 r65932 96 96 HTMLDocumentParser::HTMLDocumentParser(HTMLDocument* document, bool reportErrors) 97 97 : ScriptableDocumentParser(document) 98 , m_tokenizer( new HTMLTokenizer)98 , m_tokenizer(HTMLTokenizer::create()) 99 99 , m_scriptRunner(HTMLScriptRunner::create(document, this)) 100 100 , m_treeBuilder(HTMLTreeBuilder::create(m_tokenizer.get(), document, reportErrors)) … … 109 109 HTMLDocumentParser::HTMLDocumentParser(DocumentFragment* fragment, Element* contextElement, FragmentScriptingPermission scriptingPermission) 110 110 : ScriptableDocumentParser(fragment->document()) 111 , m_tokenizer( new HTMLTokenizer)111 , m_tokenizer(HTMLTokenizer::create()) 112 112 , m_treeBuilder(HTMLTreeBuilder::create(m_tokenizer.get(), fragment, contextElement, scriptingPermission)) 113 113 , m_endWasDelayed(false) -
trunk/WebCore/html/HTMLPreloadScanner.cpp
r61675 r65932 121 121 : m_document(document) 122 122 , m_cssScanner(document) 123 , m_tokenizer(HTMLTokenizer::create()) 123 124 , m_bodySeen(false) 124 125 , m_inStyle(false) … … 135 136 // FIXME: We should save and re-use these tokens in HTMLDocumentParser if 136 137 // the pending script doesn't end up calling document.write. 137 while (m_tokenizer .nextToken(m_source, m_token)) {138 while (m_tokenizer->nextToken(m_source, m_token)) { 138 139 processToken(); 139 140 m_token.clear(); … … 156 157 157 158 PreloadTask task(m_token); 158 m_tokenizer .setState(HTMLTreeBuilder::adjustedLexerState(m_tokenizer.state(), task.tagName(), m_document->frame()));159 m_tokenizer->setState(HTMLTreeBuilder::adjustedLexerState(m_tokenizer->state(), task.tagName(), m_document->frame())); 159 160 if (task.tagName() == scriptTag) { 160 161 // The tree builder handles scriptTag separately from the other tokenizer 161 162 // state adjustments, so we need to handle it separately too. 162 ASSERT(m_tokenizer .state() == HTMLTokenizer::DataState);163 m_tokenizer .setState(HTMLTokenizer::ScriptDataState);163 ASSERT(m_tokenizer->state() == HTMLTokenizer::DataState); 164 m_tokenizer->setState(HTMLTokenizer::ScriptDataState); 164 165 } 165 166 -
trunk/WebCore/html/HTMLPreloadScanner.h
r61678 r65932 53 53 Document* m_document; 54 54 SegmentedString m_source; 55 HTMLTokenizer m_tokenizer; 55 CSSPreloadScanner m_cssScanner; 56 OwnPtr<HTMLTokenizer> m_tokenizer; 56 57 HTMLToken m_token; 57 CSSPreloadScanner m_cssScanner;58 58 bool m_bodySeen; 59 59 bool m_inStyle; -
trunk/WebCore/html/HTMLTokenizer.h
r65382 r65932 30 30 #include "SegmentedString.h" 31 31 #include <wtf/Noncopyable.h> 32 #include <wtf/PassOwnPtr.h> 32 33 #include <wtf/Vector.h> 33 34 #include <wtf/text/AtomicString.h> … … 116 117 }; 117 118 118 HTMLTokenizer();119 static PassOwnPtr<HTMLTokenizer> create() { return adoptPtr(new HTMLTokenizer); } 119 120 ~HTMLTokenizer(); 120 121 … … 232 233 }; 233 234 235 HTMLTokenizer(); 236 234 237 inline bool processEntity(SegmentedString&); 235 238 -
trunk/WebCore/html/HTMLViewSourceParser.cpp
r65692 r65932 35 35 HTMLViewSourceParser::HTMLViewSourceParser(HTMLViewSourceDocument* document) 36 36 : DecodedDataDocumentParser(document) 37 , m_tokenizer(HTMLTokenizer::create()) 37 38 { 38 39 } … … 49 50 void HTMLViewSourceParser::pumpTokenizer() 50 51 { 51 while (m_tokenizer .nextToken(m_input.current(), m_token)) {52 while (m_tokenizer->nextToken(m_input.current(), m_token)) { 52 53 m_token.end(m_input.current().numberOfCharactersConsumed()); 53 54 document()->addSource(sourceForToken(), m_token); … … 87 88 88 89 AtomicString tagName(m_token.name().data(), m_token.name().size()); 89 m_tokenizer .setState(HTMLTreeBuilder::adjustedLexerState(m_tokenizer.state(), tagName, m_document->frame()));90 m_tokenizer->setState(HTMLTreeBuilder::adjustedLexerState(m_tokenizer->state(), tagName, m_document->frame())); 90 91 if (tagName == HTMLNames::scriptTag) { 91 92 // The tree builder handles scriptTag separately from the other tokenizer 92 93 // state adjustments, so we need to handle it separately too. 93 ASSERT(m_tokenizer .state() == HTMLTokenizer::DataState);94 m_tokenizer .setState(HTMLTokenizer::ScriptDataState);94 ASSERT(m_tokenizer->state() == HTMLTokenizer::DataState); 95 m_tokenizer->setState(HTMLTokenizer::ScriptDataState); 95 96 } 96 97 } -
trunk/WebCore/html/HTMLViewSourceParser.h
r65692 r65932 70 70 SegmentedString m_source; 71 71 HTMLToken m_token; 72 HTMLTokenizerm_tokenizer;72 OwnPtr<HTMLTokenizer> m_tokenizer; 73 73 }; 74 74
Note: See TracChangeset
for help on using the changeset viewer.