rename eval.ts to function.ts

This commit is contained in:
Avad3 2024-07-28 21:48:49 -04:00
parent ab7d18f104
commit ecbdb4177c
2 changed files with 22 additions and 45 deletions

View file

@ -0,0 +1,22 @@
import { ScramjetClient, ProxyCtx } from "../client";
import { rewriteJs } from "../shared";
function rewriteFunction(ctx: ProxyCtx) {
const stringifiedFunction = ctx.fn(...ctx.args).toString();
ctx.return(ctx.fn(`return ${rewriteJs(stringifiedFunction)}`)());
}
export default function (client: ScramjetClient, self: Self) {
client.Proxy("Function", {
apply(ctx) {
rewriteFunction(ctx);
},
construct(ctx) {
rewriteFunction(ctx);
},
});
Function.prototype.constructor = Function;
}