UNPKG

calcium-lang

Version:
26 lines 731 B
import { createFuncObj } from "../factory"; /** * `def` statement (function definition) */ export default class Def { /** * * @param funcName the name of the function * @param paramsName positional parameters' name */ constructor(funcName, paramsName) { this.funcName = funcName; this.paramsName = paramsName; } execute(env) { const definedAddress = env.address.clone(); const funcObj = createFuncObj({ address: definedAddress, name: this.funcName, params: this.paramsName, parent: env.context.nestingScope, }); env.context.register(this.funcName, funcObj); } } //# sourceMappingURL=def.js.map