Index: Source/core/html/parser/BackgroundHTMLParser.h |
diff --git a/Source/core/html/parser/BackgroundHTMLParser.h b/Source/core/html/parser/BackgroundHTMLParser.h |
index b9b5a511c49d5ef2ff926353764448aa7ffb06f4..f1a76fd000577676c9ef0ea5b580076ebfeb221d 100644 |
--- a/Source/core/html/parser/BackgroundHTMLParser.h |
+++ b/Source/core/html/parser/BackgroundHTMLParser.h |
@@ -31,8 +31,6 @@ |
#include "core/html/parser/HTMLParserOptions.h" |
#include "core/html/parser/HTMLPreloadScanner.h" |
#include "core/html/parser/HTMLSourceTracker.h" |
-#include "core/html/parser/HTMLToken.h" |
-#include "core/html/parser/HTMLTokenizer.h" |
#include "core/html/parser/HTMLTreeBuilderSimulator.h" |
#include "core/html/parser/XSSAuditorDelegate.h" |
#include "wtf/PassOwnPtr.h" |
@@ -41,6 +39,7 @@ |
namespace WebCore { |
class HTMLDocumentParser; |
+class SharedBuffer; |
class XSSAuditor; |
class BackgroundHTMLParser { |
@@ -51,13 +50,10 @@ public: |
WeakPtr<HTMLDocumentParser> parser; |
OwnPtr<XSSAuditor> xssAuditor; |
OwnPtr<TokenPreloadScanner> preloadScanner; |
+ OwnPtr<TextResourceDecoder> decoder; |
}; |
- static void create(PassRefPtr<WeakReference<BackgroundHTMLParser> > reference, PassOwnPtr<Configuration> config) |
- { |
- new BackgroundHTMLParser(reference, config); |
- // Caller must free by calling stop(). |
- } |
+ static void start(PassRefPtr<WeakReference<BackgroundHTMLParser> >, PassOwnPtr<Configuration>); |
struct Checkpoint { |
WeakPtr<HTMLDocumentParser> parser; |
@@ -69,7 +65,9 @@ public: |
String unparsedInput; |
}; |
- void append(const String&); |
+ void appendBytes(PassOwnPtr<Vector<char> >); |
+ void setDecoder(PassOwnPtr<TextResourceDecoder>); |
+ void flush(); |
void resumeFrom(PassOwnPtr<Checkpoint>); |
void startedChunkWithCheckpoint(HTMLInputCheckpoint); |
void finish(); |
@@ -79,10 +77,13 @@ public: |
private: |
BackgroundHTMLParser(PassRefPtr<WeakReference<BackgroundHTMLParser> >, PassOwnPtr<Configuration>); |
+ ~BackgroundHTMLParser(); |
+ void append(const String&); |
void markEndOfFile(); |
void pumpTokenizer(); |
void sendTokensToMainThread(); |
+ void updateDocument(const String& decodedData); |
WeakPtrFactory<BackgroundHTMLParser> m_weakFactory; |
BackgroundHTMLInputStream m_input; |
@@ -99,6 +100,8 @@ private: |
OwnPtr<XSSAuditor> m_xssAuditor; |
OwnPtr<TokenPreloadScanner> m_preloadScanner; |
+ OwnPtr<TextResourceDecoder> m_decoder; |
+ DocumentEncodingData m_lastSeenEncodingData; |
}; |
} |