class BackgroundHTMLParser;
class CompactHTMLToken;
class Document;
+class DocumentEncodingData;
class DocumentFragment;
class HTMLDocument;
class HTMLParserScheduler;
class HTMLScriptRunner;
class HTMLTreeBuilder;
class HTMLResourcePreloader;
-class ScriptController;
-class ScriptSourceCode;
class PumpSession;
return adoptRefWillBeNoop(new HTMLDocumentParser(document, reportErrors));
}
virtual ~HTMLDocumentParser();
- virtual void trace(Visitor*) OVERRIDE;
+ virtual void trace(Visitor*) override;
// Exposed for HTMLParserScheduler
void resumeParsingAfterYield();
HTMLTokenizer* tokenizer() const { return m_tokenizer.get(); }
- virtual TextPosition textPosition() const OVERRIDE FINAL;
- virtual OrdinalNumber lineNumber() const OVERRIDE FINAL;
+ virtual TextPosition textPosition() const override final;
+ virtual OrdinalNumber lineNumber() const override final;
- virtual void suspendScheduledTasks() OVERRIDE FINAL;
- virtual void resumeScheduledTasks() OVERRIDE FINAL;
+ virtual void suspendScheduledTasks() override final;
+ virtual void resumeScheduledTasks() override final;
struct ParsedChunk {
OwnPtr<CompactHTMLTokenStream> tokens;
void didReceiveParsedChunkFromBackgroundParser(PassOwnPtr<ParsedChunk>);
void didReceiveEncodingDataFromBackgroundParser(const DocumentEncodingData&);
- virtual void appendBytes(const char* bytes, size_t length) OVERRIDE;
- virtual void flush() OVERRIDE FINAL;
- virtual void setDecoder(PassOwnPtr<TextResourceDecoder>) OVERRIDE FINAL;
+ virtual void appendBytes(const char* bytes, size_t length) override;
+ virtual void flush() override final;
+ virtual void setDecoder(PassOwnPtr<TextResourceDecoder>) override final;
UseCounter* useCounter() { return UseCounter::getFrom(contextForParsingSession()); }
protected:
- virtual void insert(const SegmentedString&) OVERRIDE FINAL;
- virtual void append(PassRefPtr<StringImpl>) OVERRIDE;
- virtual void finish() OVERRIDE FINAL;
+ virtual void insert(const SegmentedString&) override final;
+ virtual void append(PassRefPtr<StringImpl>) override;
+ virtual void finish() override final;
HTMLDocumentParser(HTMLDocument&, bool reportErrors);
HTMLDocumentParser(DocumentFragment*, Element* contextElement, ParserContentPolicy);
}
// DocumentParser
- virtual void pinToMainThread() OVERRIDE FINAL;
- virtual void detach() OVERRIDE FINAL;
- virtual bool hasInsertionPoint() OVERRIDE FINAL;
- virtual bool processingData() const OVERRIDE FINAL;
- virtual void prepareToStopParsing() OVERRIDE FINAL;
- virtual void stopParsing() OVERRIDE FINAL;
- virtual bool isWaitingForScripts() const OVERRIDE FINAL;
- virtual bool isExecutingScript() const OVERRIDE FINAL;
- virtual void executeScriptsWaitingForResources() OVERRIDE FINAL;
+ virtual void pinToMainThread() override final;
+ virtual void detach() override final;
+ virtual bool hasInsertionPoint() override final;
+ virtual bool processingData() const override final;
+ virtual void prepareToStopParsing() override final;
+ virtual void stopParsing() override final;
+ virtual bool isWaitingForScripts() const override final;
+ virtual bool isExecutingScript() const override final;
+ virtual void executeScriptsWaitingForResources() override final;
// HTMLScriptRunnerHost
- virtual void notifyScriptLoaded(Resource*) OVERRIDE FINAL;
- virtual HTMLInputStream& inputStream() OVERRIDE FINAL { return m_input; }
- virtual bool hasPreloadScanner() const OVERRIDE FINAL { return m_preloadScanner.get() && !shouldUseThreading(); }
- virtual void appendCurrentInputStreamToPreloadScannerAndScan() OVERRIDE FINAL;
+ virtual void notifyScriptLoaded(Resource*) override final;
+ virtual HTMLInputStream& inputStream() override final { return m_input; }
+ virtual bool hasPreloadScanner() const override final { return m_preloadScanner.get() && !shouldUseThreading(); }
+ virtual void appendCurrentInputStreamToPreloadScannerAndScan() override final;
void startBackgroundParser();
void stopBackgroundParser();
Document* contextForParsingSession();
- enum SynchronousMode {
- AllowYield,
- ForceSynchronous,
- };
- bool canTakeNextToken(SynchronousMode, PumpSession&);
- void pumpTokenizer(SynchronousMode);
- void pumpTokenizerIfPossible(SynchronousMode);
- void constructTreeFromHTMLToken(HTMLToken&);
+ bool canTakeNextToken();
+ void pumpTokenizer();
+ void pumpTokenizerIfPossible();
+ void constructTreeFromHTMLToken();
void constructTreeFromCompactHTMLToken(const CompactHTMLToken&);
void runScriptsForPausedTreeBuilder();
void attemptToRunDeferredScriptsAndEnd();
void end();
- bool shouldUseThreading() const { return m_options.useThreading && !m_isPinnedToMainThread; }
+ bool shouldUseThreading() const { return !m_isPinnedToMainThread; }
bool isParsingFragment() const;
bool isScheduledForResume() const;
// FIXME: m_lastChunkBeforeScript, m_tokenizer, m_token, and m_input should be combined into a single state object
// so they can be set and cleared together and passed between threads together.
OwnPtr<ParsedChunk> m_lastChunkBeforeScript;
- Deque<OwnPtr<ParsedChunk> > m_speculations;
+ Deque<OwnPtr<ParsedChunk>> m_speculations;
WeakPtrFactory<HTMLDocumentParser> m_weakFactory;
WeakPtr<BackgroundHTMLParser> m_backgroundParser;
OwnPtrWillBeMember<HTMLResourcePreloader> m_preloader;