summaryrefslogtreecommitdiff
path: root/ext/node/polyfills/vm.ts
diff options
context:
space:
mode:
Diffstat (limited to 'ext/node/polyfills/vm.ts')
-rw-r--r--ext/node/polyfills/vm.ts83
1 files changed, 83 insertions, 0 deletions
diff --git a/ext/node/polyfills/vm.ts b/ext/node/polyfills/vm.ts
new file mode 100644
index 000000000..0d5de72c6
--- /dev/null
+++ b/ext/node/polyfills/vm.ts
@@ -0,0 +1,83 @@
+// Copyright 2018-2023 the Deno authors. All rights reserved. MIT license.
+
+// deno-lint-ignore-file no-explicit-any
+
+import { notImplemented } from "internal:deno_node/polyfills/_utils.ts";
+
+export class Script {
+ code: string;
+ constructor(code: string, _options = {}) {
+ this.code = `${code}`;
+ }
+
+ runInThisContext(_options: any) {
+ return eval.call(globalThis, this.code);
+ }
+
+ runInContext(_contextifiedObject: any, _options: any) {
+ notImplemented("Script.prototype.runInContext");
+ }
+
+ runInNewContext(_contextObject: any, _options: any) {
+ notImplemented("Script.prototype.runInNewContext");
+ }
+
+ createCachedData() {
+ notImplemented("Script.prototyp.createCachedData");
+ }
+}
+
+export function createContext(_contextObject: any, _options: any) {
+ notImplemented("createContext");
+}
+
+export function createScript(code: string, options: any) {
+ return new Script(code, options);
+}
+
+export function runInContext(
+ _code: string,
+ _contextifiedObject: any,
+ _options: any,
+) {
+ notImplemented("runInContext");
+}
+
+export function runInNewContext(
+ _code: string,
+ _contextObject: any,
+ _options: any,
+) {
+ notImplemented("runInNewContext");
+}
+
+export function runInThisContext(
+ code: string,
+ options: any,
+) {
+ return createScript(code, options).runInThisContext(options);
+}
+
+export function isContext(_maybeContext: any) {
+ notImplemented("isContext");
+}
+
+export function compileFunction(_code: string, _params: any, _options: any) {
+ notImplemented("compileFunction");
+}
+
+export function measureMemory(_options: any) {
+ notImplemented("measureMemory");
+}
+
+export default {
+ Script,
+ createContext,
+ createScript,
+ runInContext,
+ runInNewContext,
+ runInThisContext,
+ isContext,
+ compileFunction,
+ measureMemory,
+};