[FIR2IR] Support type aliases properly

This commit is contained in:
Mikhail Glukhikh
2020-06-08 11:27:57 +03:00
parent 6485869659
commit 6eab6a96cb
17 changed files with 66 additions and 3 deletions
@@ -722,6 +722,14 @@ open class SymbolTable(
fun declareTypeAlias(descriptor: TypeAliasDescriptor, factory: (IrTypeAliasSymbol) -> IrTypeAlias): IrTypeAlias =
typeAliasSymbolTable.declare(descriptor, { createTypeAliasSymbol(descriptor) }, factory)
fun declareTypeAlias(
sig: IdSignature,
symbolFactory: () -> IrTypeAliasSymbol,
factory: (IrTypeAliasSymbol) -> IrTypeAlias
): IrTypeAlias {
return typeAliasSymbolTable.declare(sig, symbolFactory, factory)
}
fun declareTypeAliasIfNotExists(descriptor: TypeAliasDescriptor, factory: (IrTypeAliasSymbol) -> IrTypeAlias): IrTypeAlias =
typeAliasSymbolTable.declareIfNotExists(descriptor, { createTypeAliasSymbol(descriptor) }, factory)