refactor: Store generated AIR string in exorted constant (#689)

This commit is contained in:
Dima 2023-03-28 14:44:26 +03:00 committed by GitHub
parent c343c5c5ac
commit e35944e3c8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -30,18 +30,21 @@ case class OutputFunc(func: FuncRes, types: Types) {
val script = tsAir.show.linesIterator.map(codeLeftSpace + _).mkString("\n") val script = tsAir.show.linesIterator.map(codeLeftSpace + _).mkString("\n")
val funcDef = FunctionDef(func) val funcDef = FunctionDef(func)
val scriptConstName = func.funcName + "_script"
( (
AirFunction(func.funcName, script, funcDef), AirFunction(func.funcName, script, funcDef),
s"""${funcTypes.generate} s"""export const $scriptConstName = `
|export function ${func.funcName}(${typed("...args", "any")}) {
|
| let script = `
|$script |$script
| ` | `
|${funcTypes.generate}
|export function ${func.funcName}(${typed("...args", "any")}) {
|
| return callFunction$$$$( | return callFunction$$$$(
| args, | args,
| ${funcDef.asJson.deepDropNullValues.spaces4}, | ${funcDef.asJson.deepDropNullValues.spaces4},
| script | $scriptConstName
| ) | )
|}""".stripMargin |}""".stripMargin
) )