[FIR2IR] Add signature to all symbols

This commit is contained in:
Mikhail Glukhikh
2020-05-26 15:32:18 +03:00
parent d4cb6b68c4
commit c7041c0f1a
2 changed files with 20 additions and 21 deletions
@@ -15,6 +15,7 @@ import org.jetbrains.kotlin.ir.util.IdSignature
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedContainerSource
abstract class Fir2IrBindableSymbol<out D : DeclarationDescriptor, B : IrSymbolOwner>(
override val signature: IdSignature,
private val containerSource: DeserializedContainerSource? = null
) : IrBindableSymbol<D, B> {
@@ -32,9 +33,6 @@ abstract class Fir2IrBindableSymbol<out D : DeclarationDescriptor, B : IrSymbolO
override val isPublicApi: Boolean = false
override val signature: IdSignature
get() = error("IdSignature is allowed only for PublicApi symbols")
override val isBound: Boolean
get() = _owner != null
@@ -8,40 +8,41 @@ package org.jetbrains.kotlin.fir.symbols
import org.jetbrains.kotlin.descriptors.*
import org.jetbrains.kotlin.ir.declarations.*
import org.jetbrains.kotlin.ir.symbols.*
import org.jetbrains.kotlin.ir.util.IdSignature
class Fir2IrClassSymbol :
Fir2IrBindableSymbol<ClassDescriptor, IrClass>(),
class Fir2IrClassSymbol(signature: IdSignature) :
Fir2IrBindableSymbol<ClassDescriptor, IrClass>(signature),
IrClassSymbol
class Fir2IrEnumEntrySymbol :
Fir2IrBindableSymbol<ClassDescriptor, IrEnumEntry>(),
class Fir2IrEnumEntrySymbol(signature: IdSignature) :
Fir2IrBindableSymbol<ClassDescriptor, IrEnumEntry>(signature),
IrEnumEntrySymbol
class Fir2IrFieldSymbol :
Fir2IrBindableSymbol<PropertyDescriptor, IrField>(),
class Fir2IrFieldSymbol(signature: IdSignature) :
Fir2IrBindableSymbol<PropertyDescriptor, IrField>(signature),
IrFieldSymbol
class Fir2IrTypeParameterSymbol :
Fir2IrBindableSymbol<TypeParameterDescriptor, IrTypeParameter>(),
class Fir2IrTypeParameterSymbol(signature: IdSignature) :
Fir2IrBindableSymbol<TypeParameterDescriptor, IrTypeParameter>(signature),
IrTypeParameterSymbol
class Fir2IrValueParameterSymbol :
Fir2IrBindableSymbol<ParameterDescriptor, IrValueParameter>(),
class Fir2IrValueParameterSymbol(signature: IdSignature) :
Fir2IrBindableSymbol<ParameterDescriptor, IrValueParameter>(signature),
IrValueParameterSymbol
class Fir2IrVariableSymbol :
Fir2IrBindableSymbol<VariableDescriptor, IrVariable>(),
class Fir2IrVariableSymbol(signature: IdSignature) :
Fir2IrBindableSymbol<VariableDescriptor, IrVariable>(signature),
IrVariableSymbol
class Fir2IrSimpleFunctionSymbol :
Fir2IrBindableSymbol<FunctionDescriptor, IrSimpleFunction>(),
class Fir2IrSimpleFunctionSymbol(signature: IdSignature) :
Fir2IrBindableSymbol<FunctionDescriptor, IrSimpleFunction>(signature),
IrSimpleFunctionSymbol
class Fir2IrConstructorSymbol :
Fir2IrBindableSymbol<ClassConstructorDescriptor, IrConstructor>(),
class Fir2IrConstructorSymbol(signature: IdSignature) :
Fir2IrBindableSymbol<ClassConstructorDescriptor, IrConstructor>(signature),
IrConstructorSymbol
class Fir2IrPropertySymbol :
Fir2IrBindableSymbol<PropertyDescriptor, IrProperty>(),
class Fir2IrPropertySymbol(signature: IdSignature) :
Fir2IrBindableSymbol<PropertyDescriptor, IrProperty>(signature),
IrPropertySymbol