summaryrefslogtreecommitdiff
path: root/core/01_core.js
diff options
context:
space:
mode:
Diffstat (limited to 'core/01_core.js')
-rw-r--r--core/01_core.js50
1 files changed, 38 insertions, 12 deletions
diff --git a/core/01_core.js b/core/01_core.js
index 5a622b0ea..07ab758f1 100644
--- a/core/01_core.js
+++ b/core/01_core.js
@@ -3,33 +3,57 @@
((window) => {
const {
- Error,
- RangeError,
- ReferenceError,
- SyntaxError,
- TypeError,
- URIError,
Array,
ArrayPrototypeFill,
- ArrayPrototypePush,
ArrayPrototypeMap,
+ ArrayPrototypePush,
+ Error,
ErrorCaptureStackTrace,
- Promise,
- ObjectAssign,
- ObjectFromEntries,
Map,
+ MapPrototypeDelete,
MapPrototypeGet,
MapPrototypeHas,
- MapPrototypeDelete,
MapPrototypeSet,
+ ObjectAssign,
+ ObjectFreeze,
+ ObjectFromEntries,
+ Promise,
PromisePrototypeThen,
+ RangeError,
+ ReferenceError,
SafePromisePrototypeFinally,
+ setQueueMicrotask,
StringPrototypeSlice,
+ StringPrototypeSplit,
SymbolFor,
- setQueueMicrotask,
+ SyntaxError,
+ TypeError,
+ URIError,
} = window.__bootstrap.primordials;
const { ops } = window.Deno.core;
+ const build = {
+ target: "unknown",
+ arch: "unknown",
+ os: "unknown",
+ vendor: "unknown",
+ env: undefined,
+ };
+
+ function setBuildInfo(target) {
+ const { 0: arch, 1: vendor, 2: os, 3: env } = StringPrototypeSplit(
+ target,
+ "-",
+ 4,
+ );
+ build.target = target;
+ build.arch = arch;
+ build.vendor = vendor;
+ build.os = os;
+ build.env = env;
+ ObjectFreeze(build);
+ }
+
const errorMap = {};
// Builtin v8 / JS errors
registerErrorClass("Error", Error);
@@ -408,6 +432,8 @@
eventLoopHasMoreWork: () => ops.op_event_loop_has_more_work(),
setPromiseRejectCallback: (fn) => ops.op_set_promise_reject_callback(fn),
byteLength: (str) => ops.op_str_byte_length(str),
+ build,
+ setBuildInfo,
});
ObjectAssign(globalThis.__bootstrap, { core });