K2 Scripting: add support for script args to FIR part

This commit is contained in:
Ilya Chernikov
2022-11-22 17:30:59 +01:00
committed by Space Team
parent 533a5671bc
commit a89dfdce03
16 changed files with 78 additions and 20 deletions
@@ -30,7 +30,7 @@ abstract class IrScript : IrDeclarationBase(), IrDeclarationWithName, IrDeclarat
abstract var baseClass: IrType?
abstract var explicitCallParameters: List<IrValueParameter>
abstract var explicitCallParameters: List<IrVariable>
abstract var implicitReceiversParameters: List<IrValueParameter>
@@ -47,7 +47,7 @@ class IrScriptImpl(
override var thisReceiver: IrValueParameter? = null
override var baseClass: IrType? = null
override lateinit var explicitCallParameters: List<IrValueParameter>
override lateinit var explicitCallParameters: List<IrVariable>
override lateinit var implicitReceiversParameters: List<IrValueParameter>
override lateinit var providedProperties: List<IrPropertySymbol>
override lateinit var providedPropertiesParameters: List<IrValueParameter>
@@ -400,7 +400,7 @@ object IrTree : AbstractTreeBuilder() {
// TODO: consider removing from here and handle appropriately in the lowering
+field("thisReceiver", valueParameter, mutable = true, isChild = true, nullable = true) // K1
+field("baseClass", irTypeType, mutable = true, nullable = true) // K1
+listField("explicitCallParameters", valueParameter, mutability = Var, isChild = true)
+listField("explicitCallParameters", variable, mutability = Var, isChild = true)
+listField("implicitReceiversParameters", valueParameter, mutability = Var, isChild = true)
+listField("providedProperties", propertySymbolType, mutability = Var)
+listField("providedPropertiesParameters", valueParameter, mutability = Var, isChild = true)