diff options
author | Ryan Dahl <ry@tinyclouds.org> | 2020-07-20 19:49:57 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-07-20 19:49:57 -0400 |
commit | 2460689b1a9582ef6ab8c5fa429e281c88bc14d1 (patch) | |
tree | c6e8f7b8fda45004c0321eb2ac88a5bfb5905483 /deno_typescript/system_loader.js | |
parent | 903d28f872b90a800c64339dea058806cde0be67 (diff) |
Remove deno_typescript (#6813)
Diffstat (limited to 'deno_typescript/system_loader.js')
-rw-r--r-- | deno_typescript/system_loader.js | 99 |
1 files changed, 0 insertions, 99 deletions
diff --git a/deno_typescript/system_loader.js b/deno_typescript/system_loader.js deleted file mode 100644 index c96b2c7f6..000000000 --- a/deno_typescript/system_loader.js +++ /dev/null @@ -1,99 +0,0 @@ -// Copyright 2018-2020 the Deno authors. All rights reserved. MIT license. - -// This is a specialised implementation of a System module loader. - -"use strict"; - -// @ts-nocheck -/* eslint-disable */ -let System, __instantiate; -(() => { - const r = new Map(); - - System = { - register(id, d, f) { - r.set(id, { d, f, exp: {} }); - }, - }; - async function dI(mid, src) { - let id = mid.replace(/\.\w+$/i, ""); - if (id.includes("./")) { - const [o, ...ia] = id.split("/").reverse(), - [, ...sa] = src.split("/").reverse(), - oa = [o]; - let s = 0, - i; - while ((i = ia.shift())) { - if (i === "..") s++; - else if (i === ".") break; - else oa.push(i); - } - if (s < sa.length) oa.push(...sa.slice(s)); - id = oa.reverse().join("/"); - } - return r.has(id) ? gExpA(id) : import(mid); - } - - function gC(id, main) { - return { - id, - import: (m) => dI(m, id), - meta: { url: id, main }, - }; - } - - function gE(exp) { - return (id, v) => { - v = typeof id === "string" ? { [id]: v } : id; - for (const [id, value] of Object.entries(v)) { - Object.defineProperty(exp, id, { - value, - writable: true, - enumerable: true, - }); - } - }; - } - - function rF(main) { - for (const [id, m] of r.entries()) { - const { f, exp } = m; - const { execute: e, setters: s } = f(gE(exp), gC(id, id === main)); - delete m.f; - m.e = e; - m.s = s; - } - } - - async function gExpA(id) { - if (!r.has(id)) return; - const m = r.get(id); - if (m.s) { - const { d, e, s } = m; - delete m.s; - delete m.e; - for (let i = 0; i < s.length; i++) s[i](await gExpA(d[i])); - const r = e(); - if (r) await r; - } - return m.exp; - } - - function gExp(id) { - if (!r.has(id)) return; - const m = r.get(id); - if (m.s) { - const { d, e, s } = m; - delete m.s; - delete m.e; - for (let i = 0; i < s.length; i++) s[i](gExp(d[i])); - e(); - } - return m.exp; - } - __instantiate = (m, a) => { - System = __instantiate = undefined; - rF(m); - return a ? gExpA(m) : gExp(m); - }; -})(); |