This commit is contained in:
Asaki Yuki 2026-01-17 02:03:47 +07:00
parent 4d5f81f7e5
commit df7c642077
10 changed files with 440 additions and 157 deletions

View file

@ -0,0 +1,33 @@
import { RandomBindingString } from "../../components/Utils.js"
import { Expression, GenBinding } from "./types.js"
export const FuntionMap = new Map<
string,
(...args: Expression[]) => {
genBindings?: GenBinding[]
value: Expression
}
>()
// Default Functions
FuntionMap.set("abs", number => {
const randomBinding = RandomBindingString(16)
return {
genBindings: [{ source: `((-1 + (${number} > 0) * 2) * ${number})`, target: randomBinding }],
value: randomBinding,
}
})
FuntionMap.set("new", expression => {
const randomBinding = RandomBindingString(16)
return {
genBindings: [{ source: expression, target: randomBinding }],
value: randomBinding,
}
})
FuntionMap.set("max", (...args) => {
return {
value: "#a",
}
})