first commit

This commit is contained in:
s.golasch
2023-08-01 13:49:46 +02:00
commit 1fc239fd54
20238 changed files with 3112246 additions and 0 deletions

161
build/node_modules/prepack/lib/serializer/logger.js generated vendored Normal file
View File

@@ -0,0 +1,161 @@
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.Logger = undefined;
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); /**
* Copyright (c) 2017-present, Facebook, Inc.
* All rights reserved.
*
* This source code is licensed under the BSD-style license found in the
* LICENSE file in the root directory of this source tree. An additional grant
* of patent rights can be found in the PATENTS file in the same directory.
*/
var _realm = require("../realm.js");
var _errors = require("../errors.js");
var _index = require("../methods/index.js");
var _completions = require("../completions.js");
var _index2 = require("../values/index.js");
var _singletons = require("../singletons.js");
var _invariant = require("../invariant.js");
var _invariant2 = _interopRequireDefault(_invariant);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
var Logger = exports.Logger = function () {
function Logger(realm, internalDebug) {
_classCallCheck(this, Logger);
this.realm = realm;
this._hasErrors = false;
this.internalDebug = internalDebug;
}
_createClass(Logger, [{
key: "tryQuery",
// Wraps a query that might potentially execute user code.
value: function tryQuery(f, defaultValue, logFailures) {
var _this = this;
var realm = this.realm;
var context = new _realm.ExecutionContext();
context.isStrict = realm.isStrict;
var env = realm.$GlobalEnv;
context.lexicalEnvironment = env;
context.variableEnvironment = env;
context.realm = realm;
realm.pushContext(context);
// We use partial evaluation so that we can throw away any state mutations
var oldErrorHandler = realm.errorHandler;
var _newErrorHandler = void 0;
realm.errorHandler = _newErrorHandler = function newErrorHandler(d) {
if (d.severity === "Information" || d.severity === "Warning") return "Recover";
if (logFailures) {
realm.errorHandler = oldErrorHandler;
realm.handleError(d);
realm.errorHandler = _newErrorHandler;
}
return "Fail";
};
try {
var result = void 0;
var effects = realm.evaluateForEffects(function () {
try {
result = f();
} catch (e) {
if (e instanceof _completions.Completion) {
if (logFailures) _this.logCompletion(e);
result = defaultValue;
} else if (e instanceof _errors.FatalError) {
result = defaultValue;
} else {
throw e;
}
}
return realm.intrinsics.undefined;
});
(0, _invariant2.default)(effects[0] === realm.intrinsics.undefined);
return result;
} finally {
realm.errorHandler = oldErrorHandler;
realm.popContext(context);
}
}
}, {
key: "logCompletion",
value: function logCompletion(res) {
var realm = this.realm;
var value = res.value;
if (this.internalDebug) console.error("=== " + res.constructor.name + " ===");
if (this.tryQuery(function () {
return value instanceof _index2.ObjectValue && (0, _index.InstanceofOperator)(realm, value, realm.intrinsics.Error);
}, false, false)) {
var object = value;
try {
var err = new _errors.FatalError(this.tryQuery(function () {
return _singletons.To.ToStringPartial(realm, (0, _index.Get)(realm, object, "message"));
}, "(unknown message)", false));
err.stack = this.tryQuery(function () {
return _singletons.To.ToStringPartial(realm, (0, _index.Get)(realm, object, "stack"));
}, "(unknown stack)", false);
console.error(err.message);
console.error(err.stack);
if (this.internalDebug && res instanceof _completions.ThrowCompletion) console.error(res.nativeStack);
} catch (err) {
var message = object.properties.get("message");
console.error(message && message.descriptor && message.descriptor.value instanceof _index2.StringValue ? message.descriptor.value.value : "(no message available)");
console.error(err.stack);
if (object.$ErrorData) {
console.error(object.$ErrorData.contextStack);
}
}
} else {
try {
value = _singletons.To.ToStringPartial(realm, value);
} catch (err) {
value = err.message;
}
console.error(value);
if (this.internalDebug && res instanceof _completions.ThrowCompletion) console.error(res.nativeStack);
}
this._hasErrors = true;
}
}, {
key: "logError",
value: function logError(value, message) {
var loc = value.expressionLocation;
if (loc) {
var locString = loc.start.line + ":" + (loc.start.column + 1);
if (loc.source) locString = loc.source + ":" + locString;
message = message + "\nat: " + locString;
} else if (value.intrinsicName) {
message = message + "\nintrinsic name: " + value.intrinsicName;
}
console.error(message);
this._hasErrors = true;
}
}, {
key: "hasErrors",
value: function hasErrors() {
return this._hasErrors;
}
}]);
return Logger;
}();
//# sourceMappingURL=logger.js.map