[FIR] Extract SyntheticFunctionsCache from builtins provider into separate one

This is needed because now set of available synthetic functional interfaces
  depends on session, because each module can contain different plugins,
  which provide different kinds of functional types
This commit is contained in:
Dmitriy Novozhilov
2023-01-18 16:48:25 +02:00
committed by Space Team
parent e0c8f2354a
commit 87a9103cc6
12 changed files with 316 additions and 186 deletions
@@ -130,3 +130,12 @@ abstract class ConeFunctionalTypeKind internal constructor(
override fun nonReflectKind(): ConeFunctionalTypeKind = SuspendFunction
}
}
val ConeFunctionalTypeKind.isBuiltin: Boolean
get() = when (this) {
ConeFunctionalTypeKind.Function,
ConeFunctionalTypeKind.KFunction,
ConeFunctionalTypeKind.SuspendFunction,
ConeFunctionalTypeKind.KSuspendFunction -> true
else -> false
}