1 // Copyright 2017 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #ifndef THIRD_PARTY_BLINK_RENDERER_CORE_LOADER_MODULESCRIPT_MODULE_SCRIPT_LOADER_CLIENT_H_
6 #define THIRD_PARTY_BLINK_RENDERER_CORE_LOADER_MODULESCRIPT_MODULE_SCRIPT_LOADER_CLIENT_H_
7 
8 #include "third_party/blink/renderer/platform/heap/handle.h"
9 
10 namespace blink {
11 
12 class ModuleScript;
13 
14 // A ModuleScriptLoaderClient is notified when a single module script load is
15 // complete.
16 // Note: Its corresponding module map entry is typically not yet created at the
17 // time of callback.
18 class ModuleScriptLoaderClient : public GarbageCollectedMixin {
19  public:
20   virtual ~ModuleScriptLoaderClient() = default;
21 
22  private:
23   friend class ModuleScriptLoader;
24   friend class ModuleMapTestModulator;
25 
26   virtual void NotifyNewSingleModuleFinished(ModuleScript*) = 0;
27 };
28 
29 }  // namespace blink
30 
31 #endif
32