FIR: unify common special names scattered around the code base
This commit is contained in:
committed by
teamcityserver
parent
263b876e6e
commit
684ef871ee
+2
-5
@@ -46,10 +46,7 @@ import org.jetbrains.kotlin.metadata.deserialization.isKotlin1Dot4OrLater
|
||||
import org.jetbrains.kotlin.metadata.serialization.Interner
|
||||
import org.jetbrains.kotlin.metadata.serialization.MutableTypeTable
|
||||
import org.jetbrains.kotlin.metadata.serialization.MutableVersionRequirementTable
|
||||
import org.jetbrains.kotlin.name.ClassId
|
||||
import org.jetbrains.kotlin.name.FqName
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.name.StandardClassIds
|
||||
import org.jetbrains.kotlin.name.*
|
||||
import org.jetbrains.kotlin.resolve.RequireKotlinConstants
|
||||
import org.jetbrains.kotlin.serialization.deserialization.ProtoEnumFlags
|
||||
import org.jetbrains.kotlin.types.AbstractTypeApproximator
|
||||
@@ -384,7 +381,7 @@ class FirElementSerializer private constructor(
|
||||
function.name
|
||||
}
|
||||
is FirAnonymousFunction -> {
|
||||
if (function.isLambda) Name.special("<anonymous>") else Name.special("<no name provided>")
|
||||
if (function.isLambda) SpecialNames.ANONYMOUS else Name.special("<no name provided>")
|
||||
}
|
||||
else -> throw AssertionError("Unsupported function: ${function.render()}")
|
||||
}
|
||||
|
||||
+2
-1
@@ -24,6 +24,7 @@ import org.jetbrains.kotlin.fir.symbols.impl.FirTypeParameterSymbol
|
||||
import org.jetbrains.kotlin.fir.types.*
|
||||
import org.jetbrains.kotlin.fir.visitors.FirVisitor
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.name.SpecialNames
|
||||
import org.jetbrains.kotlin.util.capitalizeDecapitalize.toLowerCaseAsciiOnly
|
||||
import org.jetbrains.kotlin.utils.addToStdlib.ifNotEmpty
|
||||
|
||||
@@ -127,7 +128,7 @@ open class FirJvmMangleComputer(
|
||||
return
|
||||
}
|
||||
|
||||
val name = (this as? FirSimpleFunction)?.name ?: Name.special("<anonymous>")
|
||||
val name = (this as? FirSimpleFunction)?.name ?: SpecialNames.ANONYMOUS
|
||||
builder.append(name.asString())
|
||||
|
||||
platformSpecificSuffix()?.let {
|
||||
|
||||
@@ -52,7 +52,7 @@ import org.jetbrains.kotlin.ir.types.*
|
||||
import org.jetbrains.kotlin.ir.types.impl.IrErrorTypeImpl
|
||||
import org.jetbrains.kotlin.ir.util.SymbolTable
|
||||
import org.jetbrains.kotlin.ir.util.functions
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.name.SpecialNames
|
||||
import org.jetbrains.kotlin.psi.KtQualifiedExpression
|
||||
import org.jetbrains.kotlin.psi.psiUtil.endOffset
|
||||
import org.jetbrains.kotlin.psi.psiUtil.startOffsetSkippingComments
|
||||
@@ -476,7 +476,7 @@ internal fun IrDeclarationParent.declareThisReceiverParameter(
|
||||
): IrValueParameter =
|
||||
symbolTable.irFactory.createValueParameter(
|
||||
startOffset, endOffset, thisOrigin, IrValueParameterSymbolImpl(),
|
||||
Name.special("<this>"), UNDEFINED_PARAMETER_INDEX, thisType,
|
||||
SpecialNames.THIS, UNDEFINED_PARAMETER_INDEX, thisType,
|
||||
varargElementType = null, isCrossinline = false, isNoinline = false,
|
||||
isHidden = false, isAssignable = false
|
||||
).apply {
|
||||
|
||||
+8
-4
@@ -7,7 +7,10 @@ package org.jetbrains.kotlin.fir.backend
|
||||
|
||||
import org.jetbrains.kotlin.KtNodeTypes
|
||||
import org.jetbrains.kotlin.builtins.StandardNames.BUILT_INS_PACKAGE_FQ_NAMES
|
||||
import org.jetbrains.kotlin.descriptors.*
|
||||
import org.jetbrains.kotlin.descriptors.DescriptorVisibility
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.descriptors.Visibilities
|
||||
import org.jetbrains.kotlin.descriptors.Visibility
|
||||
import org.jetbrains.kotlin.fir.*
|
||||
import org.jetbrains.kotlin.fir.declarations.*
|
||||
import org.jetbrains.kotlin.fir.declarations.builder.buildProperty
|
||||
@@ -50,6 +53,7 @@ import org.jetbrains.kotlin.ir.types.IrType
|
||||
import org.jetbrains.kotlin.ir.util.*
|
||||
import org.jetbrains.kotlin.name.FqName
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.name.SpecialNames
|
||||
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedContainerSource
|
||||
import org.jetbrains.kotlin.utils.KotlinExceptionWithAttachments
|
||||
import org.jetbrains.kotlin.utils.threadLocal
|
||||
@@ -456,7 +460,7 @@ class Fir2IrDeclarationStorage(
|
||||
}
|
||||
classifierStorage.preCacheTypeParameters(function)
|
||||
val name = simpleFunction?.name
|
||||
?: if (isLambda) Name.special("<anonymous>") else Name.special("<no name provided>")
|
||||
?: if (isLambda) SpecialNames.ANONYMOUS else Name.special("<no name provided>")
|
||||
val visibility = simpleFunction?.visibility ?: Visibilities.Local
|
||||
val isSuspend =
|
||||
if (isLambda) ((function as FirAnonymousFunction).typeRef as? FirResolvedTypeRef)?.type?.isSuspendFunctionType(session) == true
|
||||
@@ -553,7 +557,7 @@ class Fir2IrDeclarationStorage(
|
||||
declareIrConstructor(signature) { symbol ->
|
||||
irFactory.createConstructor(
|
||||
startOffset, endOffset, origin, symbol,
|
||||
Name.special("<init>"), components.visibilityConverter.convertToDescriptorVisibility(constructor.visibility),
|
||||
SpecialNames.INIT, components.visibilityConverter.convertToDescriptorVisibility(constructor.visibility),
|
||||
constructor.returnTypeRef.toIrType(),
|
||||
isInline = false, isExternal = false, isPrimary = isPrimary, isExpect = constructor.isExpect
|
||||
).apply {
|
||||
@@ -977,7 +981,7 @@ class Fir2IrDeclarationStorage(
|
||||
// Some temporary variables are produced in RawFirBuilder, but we consistently use special names for them.
|
||||
val origin = when {
|
||||
givenOrigin != null -> givenOrigin
|
||||
variable.name == Name.special("<iterator>") -> IrDeclarationOrigin.FOR_LOOP_ITERATOR
|
||||
variable.name == SpecialNames.ITERATOR -> IrDeclarationOrigin.FOR_LOOP_ITERATOR
|
||||
variable.name.isSpecial -> IrDeclarationOrigin.IR_TEMPORARY_VARIABLE
|
||||
else -> IrDeclarationOrigin.DEFINED
|
||||
}
|
||||
|
||||
@@ -10,6 +10,7 @@ import org.jetbrains.kotlin.fir.declarations.*
|
||||
import org.jetbrains.kotlin.fir.declarations.utils.isConst
|
||||
import org.jetbrains.kotlin.ir.declarations.MetadataSource
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.name.SpecialNames
|
||||
|
||||
sealed class FirMetadataSource : MetadataSource {
|
||||
abstract val fir: FirDeclaration
|
||||
@@ -19,7 +20,7 @@ sealed class FirMetadataSource : MetadataSource {
|
||||
|
||||
override val name: Name?
|
||||
get() = when (val fir = fir) {
|
||||
is FirConstructor -> Name.special("<init>")
|
||||
is FirConstructor -> SpecialNames.INIT
|
||||
is FirSimpleFunction -> fir.name
|
||||
is FirRegularClass -> fir.name
|
||||
is FirProperty -> fir.name
|
||||
|
||||
@@ -41,6 +41,7 @@ import org.jetbrains.kotlin.ir.util.*
|
||||
import org.jetbrains.kotlin.name.ClassId
|
||||
import org.jetbrains.kotlin.name.FqName
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.name.SpecialNames
|
||||
import org.jetbrains.kotlin.types.Variance
|
||||
import org.jetbrains.kotlin.util.OperatorNameConventions
|
||||
import kotlin.reflect.KProperty
|
||||
@@ -744,7 +745,7 @@ class IrBuiltInsOverFir(
|
||||
visibility: DescriptorVisibility = DescriptorVisibilities.PUBLIC,
|
||||
build: IrConstructor.() -> Unit = {}
|
||||
): IrConstructorSymbol {
|
||||
val name = Name.special("<init>")
|
||||
val name = SpecialNames.INIT
|
||||
val signature =
|
||||
IdSignature.CommonSignature(this.packageFqName!!.asString(), classId!!.relativeClassName.child(name).asString(), null, 0)
|
||||
val ctor = irFactory.createConstructor(
|
||||
|
||||
@@ -26,6 +26,7 @@ import org.jetbrains.kotlin.fir.declarations.utils.isExpect
|
||||
import org.jetbrains.kotlin.fir.declarations.utils.isExternal
|
||||
import org.jetbrains.kotlin.fir.declarations.utils.isInline
|
||||
import org.jetbrains.kotlin.fir.declarations.utils.visibility
|
||||
import org.jetbrains.kotlin.name.SpecialNames
|
||||
|
||||
class Fir2IrLazyConstructor(
|
||||
components: Fir2IrComponents,
|
||||
@@ -63,7 +64,7 @@ class Fir2IrLazyConstructor(
|
||||
override var body: IrBody? = null
|
||||
|
||||
override val name: Name
|
||||
get() = Name.special("<init>")
|
||||
get() = SpecialNames.INIT
|
||||
|
||||
@Suppress("SetterBackingFieldAssignment")
|
||||
override var visibility: DescriptorVisibility = components.visibilityConverter.convertToDescriptorVisibility(fir.visibility)
|
||||
|
||||
+2
-2
@@ -572,7 +572,7 @@ class DeclarationsConverter(
|
||||
* @see org.jetbrains.kotlin.fir.builder.RawFirBuilder.Visitor.visitObjectLiteralExpression
|
||||
*/
|
||||
fun convertObjectLiteral(objectLiteral: LighterASTNode): FirElement {
|
||||
return withChildClassName(ANONYMOUS_OBJECT_NAME, isExpect = false) {
|
||||
return withChildClassName(SpecialNames.ANONYMOUS, isExpect = false) {
|
||||
buildAnonymousObjectExpression {
|
||||
val objectDeclaration = objectLiteral.getChildNodesByType(OBJECT_DECLARATION).first()
|
||||
val sourceElement = objectDeclaration.toFirSourceElement()
|
||||
@@ -729,7 +729,7 @@ class DeclarationsConverter(
|
||||
)?.let { declarations += it.firConstructor }
|
||||
classBodyNode?.also {
|
||||
// Use ANONYMOUS_OBJECT_NAME for the owner class id of enum entry declarations
|
||||
withChildClassName(ANONYMOUS_OBJECT_NAME, forceLocalContext = true, isExpect = false) {
|
||||
withChildClassName(SpecialNames.ANONYMOUS, forceLocalContext = true, isExpect = false) {
|
||||
declarations += convertClassBody(it, enumClassWrapper)
|
||||
}
|
||||
}
|
||||
|
||||
+4
-3
@@ -38,6 +38,7 @@ import org.jetbrains.kotlin.fir.symbols.impl.FirValueParameterSymbol
|
||||
import org.jetbrains.kotlin.fir.types.FirTypeProjection
|
||||
import org.jetbrains.kotlin.fir.types.FirTypeRef
|
||||
import org.jetbrains.kotlin.lexer.KtTokens.*
|
||||
import org.jetbrains.kotlin.name.SpecialNames
|
||||
import org.jetbrains.kotlin.psi.stubs.elements.KtConstantExpressionElementType
|
||||
import org.jetbrains.kotlin.psi.stubs.elements.KtNameReferenceExpressionElementType
|
||||
import org.jetbrains.kotlin.types.ConstantValueKind
|
||||
@@ -152,7 +153,7 @@ class ExpressionsConverter(
|
||||
for (valueParameter in valueParameterList) {
|
||||
val multiDeclaration = valueParameter.destructuringDeclaration
|
||||
valueParameters += if (multiDeclaration != null) {
|
||||
val name = DESTRUCTURING_NAME
|
||||
val name = SpecialNames.DESTRUCT
|
||||
val multiParameter = buildValueParameter {
|
||||
source = valueParameter.firValueParameter.source
|
||||
moduleData = baseModuleData
|
||||
@@ -1055,7 +1056,7 @@ class ExpressionsConverter(
|
||||
val iteratorVal = generateTemporaryVariable(
|
||||
baseModuleData,
|
||||
calculatedRangeExpression.source?.fakeElement(FirFakeSourceElementKind.DesugaredForLoop),
|
||||
ITERATOR_NAME,
|
||||
SpecialNames.ITERATOR,
|
||||
buildFunctionCall {
|
||||
source = fakeSource
|
||||
calleeReference = buildSimpleNamedReference {
|
||||
@@ -1089,7 +1090,7 @@ class ExpressionsConverter(
|
||||
val firLoopParameter = generateTemporaryVariable(
|
||||
baseModuleData,
|
||||
valueParameter.firValueParameter.source,
|
||||
if (multiDeclaration != null) DESTRUCTURING_NAME else valueParameter.firValueParameter.name,
|
||||
if (multiDeclaration != null) SpecialNames.DESTRUCT else valueParameter.firValueParameter.name,
|
||||
buildFunctionCall {
|
||||
source = fakeSource
|
||||
calleeReference = buildSimpleNamedReference {
|
||||
|
||||
@@ -39,6 +39,7 @@ import org.jetbrains.kotlin.fir.types.impl.FirTypePlaceholderProjection
|
||||
import org.jetbrains.kotlin.lexer.KtTokens.*
|
||||
import org.jetbrains.kotlin.name.CallableId
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.name.SpecialNames
|
||||
import org.jetbrains.kotlin.psi.*
|
||||
import org.jetbrains.kotlin.psi.psiUtil.*
|
||||
import org.jetbrains.kotlin.psi.stubs.elements.KtStubElementTypes
|
||||
@@ -882,7 +883,7 @@ open class RawFirBuilder(
|
||||
typeParameters
|
||||
)
|
||||
// Use ANONYMOUS_OBJECT_NAME for the owner class id for enum entry declarations (see KT-42351)
|
||||
withChildClassName(ANONYMOUS_OBJECT_NAME, forceLocalContext = true, isExpect = false) {
|
||||
withChildClassName(SpecialNames.ANONYMOUS, forceLocalContext = true, isExpect = false) {
|
||||
for (declaration in ktEnumEntry.declarations) {
|
||||
declarations += declaration.toFirDeclaration(
|
||||
correctedEnumSelfTypeRef,
|
||||
@@ -1042,7 +1043,7 @@ open class RawFirBuilder(
|
||||
|
||||
override fun visitObjectLiteralExpression(expression: KtObjectLiteralExpression, data: Unit): FirElement {
|
||||
val objectDeclaration = expression.objectDeclaration
|
||||
return withChildClassName(ANONYMOUS_OBJECT_NAME, forceLocalContext = true, isExpect = false) {
|
||||
return withChildClassName(SpecialNames.ANONYMOUS, forceLocalContext = true, isExpect = false) {
|
||||
buildAnonymousObjectExpression {
|
||||
val sourceElement = objectDeclaration.toFirSourceElement()
|
||||
source = sourceElement
|
||||
@@ -1233,7 +1234,7 @@ open class RawFirBuilder(
|
||||
for (valueParameter in literal.valueParameters) {
|
||||
val multiDeclaration = valueParameter.destructuringDeclaration
|
||||
valueParameters += if (multiDeclaration != null) {
|
||||
val name = DESTRUCTURING_NAME
|
||||
val name = SpecialNames.DESTRUCT
|
||||
val multiParameter = buildValueParameter {
|
||||
source = valueParameter.toFirSourceElement()
|
||||
moduleData = baseModuleData
|
||||
@@ -1890,7 +1891,7 @@ open class RawFirBuilder(
|
||||
source = fakeSource
|
||||
val rangeSource = expression.loopRange?.toFirSourceElement(FirFakeSourceElementKind.DesugaredForLoop)
|
||||
val iteratorVal = generateTemporaryVariable(
|
||||
baseModuleData, rangeSource, ITERATOR_NAME,
|
||||
baseModuleData, rangeSource, SpecialNames.ITERATOR,
|
||||
buildFunctionCall {
|
||||
source = fakeSource
|
||||
calleeReference = buildSimpleNamedReference {
|
||||
@@ -1928,7 +1929,7 @@ open class RawFirBuilder(
|
||||
val multiDeclaration = ktParameter.destructuringDeclaration
|
||||
val firLoopParameter = generateTemporaryVariable(
|
||||
moduleData = baseModuleData, source = expression.loopParameter?.toFirSourceElement(),
|
||||
name = if (multiDeclaration != null) DESTRUCTURING_NAME else ktParameter.nameAsSafeName,
|
||||
name = if (multiDeclaration != null) SpecialNames.DESTRUCT else ktParameter.nameAsSafeName,
|
||||
initializer = buildFunctionCall {
|
||||
source = fakeSource
|
||||
calleeReference = buildSimpleNamedReference {
|
||||
|
||||
+4
-13
@@ -112,7 +112,7 @@ abstract class BaseFirBuilder<T>(val baseSession: FirSession, val context: Conte
|
||||
|
||||
fun callableIdForName(name: Name) =
|
||||
when {
|
||||
context.className.shortNameOrSpecial() == ANONYMOUS_OBJECT_NAME -> CallableId(ANONYMOUS_CLASS_ID, name)
|
||||
context.className.shortNameOrSpecial() == SpecialNames.ANONYMOUS -> CallableId(ANONYMOUS_CLASS_ID, name)
|
||||
context.className.isRoot && !context.inLocalContext -> CallableId(context.packageFqName, name)
|
||||
context.inLocalContext -> {
|
||||
val pathFqName =
|
||||
@@ -491,7 +491,7 @@ abstract class BaseFirBuilder<T>(val baseSession: FirSession, val context: Conte
|
||||
val initialValueVar = generateTemporaryVariable(
|
||||
baseModuleData,
|
||||
desugaredSource,
|
||||
Name.special("<unary>"),
|
||||
SpecialNames.UNARY,
|
||||
unwrappedArgument.convert()
|
||||
)
|
||||
|
||||
@@ -629,7 +629,7 @@ abstract class BaseFirBuilder<T>(val baseSession: FirSession, val context: Conte
|
||||
val initialValueVar = generateTemporaryVariable(
|
||||
baseModuleData,
|
||||
desugaredSource,
|
||||
Name.special("<unary>"),
|
||||
SpecialNames.UNARY,
|
||||
firArgument
|
||||
)
|
||||
|
||||
@@ -769,7 +769,7 @@ abstract class BaseFirBuilder<T>(val baseSession: FirSession, val context: Conte
|
||||
val initialValueVar = generateTemporaryVariable(
|
||||
baseModuleData,
|
||||
desugaredSource,
|
||||
Name.special("<unary>"),
|
||||
SpecialNames.UNARY,
|
||||
firArgument
|
||||
)
|
||||
|
||||
@@ -1245,15 +1245,6 @@ abstract class BaseFirBuilder<T>(val baseSession: FirSession, val context: Conte
|
||||
}
|
||||
}
|
||||
|
||||
/**** Common utils ****/
|
||||
companion object {
|
||||
val ANONYMOUS_OBJECT_NAME = Name.special("<anonymous>")
|
||||
|
||||
val DESTRUCTURING_NAME = Name.special("<destruct>")
|
||||
|
||||
val ITERATOR_NAME = Name.special("<iterator>")
|
||||
}
|
||||
|
||||
enum class ValueParameterDeclaration {
|
||||
OTHER,
|
||||
LAMBDA,
|
||||
|
||||
+1
-1
@@ -555,4 +555,4 @@ data class CalleeAndReceiver(
|
||||
val reference: FirNamedReference,
|
||||
val receiverExpression: FirExpression? = null,
|
||||
val isImplicitInvoke: Boolean = false
|
||||
)
|
||||
)
|
||||
@@ -38,6 +38,7 @@ import org.jetbrains.kotlin.fir.types.builder.buildResolvedTypeRef
|
||||
import org.jetbrains.kotlin.fir.types.builder.buildStarProjection
|
||||
import org.jetbrains.kotlin.fir.types.builder.buildTypeProjectionWithVariance
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.name.SpecialNames
|
||||
import org.jetbrains.kotlin.resolve.calls.inference.ConstraintSystemBuilder
|
||||
import org.jetbrains.kotlin.resolve.calls.results.TypeSpecificityComparator
|
||||
import org.jetbrains.kotlin.resolve.calls.tasks.ExplicitReceiverKind
|
||||
@@ -423,7 +424,7 @@ class FirCallResolver(
|
||||
delegatedConstructorCall: FirDelegatedConstructorCall,
|
||||
constructedType: ConeClassLikeType
|
||||
): FirDelegatedConstructorCall {
|
||||
val name = Name.special("<init>")
|
||||
val name = SpecialNames.INIT
|
||||
val symbol = constructedType.lookupTag.toSymbol(components.session)
|
||||
val typeArguments =
|
||||
constructedType.typeArguments.take((symbol?.fir as? FirRegularClass)?.typeParameters?.count { it is FirTypeParameter } ?: 0)
|
||||
|
||||
+1
@@ -47,6 +47,7 @@ import org.jetbrains.kotlin.fir.visitors.FirDefaultTransformer
|
||||
import org.jetbrains.kotlin.fir.visitors.FirTransformer
|
||||
import org.jetbrains.kotlin.fir.visitors.transformSingle
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.name.SpecialNames
|
||||
|
||||
open class FirDeclarationsResolveTransformer(transformer: FirBodyResolveTransformer) : FirPartialBodyResolveTransformer(transformer) {
|
||||
private val statusResolver: FirStatusResolver = FirStatusResolver(session, scopeSession)
|
||||
|
||||
+4
-7
@@ -10,12 +10,12 @@ import org.jetbrains.kotlin.fir.declarations.*
|
||||
import org.jetbrains.kotlin.fir.declarations.utils.isSynthetic
|
||||
import org.jetbrains.kotlin.fir.resolve.providers.FirSymbolProvider
|
||||
import org.jetbrains.kotlin.fir.resolve.substitution.ConeSubstitutor
|
||||
import org.jetbrains.kotlin.fir.resolve.transformers.ensureResolvedForCalls
|
||||
import org.jetbrains.kotlin.fir.scopes.FirContainingNamesAwareScope
|
||||
import org.jetbrains.kotlin.fir.scopes.FirScope
|
||||
import org.jetbrains.kotlin.fir.scopes.getContainingClassifierNamesIfPresent
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.*
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.name.SpecialNames
|
||||
|
||||
class FirClassDeclaredMemberScope(
|
||||
val useSiteSession: FirSession,
|
||||
@@ -35,7 +35,7 @@ class FirClassDeclaredMemberScope(
|
||||
loop@ for (declaration in klass.declarations) {
|
||||
if (declaration is FirCallableDeclaration) {
|
||||
val name = when (declaration) {
|
||||
is FirConstructor -> CONSTRUCTOR_NAME
|
||||
is FirConstructor -> SpecialNames.INIT
|
||||
is FirVariable -> if (declaration.isSynthetic) continue@loop else declaration.name
|
||||
is FirSimpleFunction -> declaration.name
|
||||
else -> continue@loop
|
||||
@@ -47,12 +47,12 @@ class FirClassDeclaredMemberScope(
|
||||
}
|
||||
|
||||
override fun processFunctionsByName(name: Name, processor: (FirNamedFunctionSymbol) -> Unit) {
|
||||
if (name == CONSTRUCTOR_NAME) return
|
||||
if (name == SpecialNames.INIT) return
|
||||
processCallables(name, processor)
|
||||
}
|
||||
|
||||
override fun processDeclaredConstructors(processor: (FirConstructorSymbol) -> Unit) {
|
||||
processCallables(CONSTRUCTOR_NAME, processor)
|
||||
processCallables(SpecialNames.INIT, processor)
|
||||
}
|
||||
|
||||
override fun processPropertiesByName(name: Name, processor: (FirVariableSymbol<*>) -> Unit) {
|
||||
@@ -86,6 +86,3 @@ class FirClassDeclaredMemberScope(
|
||||
return nestedClassifierScope?.getContainingClassifierNamesIfPresent().orEmpty()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
private val CONSTRUCTOR_NAME = Name.special("<init>")
|
||||
|
||||
@@ -9,7 +9,6 @@ import org.jetbrains.kotlin.name.Name
|
||||
|
||||
val NAME_FOR_BACKING_FIELD = Name.identifier("field")
|
||||
val NAME_FOR_DEFAULT_VALUE_PARAMETER = Name.identifier("value")
|
||||
val CONSTRUCTOR_NAME = Name.special("<init>")
|
||||
|
||||
// Data class synthetic members
|
||||
val COPY_NAME = Name.identifier("copy")
|
||||
|
||||
@@ -14,6 +14,7 @@ import org.jetbrains.kotlin.fir.types.FirResolvedTypeRef
|
||||
import org.jetbrains.kotlin.name.ClassId
|
||||
import org.jetbrains.kotlin.name.FqName
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.name.SpecialNames
|
||||
|
||||
sealed class FirClassLikeSymbol<D : FirClassLikeDeclaration>(
|
||||
val classId: ClassId
|
||||
@@ -68,7 +69,7 @@ class FirRegularClassSymbol(classId: ClassId) : FirClassSymbol<FirRegularClass>(
|
||||
get() = fir.companionObject?.symbol
|
||||
}
|
||||
|
||||
val ANONYMOUS_CLASS_ID = ClassId(FqName.ROOT, FqName.topLevel(Name.special("<anonymous>")), true)
|
||||
val ANONYMOUS_CLASS_ID = ClassId(FqName.ROOT, FqName.topLevel(SpecialNames.ANONYMOUS), true)
|
||||
|
||||
class FirAnonymousObjectSymbol : FirClassSymbol<FirAnonymousObject>(ANONYMOUS_CLASS_ID)
|
||||
|
||||
|
||||
Reference in New Issue
Block a user