OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2000 Peter Kelly (pmk@post.com) | 2 * Copyright (C) 2000 Peter Kelly (pmk@post.com) |
3 * Copyright (C) 2005, 2006 Apple Computer, Inc. | 3 * Copyright (C) 2005, 2006 Apple Computer, Inc. |
4 * Copyright (C) 2007 Samuel Weinig (sam@webkit.org) | 4 * Copyright (C) 2007 Samuel Weinig (sam@webkit.org) |
5 * Copyright (C) 2010 Google, Inc. | 5 * Copyright (C) 2010 Google, Inc. |
6 * | 6 * |
7 * This library is free software; you can redistribute it and/or | 7 * This library is free software; you can redistribute it and/or |
8 * modify it under the terms of the GNU Library General Public | 8 * modify it under the terms of the GNU Library General Public |
9 * License as published by the Free Software Foundation; either | 9 * License as published by the Free Software Foundation; either |
10 * version 2 of the License, or (at your option) any later version. | 10 * version 2 of the License, or (at your option) any later version. |
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
98 // FIXME: The names are not very accurate :( | 98 // FIXME: The names are not very accurate :( |
99 virtual void suspendScheduledTasks(); | 99 virtual void suspendScheduledTasks(); |
100 virtual void resumeScheduledTasks(); | 100 virtual void resumeScheduledTasks(); |
101 | 101 |
102 void addClient(DocumentParserClient*); | 102 void addClient(DocumentParserClient*); |
103 void removeClient(DocumentParserClient*); | 103 void removeClient(DocumentParserClient*); |
104 | 104 |
105 protected: | 105 protected: |
106 explicit DocumentParser(Document*); | 106 explicit DocumentParser(Document*); |
107 | 107 |
108 virtual void flush() = 0; | |
109 | |
110 private: | 108 private: |
111 enum ParserState { | 109 enum ParserState { |
112 ParsingState, | 110 ParsingState, |
113 StoppingState, | 111 StoppingState, |
114 StoppedState, | 112 StoppedState, |
115 DetachedState | 113 DetachedState |
116 }; | 114 }; |
117 ParserState m_state; | 115 ParserState m_state; |
118 bool m_documentWasLoadedAsPartOfNavigation; | 116 bool m_documentWasLoadedAsPartOfNavigation; |
119 | 117 |
120 // Every DocumentParser needs a pointer back to the document. | 118 // Every DocumentParser needs a pointer back to the document. |
121 // m_document will be 0 after the parser is stopped. | 119 // m_document will be 0 after the parser is stopped. |
122 RawPtrWillBeMember<Document> m_document; | 120 RawPtrWillBeMember<Document> m_document; |
123 | 121 |
124 WillBeHeapHashSet<RawPtrWillBeWeakMember<DocumentParserClient>> m_clients; | 122 WillBeHeapHashSet<RawPtrWillBeWeakMember<DocumentParserClient>> m_clients; |
125 }; | 123 }; |
126 | 124 |
127 } // namespace blink | 125 } // namespace blink |
128 | 126 |
129 #endif // DocumentParser_h | 127 #endif // DocumentParser_h |
OLD | NEW |