source: trip-planner-front/node_modules/@angular/compiler-cli/ngcc/src/execution/single_process_executor.js@ 6a3a178

Last change on this file since 6a3a178 was 6a3a178, checked in by Ema <ema_spirova@…>, 3 years ago

initial commit

  • Property mode set to 100644
File size: 10.4 KB
Line 
1/**
2 * @license
3 * Copyright Google LLC All Rights Reserved.
4 *
5 * Use of this source code is governed by an MIT-style license that can be
6 * found in the LICENSE file at https://angular.io/license
7 */
8(function (factory) {
9 if (typeof module === "object" && typeof module.exports === "object") {
10 var v = factory(require, exports);
11 if (v !== undefined) module.exports = v;
12 }
13 else if (typeof define === "function" && define.amd) {
14 define("@angular/compiler-cli/ngcc/src/execution/single_process_executor", ["require", "exports", "tslib"], factory);
15 }
16})(function (require, exports) {
17 "use strict";
18 Object.defineProperty(exports, "__esModule", { value: true });
19 exports.SingleProcessExecutorAsync = exports.SingleProcessExecutorSync = exports.SingleProcessorExecutorBase = void 0;
20 var tslib_1 = require("tslib");
21 var SingleProcessorExecutorBase = /** @class */ (function () {
22 function SingleProcessorExecutorBase(logger, createTaskCompletedCallback) {
23 this.logger = logger;
24 this.createTaskCompletedCallback = createTaskCompletedCallback;
25 }
26 SingleProcessorExecutorBase.prototype.doExecute = function (analyzeEntryPoints, createCompileFn) {
27 this.logger.debug("Running ngcc on " + this.constructor.name + ".");
28 var taskQueue = analyzeEntryPoints();
29 var onTaskCompleted = this.createTaskCompletedCallback(taskQueue);
30 var compile = createCompileFn(function () { }, onTaskCompleted);
31 // Process all tasks.
32 this.logger.debug('Processing tasks...');
33 var startTime = Date.now();
34 while (!taskQueue.allTasksCompleted) {
35 var task = taskQueue.getNextTask();
36 compile(task);
37 taskQueue.markAsCompleted(task);
38 }
39 var duration = Math.round((Date.now() - startTime) / 1000);
40 this.logger.debug("Processed tasks in " + duration + "s.");
41 };
42 return SingleProcessorExecutorBase;
43 }());
44 exports.SingleProcessorExecutorBase = SingleProcessorExecutorBase;
45 /**
46 * An `Executor` that processes all tasks serially and completes synchronously.
47 */
48 var SingleProcessExecutorSync = /** @class */ (function (_super) {
49 tslib_1.__extends(SingleProcessExecutorSync, _super);
50 function SingleProcessExecutorSync(logger, lockFile, createTaskCompletedCallback) {
51 var _this = _super.call(this, logger, createTaskCompletedCallback) || this;
52 _this.lockFile = lockFile;
53 return _this;
54 }
55 SingleProcessExecutorSync.prototype.execute = function (analyzeEntryPoints, createCompileFn) {
56 var _this = this;
57 this.lockFile.lock(function () { return _this.doExecute(analyzeEntryPoints, createCompileFn); });
58 };
59 return SingleProcessExecutorSync;
60 }(SingleProcessorExecutorBase));
61 exports.SingleProcessExecutorSync = SingleProcessExecutorSync;
62 /**
63 * An `Executor` that processes all tasks serially, but still completes asynchronously.
64 */
65 var SingleProcessExecutorAsync = /** @class */ (function (_super) {
66 tslib_1.__extends(SingleProcessExecutorAsync, _super);
67 function SingleProcessExecutorAsync(logger, lockFile, createTaskCompletedCallback) {
68 var _this = _super.call(this, logger, createTaskCompletedCallback) || this;
69 _this.lockFile = lockFile;
70 return _this;
71 }
72 SingleProcessExecutorAsync.prototype.execute = function (analyzeEntryPoints, createCompileFn) {
73 return tslib_1.__awaiter(this, void 0, void 0, function () {
74 var _this = this;
75 return tslib_1.__generator(this, function (_a) {
76 switch (_a.label) {
77 case 0: return [4 /*yield*/, this.lockFile.lock(function () { return tslib_1.__awaiter(_this, void 0, void 0, function () { return tslib_1.__generator(this, function (_a) {
78 return [2 /*return*/, this.doExecute(analyzeEntryPoints, createCompileFn)];
79 }); }); })];
80 case 1:
81 _a.sent();
82 return [2 /*return*/];
83 }
84 });
85 });
86 };
87 return SingleProcessExecutorAsync;
88 }(SingleProcessorExecutorBase));
89 exports.SingleProcessExecutorAsync = SingleProcessExecutorAsync;
90});
91//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2luZ2xlX3Byb2Nlc3NfZXhlY3V0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21waWxlci1jbGkvbmdjYy9zcmMvZXhlY3V0aW9uL3NpbmdsZV9wcm9jZXNzX2V4ZWN1dG9yLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7R0FNRzs7Ozs7Ozs7Ozs7Ozs7SUFTSDtRQUNFLHFDQUNZLE1BQWMsRUFBVSwyQkFBd0Q7WUFBaEYsV0FBTSxHQUFOLE1BQU0sQ0FBUTtZQUFVLGdDQUEyQixHQUEzQiwyQkFBMkIsQ0FBNkI7UUFBRyxDQUFDO1FBRWhHLCtDQUFTLEdBQVQsVUFBVSxrQkFBd0MsRUFBRSxlQUFnQztZQUVsRixJQUFJLENBQUMsTUFBTSxDQUFDLEtBQUssQ0FBQyxxQkFBbUIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLE1BQUcsQ0FBQyxDQUFDO1lBRS9ELElBQU0sU0FBUyxHQUFHLGtCQUFrQixFQUFFLENBQUM7WUFDdkMsSUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLDJCQUEyQixDQUFDLFNBQVMsQ0FBQyxDQUFDO1lBQ3BFLElBQU0sT0FBTyxHQUFHLGVBQWUsQ0FBQyxjQUFPLENBQUMsRUFBRSxlQUFlLENBQUMsQ0FBQztZQUUzRCxxQkFBcUI7WUFDckIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMscUJBQXFCLENBQUMsQ0FBQztZQUN6QyxJQUFNLFNBQVMsR0FBRyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQUM7WUFFN0IsT0FBTyxDQUFDLFNBQVMsQ0FBQyxpQkFBaUIsRUFBRTtnQkFDbkMsSUFBTSxJQUFJLEdBQUcsU0FBUyxDQUFDLFdBQVcsRUFBRyxDQUFDO2dCQUN0QyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7Z0JBQ2QsU0FBUyxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQzthQUNqQztZQUVELElBQU0sUUFBUSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsU0FBUyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUM7WUFDN0QsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsd0JBQXNCLFFBQVEsT0FBSSxDQUFDLENBQUM7UUFDeEQsQ0FBQztRQUNILGtDQUFDO0lBQUQsQ0FBQyxBQXpCRCxJQXlCQztJQXpCcUIsa0VBQTJCO0lBMkJqRDs7T0FFRztJQUNIO1FBQStDLHFEQUEyQjtRQUN4RSxtQ0FDSSxNQUFjLEVBQVUsUUFBb0IsRUFDNUMsMkJBQXdEO1lBRjVELFlBR0Usa0JBQU0sTUFBTSxFQUFFLDJCQUEyQixDQUFDLFNBQzNDO1lBSDJCLGNBQVEsR0FBUixRQUFRLENBQVk7O1FBR2hELENBQUM7UUFDRCwyQ0FBTyxHQUFQLFVBQVEsa0JBQXdDLEVBQUUsZUFBZ0M7WUFBbEYsaUJBRUM7WUFEQyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxjQUFNLE9BQUEsS0FBSSxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsRUFBRSxlQUFlLENBQUMsRUFBbkQsQ0FBbUQsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7UUFDSCxnQ0FBQztJQUFELENBQUMsQUFURCxDQUErQywyQkFBMkIsR0FTekU7SUFUWSw4REFBeUI7SUFXdEM7O09BRUc7SUFDSDtRQUFnRCxzREFBMkI7UUFDekUsb0NBQ0ksTUFBYyxFQUFVLFFBQXFCLEVBQzdDLDJCQUF3RDtZQUY1RCxZQUdFLGtCQUFNLE1BQU0sRUFBRSwyQkFBMkIsQ0FBQyxTQUMzQztZQUgyQixjQUFRLEdBQVIsUUFBUSxDQUFhOztRQUdqRCxDQUFDO1FBQ0ssNENBQU8sR0FBYixVQUFjLGtCQUF3QyxFQUFFLGVBQWdDOzs7OztnQ0FFdEYscUJBQU0sSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUM7Z0NBQVksc0JBQUEsSUFBSSxDQUFDLFNBQVMsQ0FBQyxrQkFBa0IsRUFBRSxlQUFlLENBQUMsRUFBQTtxQ0FBQSxDQUFDLEVBQUE7OzRCQUF6RixTQUF5RixDQUFDOzs7OztTQUMzRjtRQUNILGlDQUFDO0lBQUQsQ0FBQyxBQVZELENBQWdELDJCQUEyQixHQVUxRTtJQVZZLGdFQUEwQiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCBHb29nbGUgTExDIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKlxuICogVXNlIG9mIHRoaXMgc291cmNlIGNvZGUgaXMgZ292ZXJuZWQgYnkgYW4gTUlULXN0eWxlIGxpY2Vuc2UgdGhhdCBjYW4gYmVcbiAqIGZvdW5kIGluIHRoZSBMSUNFTlNFIGZpbGUgYXQgaHR0cHM6Ly9hbmd1bGFyLmlvL2xpY2Vuc2VcbiAqL1xuXG5pbXBvcnQge0xvZ2dlcn0gZnJvbSAnLi4vLi4vLi4vc3JjL25ndHNjL2xvZ2dpbmcnO1xuaW1wb3J0IHtBc3luY0xvY2tlcn0gZnJvbSAnLi4vbG9ja2luZy9hc3luY19sb2NrZXInO1xuaW1wb3J0IHtTeW5jTG9ja2VyfSBmcm9tICcuLi9sb2NraW5nL3N5bmNfbG9ja2VyJztcblxuaW1wb3J0IHtBbmFseXplRW50cnlQb2ludHNGbiwgQ3JlYXRlQ29tcGlsZUZuLCBFeGVjdXRvcn0gZnJvbSAnLi9hcGknO1xuaW1wb3J0IHtDcmVhdGVUYXNrQ29tcGxldGVkQ2FsbGJhY2t9IGZyb20gJy4vdGFza3MvYXBpJztcblxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIFNpbmdsZVByb2Nlc3NvckV4ZWN1dG9yQmFzZSB7XG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSBsb2dnZXI6IExvZ2dlciwgcHJpdmF0ZSBjcmVhdGVUYXNrQ29tcGxldGVkQ2FsbGJhY2s6IENyZWF0ZVRhc2tDb21wbGV0ZWRDYWxsYmFjaykge31cblxuICBkb0V4ZWN1dGUoYW5hbHl6ZUVudHJ5UG9pbnRzOiBBbmFseXplRW50cnlQb2ludHNGbiwgY3JlYXRlQ29tcGlsZUZuOiBDcmVhdGVDb21waWxlRm4pOlxuICAgICAgdm9pZHxQcm9taXNlPHZvaWQ+IHtcbiAgICB0aGlzLmxvZ2dlci5kZWJ1ZyhgUnVubmluZyBuZ2NjIG9uICR7dGhpcy5jb25zdHJ1Y3Rvci5uYW1lfS5gKTtcblxuICAgIGNvbnN0IHRhc2tRdWV1ZSA9IGFuYWx5emVFbnRyeVBvaW50cygpO1xuICAgIGNvbnN0IG9uVGFza0NvbXBsZXRlZCA9IHRoaXMuY3JlYXRlVGFza0NvbXBsZXRlZENhbGxiYWNrKHRhc2tRdWV1ZSk7XG4gICAgY29uc3QgY29tcGlsZSA9IGNyZWF0ZUNvbXBpbGVGbigoKSA9PiB7fSwgb25UYXNrQ29tcGxldGVkKTtcblxuICAgIC8vIFByb2Nlc3MgYWxsIHRhc2tzLlxuICAgIHRoaXMubG9nZ2VyLmRlYnVnKCdQcm9jZXNzaW5nIHRhc2tzLi4uJyk7XG4gICAgY29uc3Qgc3RhcnRUaW1lID0gRGF0ZS5ub3coKTtcblxuICAgIHdoaWxlICghdGFza1F1ZXVlLmFsbFRhc2tzQ29tcGxldGVkKSB7XG4gICAgICBjb25zdCB0YXNrID0gdGFza1F1ZXVlLmdldE5leHRUYXNrKCkhO1xuICAgICAgY29tcGlsZSh0YXNrKTtcbiAgICAgIHRhc2tRdWV1ZS5tYXJrQXNDb21wbGV0ZWQodGFzayk7XG4gICAgfVxuXG4gICAgY29uc3QgZHVyYXRpb24gPSBNYXRoLnJvdW5kKChEYXRlLm5vdygpIC0gc3RhcnRUaW1lKSAvIDEwMDApO1xuICAgIHRoaXMubG9nZ2VyLmRlYnVnKGBQcm9jZXNzZWQgdGFza3MgaW4gJHtkdXJhdGlvbn1zLmApO1xuICB9XG59XG5cbi8qKlxuICogQW4gYEV4ZWN1dG9yYCB0aGF0IHByb2Nlc3NlcyBhbGwgdGFza3Mgc2VyaWFsbHkgYW5kIGNvbXBsZXRlcyBzeW5jaHJvbm91c2x5LlxuICovXG5leHBvcnQgY2xhc3MgU2luZ2xlUHJvY2Vzc0V4ZWN1dG9yU3luYyBleHRlbmRzIFNpbmdsZVByb2Nlc3NvckV4ZWN1dG9yQmFzZSBpbXBsZW1lbnRzIEV4ZWN1dG9yIHtcbiAgY29uc3RydWN0b3IoXG4gICAgICBsb2dnZXI6IExvZ2dlciwgcHJpdmF0ZSBsb2NrRmlsZTogU3luY0xvY2tlcixcbiAgICAgIGNyZWF0ZVRhc2tDb21wbGV0ZWRDYWxsYmFjazogQ3JlYXRlVGFza0NvbXBsZXRlZENhbGxiYWNrKSB7XG4gICAgc3VwZXIobG9nZ2VyLCBjcmVhdGVUYXNrQ29tcGxldGVkQ2FsbGJhY2spO1xuICB9XG4gIGV4ZWN1dGUoYW5hbHl6ZUVudHJ5UG9pbnRzOiBBbmFseXplRW50cnlQb2ludHNGbiwgY3JlYXRlQ29tcGlsZUZuOiBDcmVhdGVDb21waWxlRm4pOiB2b2lkIHtcbiAgICB0aGlzLmxvY2tGaWxlLmxvY2soKCkgPT4gdGhpcy5kb0V4ZWN1dGUoYW5hbHl6ZUVudHJ5UG9pbnRzLCBjcmVhdGVDb21waWxlRm4pKTtcbiAgfVxufVxuXG4vKipcbiAqIEFuIGBFeGVjdXRvcmAgdGhhdCBwcm9jZXNzZXMgYWxsIHRhc2tzIHNlcmlhbGx5LCBidXQgc3RpbGwgY29tcGxldGVzIGFzeW5jaHJvbm91c2x5LlxuICovXG5leHBvcnQgY2xhc3MgU2luZ2xlUHJvY2Vzc0V4ZWN1dG9yQXN5bmMgZXh0ZW5kcyBTaW5nbGVQcm9jZXNzb3JFeGVjdXRvckJhc2UgaW1wbGVtZW50cyBFeGVjdXRvciB7XG4gIGNvbnN0cnVjdG9yKFxuICAgICAgbG9nZ2VyOiBMb2dnZXIsIHByaXZhdGUgbG9ja0ZpbGU6IEFzeW5jTG9ja2VyLFxuICAgICAgY3JlYXRlVGFza0NvbXBsZXRlZENhbGxiYWNrOiBDcmVhdGVUYXNrQ29tcGxldGVkQ2FsbGJhY2spIHtcbiAgICBzdXBlcihsb2dnZXIsIGNyZWF0ZVRhc2tDb21wbGV0ZWRDYWxsYmFjayk7XG4gIH1cbiAgYXN5bmMgZXhlY3V0ZShhbmFseXplRW50cnlQb2ludHM6IEFuYWx5emVFbnRyeVBvaW50c0ZuLCBjcmVhdGVDb21waWxlRm46IENyZWF0ZUNvbXBpbGVGbik6XG4gICAgICBQcm9taXNlPHZvaWQ+IHtcbiAgICBhd2FpdCB0aGlzLmxvY2tGaWxlLmxvY2soYXN5bmMgKCkgPT4gdGhpcy5kb0V4ZWN1dGUoYW5hbHl6ZUVudHJ5UG9pbnRzLCBjcmVhdGVDb21waWxlRm4pKTtcbiAgfVxufVxuIl19
Note: See TracBrowser for help on using the repository browser.