Chromium Code Reviews

Unified Diff: Source/core/dom/ScriptRunner.h

Issue 656113002: Refactor Script(Loader|Runner): don't access Resources all over the place... (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: . Created 6 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments.
Jump to:
View side-by-side diff with in-line comments
Index: Source/core/dom/ScriptRunner.h
diff --git a/Source/core/dom/ScriptRunner.h b/Source/core/dom/ScriptRunner.h
index ffd7bf2e9f80bf06c6fd0e4b4b79c7a7863055a9..bfa8799dec9c35158981d60d906d1a28aa455a44 100644
--- a/Source/core/dom/ScriptRunner.h
+++ b/Source/core/dom/ScriptRunner.h
@@ -38,7 +38,6 @@ namespace blink {
class ScriptResource;
class Document;
-class PendingScript;
class ScriptLoader;
class ScriptRunner final : public NoBaseWillBeGarbageCollectedFinalized<ScriptRunner> {
@@ -51,7 +50,7 @@ public:
~ScriptRunner();
enum ExecutionType { ASYNC_EXECUTION, IN_ORDER_EXECUTION };
- void queueScriptForExecution(ScriptLoader*, ResourcePtr<ScriptResource>, ExecutionType);
+ void queueScriptForExecution(ScriptLoader*, ExecutionType);
bool hasPendingScripts() const { return !m_scriptsToExecuteSoon.isEmpty() || !m_scriptsToExecuteInOrder.isEmpty() || !m_pendingAsyncScripts.isEmpty(); }
void suspend();
void resume();
@@ -67,14 +66,13 @@ private:
void timerFired(Timer<ScriptRunner>*);
- void addPendingAsyncScript(ScriptLoader*, const PendingScript&);
+ void addPendingAsyncScript(ScriptLoader*);
RawPtrWillBeMember<Document> m_document;
- // FIXME: Oilpan: consider using heap vectors and hash map here;
- // PendingScript does have a (trivial) destructor, however.
- Vector<PendingScript> m_scriptsToExecuteInOrder;
- Vector<PendingScript> m_scriptsToExecuteSoon; // http://www.whatwg.org/specs/web-apps/current-work/#set-of-scripts-that-will-execute-as-soon-as-possible
- WillBeHeapHashMap<ScriptLoader*, PendingScript> m_pendingAsyncScripts;
+ // FIXME: Oilpan: what to do with these?
haraken 2014/10/15 15:09:41 You can remove this comment now. This comment was
marja 2014/10/16 15:19:04 Done.
+ Vector<ScriptLoader*> m_scriptsToExecuteInOrder;
+ Vector<ScriptLoader*> m_scriptsToExecuteSoon; // http://www.whatwg.org/specs/web-apps/current-work/#set-of-scripts-that-will-execute-as-soon-as-possible
+ HashSet<ScriptLoader*> m_pendingAsyncScripts;
haraken 2014/10/15 15:09:41 Just help me understand: You're using raw pointers
marja 2014/10/16 15:19:04 That didn't change with this CL; ScriptLoader is o
Timer<ScriptRunner> m_timer;
};

Powered by Google App Engine