[Ir common] Introduce symbol table api to remove entries
^KT-61514
This commit is contained in:
committed by
Space Team
parent
0d19942d2c
commit
44c2a749c9
@@ -297,6 +297,11 @@ open class SymbolTable(
|
||||
}
|
||||
}
|
||||
|
||||
@DelicateSymbolTableApi
|
||||
fun removeProperty(symbol: IrPropertySymbol) {
|
||||
symbol.signature?.let { propertySlice.remove(it) }
|
||||
}
|
||||
|
||||
// ------------------------------------ typealias ------------------------------------
|
||||
|
||||
fun declareTypeAlias(
|
||||
@@ -374,6 +379,11 @@ open class SymbolTable(
|
||||
)
|
||||
}
|
||||
|
||||
@DelicateSymbolTableApi
|
||||
fun removeSimpleFunction(function: IrSimpleFunctionSymbol) {
|
||||
function.signature?.let { functionSlice.remove(it) }
|
||||
}
|
||||
|
||||
@SymbolTableInternals
|
||||
internal inline fun referenceSimpleFunctionImpl(
|
||||
signature: IdSignature,
|
||||
|
||||
@@ -105,6 +105,11 @@ abstract class SymbolTableSlice<Key, SymbolOwner, Symbol>(val lock: IrLock)
|
||||
}
|
||||
}
|
||||
|
||||
@DelicateSymbolTableApi
|
||||
fun remove(key: Key) {
|
||||
signatureToSymbol.remove(key)
|
||||
}
|
||||
|
||||
@SymbolTableInternals
|
||||
internal fun forEachSymbol(block: (IrSymbol) -> Unit) {
|
||||
signatureToSymbol.forEach { (_, symbol) -> block(symbol) }
|
||||
|
||||
Reference in New Issue
Block a user