first commit
This commit is contained in:
89
build/node_modules/prepack/lib/repl-cli.js
generated
vendored
Normal file
89
build/node_modules/prepack/lib/repl-cli.js
generated
vendored
Normal file
@@ -0,0 +1,89 @@
|
||||
"use strict";
|
||||
|
||||
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 _construct_realm = require("./construct_realm.js");
|
||||
|
||||
var _construct_realm2 = _interopRequireDefault(_construct_realm);
|
||||
|
||||
var _globals = require("./globals.js");
|
||||
|
||||
var _globals2 = _interopRequireDefault(_globals);
|
||||
|
||||
var _repl = require("repl");
|
||||
|
||||
var _repl2 = _interopRequireDefault(_repl);
|
||||
|
||||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
||||
|
||||
/**
|
||||
* 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.
|
||||
*/
|
||||
|
||||
function serialize(realm, res) {
|
||||
if (res && res instanceof _index2.Value) {
|
||||
return res.serialize();
|
||||
}
|
||||
|
||||
if (res && res instanceof _completions.ThrowCompletion) {
|
||||
var context = new _realm.ExecutionContext();
|
||||
realm.pushContext(context);
|
||||
var err = void 0;
|
||||
try {
|
||||
var value = res.value;
|
||||
if (value instanceof _index2.ObjectValue && (0, _index.InstanceofOperator)(realm, value, realm.intrinsics.Error)) {
|
||||
err = new _errors.FatalError(_singletons.To.ToStringPartial(realm, (0, _index.Get)(realm, value, "message")));
|
||||
err.stack = _singletons.To.ToStringPartial(realm, (0, _index.Get)(realm, value, "stack"));
|
||||
} else {
|
||||
err = new _errors.FatalError(_singletons.To.ToStringPartial(realm, value));
|
||||
}
|
||||
} finally {
|
||||
realm.popContext(context);
|
||||
}
|
||||
return err;
|
||||
}
|
||||
|
||||
return res;
|
||||
}
|
||||
|
||||
var realm = (0, _construct_realm2.default)({
|
||||
reactEnabled: true,
|
||||
reactOutput: "jsx"
|
||||
});
|
||||
(0, _globals2.default)(realm);
|
||||
|
||||
_repl2.default.start({
|
||||
prompt: "> ",
|
||||
input: process.stdin,
|
||||
output: process.stdout,
|
||||
eval: function _eval(code, context, filename, callback) {
|
||||
try {
|
||||
var res = realm.$GlobalEnv.execute(code, "repl");
|
||||
res = serialize(realm, res);
|
||||
if (res instanceof Error) {
|
||||
callback(res);
|
||||
} else {
|
||||
callback(null, res);
|
||||
}
|
||||
} catch (err) {
|
||||
console.error(err);
|
||||
callback(err);
|
||||
}
|
||||
}
|
||||
});
|
||||
//# sourceMappingURL=repl-cli.js.map
|
||||
Reference in New Issue
Block a user