FIR2IR: correctly set type parameters of property accessors
In particular, we generate different type parameters for getters & setters here.
This commit is contained in:
@@ -50,25 +50,31 @@ internal fun <T : IrElement> FirElement.convertWithOffsets(
|
|||||||
|
|
||||||
internal fun createErrorType(): IrErrorType = IrErrorTypeImpl(null, emptyList(), Variance.INVARIANT)
|
internal fun createErrorType(): IrErrorType = IrErrorTypeImpl(null, emptyList(), Variance.INVARIANT)
|
||||||
|
|
||||||
fun FirTypeRef.toIrType(session: FirSession, declarationStorage: Fir2IrDeclarationStorage, irBuiltIns: IrBuiltIns): IrType {
|
fun FirTypeRef.toIrType(
|
||||||
|
session: FirSession,
|
||||||
|
declarationStorage: Fir2IrDeclarationStorage,
|
||||||
|
irBuiltIns: IrBuiltIns,
|
||||||
|
forSetter: Boolean = false
|
||||||
|
): IrType {
|
||||||
if (this !is FirResolvedTypeRef) {
|
if (this !is FirResolvedTypeRef) {
|
||||||
return createErrorType()
|
return createErrorType()
|
||||||
}
|
}
|
||||||
return type.toIrType(session, declarationStorage, irBuiltIns)
|
return type.toIrType(session, declarationStorage, irBuiltIns, forSetter = forSetter)
|
||||||
}
|
}
|
||||||
|
|
||||||
fun ConeKotlinType.toIrType(
|
fun ConeKotlinType.toIrType(
|
||||||
session: FirSession,
|
session: FirSession,
|
||||||
declarationStorage: Fir2IrDeclarationStorage,
|
declarationStorage: Fir2IrDeclarationStorage,
|
||||||
irBuiltIns: IrBuiltIns,
|
irBuiltIns: IrBuiltIns,
|
||||||
definitelyNotNull: Boolean = false
|
definitelyNotNull: Boolean = false,
|
||||||
|
forSetter: Boolean = false
|
||||||
): IrType {
|
): IrType {
|
||||||
return when (this) {
|
return when (this) {
|
||||||
is ConeKotlinErrorType -> createErrorType()
|
is ConeKotlinErrorType -> createErrorType()
|
||||||
is ConeLookupTagBasedType -> {
|
is ConeLookupTagBasedType -> {
|
||||||
val irSymbol = getArrayType(this.classId, irBuiltIns) ?: run {
|
val irSymbol = getArrayType(this.classId, irBuiltIns) ?: run {
|
||||||
val firSymbol = this.lookupTag.toSymbol(session) ?: return createErrorType()
|
val firSymbol = this.lookupTag.toSymbol(session) ?: return createErrorType()
|
||||||
firSymbol.toIrSymbol(session, declarationStorage)
|
firSymbol.toIrSymbol(session, declarationStorage, forSetter)
|
||||||
}
|
}
|
||||||
// TODO: annotations
|
// TODO: annotations
|
||||||
IrSimpleTypeImpl(
|
IrSimpleTypeImpl(
|
||||||
@@ -132,10 +138,14 @@ fun ConeTypeProjection.toIrTypeArgument(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
fun FirClassifierSymbol<*>.toIrSymbol(session: FirSession, declarationStorage: Fir2IrDeclarationStorage): IrClassifierSymbol {
|
fun FirClassifierSymbol<*>.toIrSymbol(
|
||||||
|
session: FirSession,
|
||||||
|
declarationStorage: Fir2IrDeclarationStorage,
|
||||||
|
forSetter: Boolean = false
|
||||||
|
): IrClassifierSymbol {
|
||||||
return when (this) {
|
return when (this) {
|
||||||
is FirTypeParameterSymbol -> {
|
is FirTypeParameterSymbol -> {
|
||||||
toTypeParameterSymbol(declarationStorage)
|
toTypeParameterSymbol(declarationStorage, forSetter)
|
||||||
}
|
}
|
||||||
is FirTypeAliasSymbol -> {
|
is FirTypeAliasSymbol -> {
|
||||||
val typeAlias = fir
|
val typeAlias = fir
|
||||||
@@ -178,8 +188,11 @@ fun FirClassSymbol<*>.toClassSymbol(declarationStorage: Fir2IrDeclarationStorage
|
|||||||
return declarationStorage.getIrClassSymbol(this)
|
return declarationStorage.getIrClassSymbol(this)
|
||||||
}
|
}
|
||||||
|
|
||||||
fun FirTypeParameterSymbol.toTypeParameterSymbol(declarationStorage: Fir2IrDeclarationStorage): IrTypeParameterSymbol {
|
fun FirTypeParameterSymbol.toTypeParameterSymbol(
|
||||||
return declarationStorage.getIrTypeParameterSymbol(this)
|
declarationStorage: Fir2IrDeclarationStorage,
|
||||||
|
forSetter: Boolean = false
|
||||||
|
): IrTypeParameterSymbol {
|
||||||
|
return declarationStorage.getIrTypeParameterSymbol(this, forSetter)
|
||||||
}
|
}
|
||||||
|
|
||||||
fun FirFunctionSymbol<*>.toFunctionSymbol(declarationStorage: Fir2IrDeclarationStorage): IrFunctionSymbol {
|
fun FirFunctionSymbol<*>.toFunctionSymbol(declarationStorage: Fir2IrDeclarationStorage): IrFunctionSymbol {
|
||||||
|
|||||||
+59
-26
@@ -61,6 +61,8 @@ class Fir2IrDeclarationStorage(
|
|||||||
|
|
||||||
private val typeParameterCache = mutableMapOf<FirTypeParameter, IrTypeParameter>()
|
private val typeParameterCache = mutableMapOf<FirTypeParameter, IrTypeParameter>()
|
||||||
|
|
||||||
|
private val typeParameterCacheForSetter = mutableMapOf<FirTypeParameter, IrTypeParameter>()
|
||||||
|
|
||||||
private val functionCache = mutableMapOf<FirSimpleFunction, IrSimpleFunction>()
|
private val functionCache = mutableMapOf<FirSimpleFunction, IrSimpleFunction>()
|
||||||
|
|
||||||
private val constructorCache = mutableMapOf<FirConstructor, IrConstructor>()
|
private val constructorCache = mutableMapOf<FirConstructor, IrConstructor>()
|
||||||
@@ -100,8 +102,8 @@ class Fir2IrDeclarationStorage(
|
|||||||
irSymbolTable.leaveScope(descriptor)
|
irSymbolTable.leaveScope(descriptor)
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun FirTypeRef.toIrType(session: FirSession, declarationStorage: Fir2IrDeclarationStorage) =
|
private fun FirTypeRef.toIrType(session: FirSession, declarationStorage: Fir2IrDeclarationStorage, forSetter: Boolean = false) =
|
||||||
toIrType(session, declarationStorage, irBuiltIns)
|
toIrType(session, declarationStorage, irBuiltIns, forSetter)
|
||||||
|
|
||||||
private fun getIrExternalPackageFragment(fqName: FqName): IrExternalPackageFragment {
|
private fun getIrExternalPackageFragment(fqName: FqName): IrExternalPackageFragment {
|
||||||
return fragmentCache.getOrPut(fqName) {
|
return fragmentCache.getOrPut(fqName) {
|
||||||
@@ -148,12 +150,15 @@ class Fir2IrDeclarationStorage(
|
|||||||
private fun preCacheTypeParameters(owner: FirTypeParametersOwner) {
|
private fun preCacheTypeParameters(owner: FirTypeParametersOwner) {
|
||||||
owner.typeParameters.mapIndexed { index, typeParameter ->
|
owner.typeParameters.mapIndexed { index, typeParameter ->
|
||||||
getIrTypeParameter(typeParameter, index)
|
getIrTypeParameter(typeParameter, index)
|
||||||
|
if (owner is FirProperty && owner.isVar) {
|
||||||
|
getIrTypeParameter(typeParameter, index, forSetter = true)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun IrTypeParametersContainer.setTypeParameters(owner: FirTypeParametersOwner) {
|
private fun IrTypeParametersContainer.setTypeParameters(owner: FirTypeParametersOwner, forSetter: Boolean = false) {
|
||||||
typeParameters = owner.typeParameters.mapIndexed { index, typeParameter ->
|
typeParameters = owner.typeParameters.mapIndexed { index, typeParameter ->
|
||||||
getIrTypeParameter(typeParameter, index).apply { parent = this@setTypeParameters }
|
getIrTypeParameter(typeParameter, index, forSetter).apply { parent = this@setTypeParameters }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -323,9 +328,25 @@ class Fir2IrDeclarationStorage(
|
|||||||
}.declareSupertypesAndTypeParameters(anonymousObject)
|
}.declareSupertypesAndTypeParameters(anonymousObject)
|
||||||
}
|
}
|
||||||
|
|
||||||
// TODO: change index default to -1
|
private fun getIrTypeParameter(typeParameter: FirTypeParameter, index: Int = -1, forSetter: Boolean = false): IrTypeParameter {
|
||||||
private fun getIrTypeParameter(typeParameter: FirTypeParameter, index: Int = 0): IrTypeParameter {
|
// Here transformation is a bit difficult because one FIR property type parameter
|
||||||
return typeParameterCache[typeParameter] ?: typeParameter.run {
|
// can be transformed to two different type parameters: one for getter and another one for setter
|
||||||
|
val simpleCachedParameter = typeParameterCache[typeParameter]
|
||||||
|
if (simpleCachedParameter != null) {
|
||||||
|
if (!forSetter) {
|
||||||
|
return simpleCachedParameter
|
||||||
|
}
|
||||||
|
if (index < 0) {
|
||||||
|
val parent = simpleCachedParameter.parent
|
||||||
|
if (parent !is IrSimpleFunction || parent.returnType == unitType) {
|
||||||
|
return simpleCachedParameter
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (forSetter) {
|
||||||
|
typeParameterCacheForSetter[typeParameter]?.let { return it }
|
||||||
|
}
|
||||||
|
return typeParameter.run {
|
||||||
// Yet I don't want to enable this requirement because it breaks some tests
|
// Yet I don't want to enable this requirement because it breaks some tests
|
||||||
// However, if we get here it *should* mean that type parameter index is given explicitly
|
// However, if we get here it *should* mean that type parameter index is given explicitly
|
||||||
// At this moment (20.02.2020) this requirement breaks 11/355 Fir2IrText tests
|
// At this moment (20.02.2020) this requirement breaks 11/355 Fir2IrText tests
|
||||||
@@ -337,7 +358,7 @@ class Fir2IrDeclarationStorage(
|
|||||||
irSymbolTable.declareGlobalTypeParameter(startOffset, endOffset, origin, descriptor) { symbol ->
|
irSymbolTable.declareGlobalTypeParameter(startOffset, endOffset, origin, descriptor) { symbol ->
|
||||||
IrTypeParameterImpl(
|
IrTypeParameterImpl(
|
||||||
startOffset, endOffset, origin, symbol,
|
startOffset, endOffset, origin, symbol,
|
||||||
name, index,
|
name, if (index < 0) 0 else index,
|
||||||
isReified,
|
isReified,
|
||||||
variance
|
variance
|
||||||
).apply {
|
).apply {
|
||||||
@@ -347,7 +368,11 @@ class Fir2IrDeclarationStorage(
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Cache the type parameter BEFORE processing its bounds/supertypes, to properly handle recursive type bounds.
|
// Cache the type parameter BEFORE processing its bounds/supertypes, to properly handle recursive type bounds.
|
||||||
typeParameterCache[typeParameter] = irTypeParameter
|
if (forSetter) {
|
||||||
|
typeParameterCacheForSetter[typeParameter] = irTypeParameter
|
||||||
|
} else {
|
||||||
|
typeParameterCache[typeParameter] = irTypeParameter
|
||||||
|
}
|
||||||
bounds.mapTo(irTypeParameter.superTypes) { it.toIrType(session, this@Fir2IrDeclarationStorage) }
|
bounds.mapTo(irTypeParameter.superTypes) { it.toIrType(session, this@Fir2IrDeclarationStorage) }
|
||||||
irTypeParameter
|
irTypeParameter
|
||||||
}
|
}
|
||||||
@@ -419,14 +444,18 @@ class Fir2IrDeclarationStorage(
|
|||||||
if (function is FirSimpleFunction) {
|
if (function is FirSimpleFunction) {
|
||||||
setTypeParameters(function)
|
setTypeParameters(function)
|
||||||
}
|
}
|
||||||
|
val forSetter = function is FirPropertyAccessor && function.isSetter
|
||||||
if (function is FirDefaultPropertySetter) {
|
if (function is FirDefaultPropertySetter) {
|
||||||
val type = function.valueParameters.first().returnTypeRef.toIrType(session, this@Fir2IrDeclarationStorage)
|
val type = function.valueParameters.first().returnTypeRef.toIrType(
|
||||||
|
session, this@Fir2IrDeclarationStorage, forSetter = true
|
||||||
|
)
|
||||||
declareDefaultSetterParameter(type)
|
declareDefaultSetterParameter(type)
|
||||||
} else if (function != null) {
|
} else if (function != null) {
|
||||||
valueParameters = function.valueParameters.mapIndexed { index, valueParameter ->
|
valueParameters = function.valueParameters.mapIndexed { index, valueParameter ->
|
||||||
createAndSaveIrParameter(
|
createAndSaveIrParameter(
|
||||||
valueParameter, index,
|
valueParameter, index,
|
||||||
useStubForDefaultValueStub = function !is FirConstructor || containingClass?.name != Name.identifier("Enum")
|
useStubForDefaultValueStub = function !is FirConstructor || containingClass?.name != Name.identifier("Enum"),
|
||||||
|
forSetter = forSetter
|
||||||
).apply {
|
).apply {
|
||||||
this.parent = parent
|
this.parent = parent
|
||||||
}
|
}
|
||||||
@@ -439,7 +468,7 @@ class Fir2IrDeclarationStorage(
|
|||||||
extensionReceiverParameter = receiverTypeRef.convertWithOffsets { startOffset, endOffset ->
|
extensionReceiverParameter = receiverTypeRef.convertWithOffsets { startOffset, endOffset ->
|
||||||
declareThisReceiverParameter(
|
declareThisReceiverParameter(
|
||||||
parent,
|
parent,
|
||||||
thisType = receiverTypeRef.toIrType(session, this@Fir2IrDeclarationStorage),
|
thisType = receiverTypeRef.toIrType(session, this@Fir2IrDeclarationStorage, forSetter),
|
||||||
thisOrigin = thisOrigin,
|
thisOrigin = thisOrigin,
|
||||||
startOffset = startOffset,
|
startOffset = startOffset,
|
||||||
endOffset = endOffset
|
endOffset = endOffset
|
||||||
@@ -593,14 +622,14 @@ class Fir2IrDeclarationStorage(
|
|||||||
|
|
||||||
private fun createIrPropertyAccessor(
|
private fun createIrPropertyAccessor(
|
||||||
propertyAccessor: FirPropertyAccessor?,
|
propertyAccessor: FirPropertyAccessor?,
|
||||||
|
property: FirProperty,
|
||||||
correspondingProperty: IrProperty,
|
correspondingProperty: IrProperty,
|
||||||
propertyType: IrType,
|
propertyType: IrType,
|
||||||
irParent: IrDeclarationParent?,
|
irParent: IrDeclarationParent?,
|
||||||
isSetter: Boolean,
|
isSetter: Boolean,
|
||||||
origin: IrDeclarationOrigin,
|
origin: IrDeclarationOrigin,
|
||||||
startOffset: Int,
|
startOffset: Int,
|
||||||
endOffset: Int,
|
endOffset: Int
|
||||||
correspondingPropertyReceiverTypeRef: FirTypeRef?
|
|
||||||
): IrSimpleFunction {
|
): IrSimpleFunction {
|
||||||
val propertyDescriptor = correspondingProperty.descriptor
|
val propertyDescriptor = correspondingProperty.descriptor
|
||||||
val descriptor =
|
val descriptor =
|
||||||
@@ -623,12 +652,15 @@ class Fir2IrDeclarationStorage(
|
|||||||
isFakeOverride = origin == IrDeclarationOrigin.FAKE_OVERRIDE,
|
isFakeOverride = origin == IrDeclarationOrigin.FAKE_OVERRIDE,
|
||||||
isOperator = false
|
isOperator = false
|
||||||
).apply {
|
).apply {
|
||||||
|
setTypeParameters(property, forSetter = isSetter)
|
||||||
if (propertyAccessor == null && isSetter) {
|
if (propertyAccessor == null && isSetter) {
|
||||||
declareDefaultSetterParameter(propertyType)
|
declareDefaultSetterParameter(
|
||||||
|
property.returnTypeRef.toIrType(session, this@Fir2IrDeclarationStorage, forSetter = true)
|
||||||
|
)
|
||||||
}
|
}
|
||||||
}.bindAndDeclareParameters(
|
}.bindAndDeclareParameters(
|
||||||
propertyAccessor, descriptor, irParent, isStatic = irParent !is IrClass, shouldLeaveScope = true,
|
propertyAccessor, descriptor, irParent, isStatic = irParent !is IrClass, shouldLeaveScope = true,
|
||||||
parentPropertyReceiverType = correspondingPropertyReceiverTypeRef
|
parentPropertyReceiverType = property.receiverTypeRef
|
||||||
).apply {
|
).apply {
|
||||||
if (irParent != null) {
|
if (irParent != null) {
|
||||||
parent = irParent
|
parent = irParent
|
||||||
@@ -705,26 +737,24 @@ class Fir2IrDeclarationStorage(
|
|||||||
).apply {
|
).apply {
|
||||||
descriptor.bind(this)
|
descriptor.bind(this)
|
||||||
val type = property.returnTypeRef.toIrType(session, this@Fir2IrDeclarationStorage)
|
val type = property.returnTypeRef.toIrType(session, this@Fir2IrDeclarationStorage)
|
||||||
val receiverType = property.receiverTypeRef
|
|
||||||
getter = createIrPropertyAccessor(
|
getter = createIrPropertyAccessor(
|
||||||
property.getter, this, type, irParent, false,
|
property.getter, property, this, type, irParent, false,
|
||||||
when {
|
when {
|
||||||
property.delegate != null -> IrDeclarationOrigin.DELEGATED_PROPERTY_ACCESSOR
|
property.delegate != null -> IrDeclarationOrigin.DELEGATED_PROPERTY_ACCESSOR
|
||||||
property.getter is FirDefaultPropertyGetter -> IrDeclarationOrigin.DEFAULT_PROPERTY_ACCESSOR
|
property.getter is FirDefaultPropertyGetter -> IrDeclarationOrigin.DEFAULT_PROPERTY_ACCESSOR
|
||||||
else -> origin
|
else -> origin
|
||||||
},
|
},
|
||||||
startOffset, endOffset, correspondingPropertyReceiverTypeRef = receiverType
|
startOffset, endOffset
|
||||||
)
|
)
|
||||||
if (property.isVar) {
|
if (property.isVar) {
|
||||||
setter = createIrPropertyAccessor(
|
setter = createIrPropertyAccessor(
|
||||||
property.setter, this, type, irParent, true,
|
property.setter, property, this, type, irParent, true,
|
||||||
when {
|
when {
|
||||||
property.delegate != null -> IrDeclarationOrigin.DELEGATED_PROPERTY_ACCESSOR
|
property.delegate != null -> IrDeclarationOrigin.DELEGATED_PROPERTY_ACCESSOR
|
||||||
property.setter is FirDefaultPropertySetter -> IrDeclarationOrigin.DEFAULT_PROPERTY_ACCESSOR
|
property.setter is FirDefaultPropertySetter -> IrDeclarationOrigin.DEFAULT_PROPERTY_ACCESSOR
|
||||||
else -> origin
|
else -> origin
|
||||||
},
|
},
|
||||||
startOffset, endOffset,
|
startOffset, endOffset
|
||||||
correspondingPropertyReceiverTypeRef = receiverType
|
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -763,7 +793,8 @@ class Fir2IrDeclarationStorage(
|
|||||||
private fun createAndSaveIrParameter(
|
private fun createAndSaveIrParameter(
|
||||||
valueParameter: FirValueParameter,
|
valueParameter: FirValueParameter,
|
||||||
index: Int = -1,
|
index: Int = -1,
|
||||||
useStubForDefaultValueStub: Boolean = true
|
useStubForDefaultValueStub: Boolean = true,
|
||||||
|
forSetter: Boolean = false
|
||||||
): IrValueParameter {
|
): IrValueParameter {
|
||||||
val descriptor = WrappedValueParameterDescriptor()
|
val descriptor = WrappedValueParameterDescriptor()
|
||||||
val origin = IrDeclarationOrigin.DEFINED
|
val origin = IrDeclarationOrigin.DEFINED
|
||||||
@@ -776,7 +807,9 @@ class Fir2IrDeclarationStorage(
|
|||||||
startOffset, endOffset, origin, symbol,
|
startOffset, endOffset, origin, symbol,
|
||||||
valueParameter.name, index, type,
|
valueParameter.name, index, type,
|
||||||
if (!valueParameter.isVararg) null
|
if (!valueParameter.isVararg) null
|
||||||
else valueParameter.returnTypeRef.coneTypeSafe<ConeKotlinType>()?.arrayElementType(session)?.toIrType(session, this, irBuiltIns),
|
else valueParameter.returnTypeRef.coneTypeSafe<ConeKotlinType>()?.arrayElementType(session)?.toIrType(
|
||||||
|
session, this, irBuiltIns, forSetter
|
||||||
|
),
|
||||||
valueParameter.isCrossinline, valueParameter.isNoinline
|
valueParameter.isCrossinline, valueParameter.isNoinline
|
||||||
).apply {
|
).apply {
|
||||||
descriptor.bind(this)
|
descriptor.bind(this)
|
||||||
@@ -856,8 +889,8 @@ class Fir2IrDeclarationStorage(
|
|||||||
return irSymbolTable.referenceClass(irClass.descriptor)
|
return irSymbolTable.referenceClass(irClass.descriptor)
|
||||||
}
|
}
|
||||||
|
|
||||||
fun getIrTypeParameterSymbol(firTypeParameterSymbol: FirTypeParameterSymbol): IrTypeParameterSymbol {
|
fun getIrTypeParameterSymbol(firTypeParameterSymbol: FirTypeParameterSymbol, forSetter: Boolean): IrTypeParameterSymbol {
|
||||||
val irTypeParameter = getIrTypeParameter(firTypeParameterSymbol.fir)
|
val irTypeParameter = getIrTypeParameter(firTypeParameterSymbol.fir, forSetter = forSetter)
|
||||||
return irSymbolTable.referenceTypeParameter(irTypeParameter.descriptor)
|
return irSymbolTable.referenceTypeParameter(irTypeParameter.descriptor)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+24
-21
@@ -8,20 +8,23 @@ FILE fqName:<root> fileName:/delegatedGenericImplementation.kt
|
|||||||
VALUE_PARAMETER name:a index:0 type:A of <root>.IBase
|
VALUE_PARAMETER name:a index:0 type:A of <root>.IBase
|
||||||
VALUE_PARAMETER name:b index:1 type:B of <root>.IBase.foo
|
VALUE_PARAMETER name:b index:1 type:B of <root>.IBase.foo
|
||||||
PROPERTY name:id visibility:public modality:ABSTRACT [val]
|
PROPERTY name:id visibility:public modality:ABSTRACT [val]
|
||||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-id> visibility:public modality:ABSTRACT <> ($this:<root>.IBase<A of <root>.IBase>, $receiver:C of <uninitialized parent>) returnType:kotlin.collections.Map<A of <root>.IBase, C of <uninitialized parent>>?
|
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-id> visibility:public modality:ABSTRACT <C> ($this:<root>.IBase<A of <root>.IBase>, $receiver:C of <root>.IBase.<get-id>) returnType:kotlin.collections.Map<A of <root>.IBase, C of <root>.IBase.<get-id>>?
|
||||||
correspondingProperty: PROPERTY name:id visibility:public modality:ABSTRACT [val]
|
correspondingProperty: PROPERTY name:id visibility:public modality:ABSTRACT [val]
|
||||||
|
TYPE_PARAMETER name:C index:0 variance: superTypes:[kotlin.Any?]
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.IBase<A of <root>.IBase>
|
$this: VALUE_PARAMETER name:<this> type:<root>.IBase<A of <root>.IBase>
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:C of <uninitialized parent>
|
$receiver: VALUE_PARAMETER name:<this> type:C of <root>.IBase.<get-id>
|
||||||
PROPERTY name:x visibility:public modality:ABSTRACT [var]
|
PROPERTY name:x visibility:public modality:ABSTRACT [var]
|
||||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-x> visibility:public modality:ABSTRACT <> ($this:<root>.IBase<A of <root>.IBase>, $receiver:kotlin.collections.List<D of <uninitialized parent>>) returnType:D of <uninitialized parent>?
|
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-x> visibility:public modality:ABSTRACT <D> ($this:<root>.IBase<A of <root>.IBase>, $receiver:kotlin.collections.List<D of <root>.IBase.<get-x>>) returnType:D of <root>.IBase.<get-x>?
|
||||||
correspondingProperty: PROPERTY name:x visibility:public modality:ABSTRACT [var]
|
correspondingProperty: PROPERTY name:x visibility:public modality:ABSTRACT [var]
|
||||||
|
TYPE_PARAMETER name:D index:0 variance: superTypes:[kotlin.Any?]
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.IBase<A of <root>.IBase>
|
$this: VALUE_PARAMETER name:<this> type:<root>.IBase<A of <root>.IBase>
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:kotlin.collections.List<D of <uninitialized parent>>
|
$receiver: VALUE_PARAMETER name:<this> type:kotlin.collections.List<D of <root>.IBase.<get-x>>
|
||||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<set-x> visibility:public modality:ABSTRACT <> ($this:<root>.IBase<A of <root>.IBase>, $receiver:kotlin.collections.List<D of <uninitialized parent>>, <set-?>:D of <uninitialized parent>?) returnType:kotlin.Unit
|
FUN DEFAULT_PROPERTY_ACCESSOR name:<set-x> visibility:public modality:ABSTRACT <D> ($this:<root>.IBase<A of <root>.IBase>, $receiver:kotlin.collections.List<D of <root>.IBase.<get-x>>, <set-?>:D of <root>.IBase.<set-x>?) returnType:kotlin.Unit
|
||||||
correspondingProperty: PROPERTY name:x visibility:public modality:ABSTRACT [var]
|
correspondingProperty: PROPERTY name:x visibility:public modality:ABSTRACT [var]
|
||||||
|
TYPE_PARAMETER name:D index:0 variance: superTypes:[kotlin.Any?]
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.IBase<A of <root>.IBase>
|
$this: VALUE_PARAMETER name:<this> type:<root>.IBase<A of <root>.IBase>
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:kotlin.collections.List<D of <uninitialized parent>>
|
$receiver: VALUE_PARAMETER name:<this> type:kotlin.collections.List<D of <root>.IBase.<get-x>>
|
||||||
VALUE_PARAMETER name:<set-?> index:0 type:D of <uninitialized parent>?
|
VALUE_PARAMETER name:<set-?> index:0 type:D of <root>.IBase.<set-x>?
|
||||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||||
overridden:
|
overridden:
|
||||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
|
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
|
||||||
@@ -51,23 +54,23 @@ FILE fqName:<root> fileName:/delegatedGenericImplementation.kt
|
|||||||
VALUE_PARAMETER name:a index:0 type:E of <root>.Test1
|
VALUE_PARAMETER name:a index:0 type:E of <root>.Test1
|
||||||
VALUE_PARAMETER name:b index:1 type:B of <root>.Test1.foo
|
VALUE_PARAMETER name:b index:1 type:B of <root>.Test1.foo
|
||||||
PROPERTY FAKE_OVERRIDE name:id visibility:public modality:ABSTRACT [fake_override,val]
|
PROPERTY FAKE_OVERRIDE name:id visibility:public modality:ABSTRACT [fake_override,val]
|
||||||
FUN FAKE_OVERRIDE name:<get-id> visibility:public modality:ABSTRACT <> ($this:<root>.Test1<E of <root>.Test1>) returnType:kotlin.collections.Map<E of <root>.Test1, C of <uninitialized parent>>? [fake_override]
|
FUN FAKE_OVERRIDE name:<get-id> visibility:public modality:ABSTRACT <> ($this:<root>.Test1<E of <root>.Test1>) returnType:kotlin.collections.Map<E of <root>.Test1, C of <root>.IBase.<get-id>>? [fake_override]
|
||||||
correspondingProperty: PROPERTY FAKE_OVERRIDE name:id visibility:public modality:ABSTRACT [fake_override,val]
|
correspondingProperty: PROPERTY FAKE_OVERRIDE name:id visibility:public modality:ABSTRACT [fake_override,val]
|
||||||
overridden:
|
overridden:
|
||||||
public abstract fun <get-id> (): kotlin.collections.Map<A of <root>.IBase, C of <uninitialized parent>>? declared in <root>.IBase
|
public abstract fun <get-id> <C> (): kotlin.collections.Map<A of <root>.IBase, C of <root>.IBase.<get-id>>? declared in <root>.IBase
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.Test1<E of <root>.Test1>
|
$this: VALUE_PARAMETER name:<this> type:<root>.Test1<E of <root>.Test1>
|
||||||
PROPERTY FAKE_OVERRIDE name:x visibility:public modality:ABSTRACT [fake_override,var]
|
PROPERTY FAKE_OVERRIDE name:x visibility:public modality:ABSTRACT [fake_override,var]
|
||||||
FUN FAKE_OVERRIDE name:<get-x> visibility:public modality:ABSTRACT <> ($this:<root>.Test1<E of <root>.Test1>) returnType:D of <uninitialized parent>? [fake_override]
|
FUN FAKE_OVERRIDE name:<get-x> visibility:public modality:ABSTRACT <> ($this:<root>.Test1<E of <root>.Test1>) returnType:D of <root>.IBase.<get-x>? [fake_override]
|
||||||
correspondingProperty: PROPERTY FAKE_OVERRIDE name:x visibility:public modality:ABSTRACT [fake_override,var]
|
correspondingProperty: PROPERTY FAKE_OVERRIDE name:x visibility:public modality:ABSTRACT [fake_override,var]
|
||||||
overridden:
|
overridden:
|
||||||
public abstract fun <get-x> (): D of <uninitialized parent>? declared in <root>.IBase
|
public abstract fun <get-x> <D> (): D of <root>.IBase.<get-x>? declared in <root>.IBase
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.Test1<E of <root>.Test1>
|
$this: VALUE_PARAMETER name:<this> type:<root>.Test1<E of <root>.Test1>
|
||||||
FUN FAKE_OVERRIDE name:<set-x> visibility:public modality:ABSTRACT <> ($this:<root>.Test1<E of <root>.Test1>, <set-?>:D of <uninitialized parent>?) returnType:kotlin.Unit [fake_override]
|
FUN FAKE_OVERRIDE name:<set-x> visibility:public modality:ABSTRACT <> ($this:<root>.Test1<E of <root>.Test1>, <set-?>:D of <root>.IBase.<set-x>?) returnType:kotlin.Unit [fake_override]
|
||||||
correspondingProperty: PROPERTY FAKE_OVERRIDE name:x visibility:public modality:ABSTRACT [fake_override,var]
|
correspondingProperty: PROPERTY FAKE_OVERRIDE name:x visibility:public modality:ABSTRACT [fake_override,var]
|
||||||
overridden:
|
overridden:
|
||||||
public abstract fun <set-x> (<set-?>: D of <uninitialized parent>?): kotlin.Unit declared in <root>.IBase
|
public abstract fun <set-x> <D> (<set-?>: D of <root>.IBase.<set-x>?): kotlin.Unit declared in <root>.IBase
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.Test1<E of <root>.Test1>
|
$this: VALUE_PARAMETER name:<this> type:<root>.Test1<E of <root>.Test1>
|
||||||
VALUE_PARAMETER name:<set-?> index:0 type:D of <uninitialized parent>?
|
VALUE_PARAMETER name:<set-?> index:0 type:D of <root>.IBase.<set-x>?
|
||||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||||
overridden:
|
overridden:
|
||||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
|
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
|
||||||
@@ -115,23 +118,23 @@ FILE fqName:<root> fileName:/delegatedGenericImplementation.kt
|
|||||||
VALUE_PARAMETER name:a index:0 type:kotlin.String
|
VALUE_PARAMETER name:a index:0 type:kotlin.String
|
||||||
VALUE_PARAMETER name:b index:1 type:B of <root>.Test2.foo
|
VALUE_PARAMETER name:b index:1 type:B of <root>.Test2.foo
|
||||||
PROPERTY FAKE_OVERRIDE name:id visibility:public modality:ABSTRACT [fake_override,val]
|
PROPERTY FAKE_OVERRIDE name:id visibility:public modality:ABSTRACT [fake_override,val]
|
||||||
FUN FAKE_OVERRIDE name:<get-id> visibility:public modality:ABSTRACT <> ($this:<root>.Test2) returnType:kotlin.collections.Map<kotlin.String, C of <uninitialized parent>>? [fake_override]
|
FUN FAKE_OVERRIDE name:<get-id> visibility:public modality:ABSTRACT <> ($this:<root>.Test2) returnType:kotlin.collections.Map<kotlin.String, C of <root>.IBase.<get-id>>? [fake_override]
|
||||||
correspondingProperty: PROPERTY FAKE_OVERRIDE name:id visibility:public modality:ABSTRACT [fake_override,val]
|
correspondingProperty: PROPERTY FAKE_OVERRIDE name:id visibility:public modality:ABSTRACT [fake_override,val]
|
||||||
overridden:
|
overridden:
|
||||||
public abstract fun <get-id> (): kotlin.collections.Map<A of <root>.IBase, C of <uninitialized parent>>? declared in <root>.IBase
|
public abstract fun <get-id> <C> (): kotlin.collections.Map<A of <root>.IBase, C of <root>.IBase.<get-id>>? declared in <root>.IBase
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.Test2
|
$this: VALUE_PARAMETER name:<this> type:<root>.Test2
|
||||||
PROPERTY FAKE_OVERRIDE name:x visibility:public modality:ABSTRACT [fake_override,var]
|
PROPERTY FAKE_OVERRIDE name:x visibility:public modality:ABSTRACT [fake_override,var]
|
||||||
FUN FAKE_OVERRIDE name:<get-x> visibility:public modality:ABSTRACT <> ($this:<root>.Test2) returnType:D of <uninitialized parent>? [fake_override]
|
FUN FAKE_OVERRIDE name:<get-x> visibility:public modality:ABSTRACT <> ($this:<root>.Test2) returnType:D of <root>.IBase.<get-x>? [fake_override]
|
||||||
correspondingProperty: PROPERTY FAKE_OVERRIDE name:x visibility:public modality:ABSTRACT [fake_override,var]
|
correspondingProperty: PROPERTY FAKE_OVERRIDE name:x visibility:public modality:ABSTRACT [fake_override,var]
|
||||||
overridden:
|
overridden:
|
||||||
public abstract fun <get-x> (): D of <uninitialized parent>? declared in <root>.IBase
|
public abstract fun <get-x> <D> (): D of <root>.IBase.<get-x>? declared in <root>.IBase
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.Test2
|
$this: VALUE_PARAMETER name:<this> type:<root>.Test2
|
||||||
FUN FAKE_OVERRIDE name:<set-x> visibility:public modality:ABSTRACT <> ($this:<root>.Test2, <set-?>:D of <uninitialized parent>?) returnType:kotlin.Unit [fake_override]
|
FUN FAKE_OVERRIDE name:<set-x> visibility:public modality:ABSTRACT <> ($this:<root>.Test2, <set-?>:D of <root>.IBase.<set-x>?) returnType:kotlin.Unit [fake_override]
|
||||||
correspondingProperty: PROPERTY FAKE_OVERRIDE name:x visibility:public modality:ABSTRACT [fake_override,var]
|
correspondingProperty: PROPERTY FAKE_OVERRIDE name:x visibility:public modality:ABSTRACT [fake_override,var]
|
||||||
overridden:
|
overridden:
|
||||||
public abstract fun <set-x> (<set-?>: D of <uninitialized parent>?): kotlin.Unit declared in <root>.IBase
|
public abstract fun <set-x> <D> (<set-?>: D of <root>.IBase.<set-x>?): kotlin.Unit declared in <root>.IBase
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.Test2
|
$this: VALUE_PARAMETER name:<this> type:<root>.Test2
|
||||||
VALUE_PARAMETER name:<set-?> index:0 type:D of <uninitialized parent>?
|
VALUE_PARAMETER name:<set-?> index:0 type:D of <root>.IBase.<set-x>?
|
||||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||||
overridden:
|
overridden:
|
||||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
|
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
|
||||||
|
|||||||
@@ -2,13 +2,14 @@ FILE fqName:<root> fileName:/kt35550.kt
|
|||||||
CLASS INTERFACE name:I modality:ABSTRACT visibility:public superTypes:[kotlin.Any]
|
CLASS INTERFACE name:I modality:ABSTRACT visibility:public superTypes:[kotlin.Any]
|
||||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.I
|
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.I
|
||||||
PROPERTY name:id visibility:public modality:OPEN [val]
|
PROPERTY name:id visibility:public modality:OPEN [val]
|
||||||
FUN name:<get-id> visibility:public modality:OPEN <> ($this:<root>.I, $receiver:T of <uninitialized parent>) returnType:T of <uninitialized parent>
|
FUN name:<get-id> visibility:public modality:OPEN <T> ($this:<root>.I, $receiver:T of <root>.I.<get-id>) returnType:T of <root>.I.<get-id>
|
||||||
correspondingProperty: PROPERTY name:id visibility:public modality:OPEN [val]
|
correspondingProperty: PROPERTY name:id visibility:public modality:OPEN [val]
|
||||||
|
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?]
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.I
|
$this: VALUE_PARAMETER name:<this> type:<root>.I
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:T of <uninitialized parent>
|
$receiver: VALUE_PARAMETER name:<this> type:T of <root>.I.<get-id>
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
RETURN type=kotlin.Nothing from='public open fun <get-id> (): T of <uninitialized parent> declared in <root>.I'
|
RETURN type=kotlin.Nothing from='public open fun <get-id> <T> (): T of <root>.I.<get-id> declared in <root>.I'
|
||||||
ERROR_CALL 'Unresolved reference: this@R|/I.id|' type=T of <uninitialized parent>
|
ERROR_CALL 'Unresolved reference: this@R|/I.id|' type=T of <root>.I.<get-id>
|
||||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||||
overridden:
|
overridden:
|
||||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
|
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
|
||||||
@@ -30,10 +31,10 @@ FILE fqName:<root> fileName:/kt35550.kt
|
|||||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in kotlin.Any'
|
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in kotlin.Any'
|
||||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:A modality:FINAL visibility:public superTypes:[<root>.I]'
|
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:A modality:FINAL visibility:public superTypes:[<root>.I]'
|
||||||
PROPERTY FAKE_OVERRIDE name:id visibility:public modality:OPEN [fake_override,val]
|
PROPERTY FAKE_OVERRIDE name:id visibility:public modality:OPEN [fake_override,val]
|
||||||
FUN FAKE_OVERRIDE name:<get-id> visibility:public modality:OPEN <> ($this:<root>.A) returnType:T of <uninitialized parent> [fake_override]
|
FUN FAKE_OVERRIDE name:<get-id> visibility:public modality:OPEN <> ($this:<root>.A) returnType:T of <root>.I.<get-id> [fake_override]
|
||||||
correspondingProperty: PROPERTY FAKE_OVERRIDE name:id visibility:public modality:OPEN [fake_override,val]
|
correspondingProperty: PROPERTY FAKE_OVERRIDE name:id visibility:public modality:OPEN [fake_override,val]
|
||||||
overridden:
|
overridden:
|
||||||
public open fun <get-id> (): T of <uninitialized parent> declared in <root>.I
|
public open fun <get-id> <T> (): T of <root>.I.<get-id> declared in <root>.I
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.A
|
$this: VALUE_PARAMETER name:<this> type:<root>.A
|
||||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||||
overridden:
|
overridden:
|
||||||
|
|||||||
-138
@@ -1,138 +0,0 @@
|
|||||||
FILE fqName:<root> fileName:/propertyAccessors.kt
|
|
||||||
PROPERTY name:test1 visibility:public modality:FINAL [val]
|
|
||||||
FUN name:<get-test1> visibility:public modality:FINAL <> () returnType:kotlin.Int
|
|
||||||
correspondingProperty: PROPERTY name:test1 visibility:public modality:FINAL [val]
|
|
||||||
BLOCK_BODY
|
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-test1> (): kotlin.Int declared in <root>'
|
|
||||||
CONST Int type=kotlin.Int value=42
|
|
||||||
PROPERTY name:test2 visibility:public modality:FINAL [var]
|
|
||||||
FUN name:<get-test2> visibility:public modality:FINAL <> () returnType:kotlin.Int
|
|
||||||
correspondingProperty: PROPERTY name:test2 visibility:public modality:FINAL [var]
|
|
||||||
BLOCK_BODY
|
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-test2> (): kotlin.Int declared in <root>'
|
|
||||||
CONST Int type=kotlin.Int value=42
|
|
||||||
FUN name:<set-test2> visibility:public modality:FINAL <> (value:kotlin.Int) returnType:kotlin.Unit
|
|
||||||
correspondingProperty: PROPERTY name:test2 visibility:public modality:FINAL [var]
|
|
||||||
VALUE_PARAMETER name:value index:0 type:kotlin.Int
|
|
||||||
BLOCK_BODY
|
|
||||||
PROPERTY name:testExt1 visibility:public modality:FINAL [val]
|
|
||||||
FUN name:<get-testExt1> visibility:public modality:FINAL <> ($receiver:kotlin.String) returnType:kotlin.Int
|
|
||||||
correspondingProperty: PROPERTY name:testExt1 visibility:public modality:FINAL [val]
|
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:kotlin.String
|
|
||||||
BLOCK_BODY
|
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-testExt1> (): kotlin.Int declared in <root>'
|
|
||||||
CONST Int type=kotlin.Int value=42
|
|
||||||
PROPERTY name:testExt2 visibility:public modality:FINAL [var]
|
|
||||||
FUN name:<get-testExt2> visibility:public modality:FINAL <> ($receiver:kotlin.String) returnType:kotlin.Int
|
|
||||||
correspondingProperty: PROPERTY name:testExt2 visibility:public modality:FINAL [var]
|
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:kotlin.String
|
|
||||||
BLOCK_BODY
|
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-testExt2> (): kotlin.Int declared in <root>'
|
|
||||||
CONST Int type=kotlin.Int value=42
|
|
||||||
FUN name:<set-testExt2> visibility:public modality:FINAL <> ($receiver:kotlin.String, value:kotlin.Int) returnType:kotlin.Unit
|
|
||||||
correspondingProperty: PROPERTY name:testExt2 visibility:public modality:FINAL [var]
|
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:kotlin.String
|
|
||||||
VALUE_PARAMETER name:value index:0 type:kotlin.Int
|
|
||||||
BLOCK_BODY
|
|
||||||
PROPERTY name:testExt3 visibility:public modality:FINAL [val]
|
|
||||||
FUN name:<get-testExt3> visibility:public modality:FINAL <> ($receiver:T of <uninitialized parent>) returnType:kotlin.Int
|
|
||||||
correspondingProperty: PROPERTY name:testExt3 visibility:public modality:FINAL [val]
|
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:T of <uninitialized parent>
|
|
||||||
BLOCK_BODY
|
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-testExt3> (): kotlin.Int declared in <root>'
|
|
||||||
CONST Int type=kotlin.Int value=42
|
|
||||||
PROPERTY name:testExt4 visibility:public modality:FINAL [var]
|
|
||||||
FUN name:<get-testExt4> visibility:public modality:FINAL <> ($receiver:T of <uninitialized parent>) returnType:kotlin.Int
|
|
||||||
correspondingProperty: PROPERTY name:testExt4 visibility:public modality:FINAL [var]
|
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:T of <uninitialized parent>
|
|
||||||
BLOCK_BODY
|
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-testExt4> (): kotlin.Int declared in <root>'
|
|
||||||
CONST Int type=kotlin.Int value=42
|
|
||||||
FUN name:<set-testExt4> visibility:public modality:FINAL <> ($receiver:T of <uninitialized parent>, value:kotlin.Int) returnType:kotlin.Unit
|
|
||||||
correspondingProperty: PROPERTY name:testExt4 visibility:public modality:FINAL [var]
|
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:T of <uninitialized parent>
|
|
||||||
VALUE_PARAMETER name:value index:0 type:kotlin.Int
|
|
||||||
BLOCK_BODY
|
|
||||||
CLASS CLASS name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]
|
|
||||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Host<T of <root>.Host>
|
|
||||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?]
|
|
||||||
CONSTRUCTOR visibility:public <> () returnType:<root>.Host<T of <root>.Host> [primary]
|
|
||||||
BLOCK_BODY
|
|
||||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in kotlin.Any'
|
|
||||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]'
|
|
||||||
PROPERTY name:testMem1 visibility:public modality:FINAL [val]
|
|
||||||
FUN name:<get-testMem1> visibility:public modality:FINAL <> ($this:<root>.Host<T of <root>.Host>) returnType:kotlin.Int
|
|
||||||
correspondingProperty: PROPERTY name:testMem1 visibility:public modality:FINAL [val]
|
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host<T of <root>.Host>
|
|
||||||
BLOCK_BODY
|
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-testMem1> (): kotlin.Int declared in <root>.Host'
|
|
||||||
CONST Int type=kotlin.Int value=42
|
|
||||||
PROPERTY name:testMem2 visibility:public modality:FINAL [var]
|
|
||||||
FUN name:<get-testMem2> visibility:public modality:FINAL <> ($this:<root>.Host<T of <root>.Host>) returnType:kotlin.Int
|
|
||||||
correspondingProperty: PROPERTY name:testMem2 visibility:public modality:FINAL [var]
|
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host<T of <root>.Host>
|
|
||||||
BLOCK_BODY
|
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-testMem2> (): kotlin.Int declared in <root>.Host'
|
|
||||||
CONST Int type=kotlin.Int value=42
|
|
||||||
FUN name:<set-testMem2> visibility:public modality:FINAL <> ($this:<root>.Host<T of <root>.Host>, value:kotlin.Int) returnType:kotlin.Unit
|
|
||||||
correspondingProperty: PROPERTY name:testMem2 visibility:public modality:FINAL [var]
|
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host<T of <root>.Host>
|
|
||||||
VALUE_PARAMETER name:value index:0 type:kotlin.Int
|
|
||||||
BLOCK_BODY
|
|
||||||
PROPERTY name:testMemExt1 visibility:public modality:FINAL [val]
|
|
||||||
FUN name:<get-testMemExt1> visibility:public modality:FINAL <> ($this:<root>.Host<T of <root>.Host>, $receiver:kotlin.String) returnType:kotlin.Int
|
|
||||||
correspondingProperty: PROPERTY name:testMemExt1 visibility:public modality:FINAL [val]
|
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host<T of <root>.Host>
|
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:kotlin.String
|
|
||||||
BLOCK_BODY
|
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-testMemExt1> (): kotlin.Int declared in <root>.Host'
|
|
||||||
CONST Int type=kotlin.Int value=42
|
|
||||||
PROPERTY name:testMemExt2 visibility:public modality:FINAL [var]
|
|
||||||
FUN name:<get-testMemExt2> visibility:public modality:FINAL <> ($this:<root>.Host<T of <root>.Host>, $receiver:kotlin.String) returnType:kotlin.Int
|
|
||||||
correspondingProperty: PROPERTY name:testMemExt2 visibility:public modality:FINAL [var]
|
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host<T of <root>.Host>
|
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:kotlin.String
|
|
||||||
BLOCK_BODY
|
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-testMemExt2> (): kotlin.Int declared in <root>.Host'
|
|
||||||
CONST Int type=kotlin.Int value=42
|
|
||||||
FUN name:<set-testMemExt2> visibility:public modality:FINAL <> ($this:<root>.Host<T of <root>.Host>, $receiver:kotlin.String, value:kotlin.Int) returnType:kotlin.Unit
|
|
||||||
correspondingProperty: PROPERTY name:testMemExt2 visibility:public modality:FINAL [var]
|
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host<T of <root>.Host>
|
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:kotlin.String
|
|
||||||
VALUE_PARAMETER name:value index:0 type:kotlin.Int
|
|
||||||
BLOCK_BODY
|
|
||||||
PROPERTY name:testMemExt3 visibility:public modality:FINAL [val]
|
|
||||||
FUN name:<get-testMemExt3> visibility:public modality:FINAL <> ($this:<root>.Host<T of <root>.Host>, $receiver:TT of <uninitialized parent>) returnType:kotlin.Int
|
|
||||||
correspondingProperty: PROPERTY name:testMemExt3 visibility:public modality:FINAL [val]
|
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host<T of <root>.Host>
|
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:TT of <uninitialized parent>
|
|
||||||
BLOCK_BODY
|
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-testMemExt3> (): kotlin.Int declared in <root>.Host'
|
|
||||||
CONST Int type=kotlin.Int value=42
|
|
||||||
PROPERTY name:testMemExt4 visibility:public modality:FINAL [var]
|
|
||||||
FUN name:<get-testMemExt4> visibility:public modality:FINAL <> ($this:<root>.Host<T of <root>.Host>, $receiver:TT of <uninitialized parent>) returnType:kotlin.Int
|
|
||||||
correspondingProperty: PROPERTY name:testMemExt4 visibility:public modality:FINAL [var]
|
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host<T of <root>.Host>
|
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:TT of <uninitialized parent>
|
|
||||||
BLOCK_BODY
|
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-testMemExt4> (): kotlin.Int declared in <root>.Host'
|
|
||||||
CONST Int type=kotlin.Int value=42
|
|
||||||
FUN name:<set-testMemExt4> visibility:public modality:FINAL <> ($this:<root>.Host<T of <root>.Host>, $receiver:TT of <uninitialized parent>, value:kotlin.Int) returnType:kotlin.Unit
|
|
||||||
correspondingProperty: PROPERTY name:testMemExt4 visibility:public modality:FINAL [var]
|
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host<T of <root>.Host>
|
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:TT of <uninitialized parent>
|
|
||||||
VALUE_PARAMETER name:value index:0 type:kotlin.Int
|
|
||||||
BLOCK_BODY
|
|
||||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
|
||||||
overridden:
|
|
||||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
|
|
||||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
|
||||||
VALUE_PARAMETER name:other index:0 type:kotlin.Any?
|
|
||||||
FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override]
|
|
||||||
overridden:
|
|
||||||
public open fun hashCode (): kotlin.Int declared in kotlin.Any
|
|
||||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
|
||||||
FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override]
|
|
||||||
overridden:
|
|
||||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
|
||||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
|
||||||
@@ -1,3 +1,5 @@
|
|||||||
|
// FIR_IDENTICAL
|
||||||
|
|
||||||
val test1 get() = 42
|
val test1 get() = 42
|
||||||
|
|
||||||
var test2 get() = 42; set(value) {}
|
var test2 get() = 42; set(value) {}
|
||||||
|
|||||||
+8
-4
@@ -25,12 +25,16 @@ FILE fqName:<root> fileName:/typeParameterBeforeBound.kt
|
|||||||
TYPE_PARAMETER name:U index:0 variance: superTypes:[kotlin.Any?]
|
TYPE_PARAMETER name:U index:0 variance: superTypes:[kotlin.Any?]
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
PROPERTY name:test3 visibility:public modality:FINAL [var]
|
PROPERTY name:test3 visibility:public modality:FINAL [var]
|
||||||
FUN name:<get-test3> visibility:public modality:FINAL <> ($receiver:<root>.Test1<T of <uninitialized parent>, U of <uninitialized parent>>) returnType:kotlin.Unit
|
FUN name:<get-test3> visibility:public modality:FINAL <T, U> ($receiver:<root>.Test1<T of <root>.<get-test3>, U of <root>.<get-test3>>) returnType:kotlin.Unit
|
||||||
correspondingProperty: PROPERTY name:test3 visibility:public modality:FINAL [var]
|
correspondingProperty: PROPERTY name:test3 visibility:public modality:FINAL [var]
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.Test1<T of <uninitialized parent>, U of <uninitialized parent>>
|
TYPE_PARAMETER name:T index:0 variance: superTypes:[U of <root>.<get-test3>]
|
||||||
|
TYPE_PARAMETER name:U index:0 variance: superTypes:[kotlin.Any?]
|
||||||
|
$receiver: VALUE_PARAMETER name:<this> type:<root>.Test1<T of <root>.<get-test3>, U of <root>.<get-test3>>
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
FUN name:<set-test3> visibility:public modality:FINAL <> ($receiver:<root>.Test1<T of <uninitialized parent>, U of <uninitialized parent>>, value:kotlin.Unit) returnType:kotlin.Unit
|
FUN name:<set-test3> visibility:public modality:FINAL <T, U> ($receiver:<root>.Test1<T of <root>.<get-test3>, U of <root>.<get-test3>>, value:kotlin.Unit) returnType:kotlin.Unit
|
||||||
correspondingProperty: PROPERTY name:test3 visibility:public modality:FINAL [var]
|
correspondingProperty: PROPERTY name:test3 visibility:public modality:FINAL [var]
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.Test1<T of <uninitialized parent>, U of <uninitialized parent>>
|
TYPE_PARAMETER name:T index:0 variance: superTypes:[U of <root>.<get-test3>]
|
||||||
|
TYPE_PARAMETER name:U index:1 variance: superTypes:[kotlin.Any?]
|
||||||
|
$receiver: VALUE_PARAMETER name:<this> type:<root>.Test1<T of <root>.<get-test3>, U of <root>.<get-test3>>
|
||||||
VALUE_PARAMETER name:value index:0 type:kotlin.Unit
|
VALUE_PARAMETER name:value index:0 type:kotlin.Unit
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
|
|||||||
@@ -14,13 +14,14 @@ FILE fqName:<root> fileName:/castToTypeParameter.kt
|
|||||||
TYPE_OP type=T of <root>.castExtFun origin=CAST typeOperand=T of <root>.castExtFun
|
TYPE_OP type=T of <root>.castExtFun origin=CAST typeOperand=T of <root>.castExtFun
|
||||||
GET_VAR '<this>: kotlin.Any declared in <root>.castExtFun' type=kotlin.Any origin=null
|
GET_VAR '<this>: kotlin.Any declared in <root>.castExtFun' type=kotlin.Any origin=null
|
||||||
PROPERTY name:castExtVal visibility:public modality:FINAL [val]
|
PROPERTY name:castExtVal visibility:public modality:FINAL [val]
|
||||||
FUN name:<get-castExtVal> visibility:public modality:FINAL <> ($receiver:T of <uninitialized parent>) returnType:T of <uninitialized parent>
|
FUN name:<get-castExtVal> visibility:public modality:FINAL <T> ($receiver:T of <root>.<get-castExtVal>) returnType:T of <root>.<get-castExtVal>
|
||||||
correspondingProperty: PROPERTY name:castExtVal visibility:public modality:FINAL [val]
|
correspondingProperty: PROPERTY name:castExtVal visibility:public modality:FINAL [val]
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:T of <uninitialized parent>
|
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?]
|
||||||
|
$receiver: VALUE_PARAMETER name:<this> type:T of <root>.<get-castExtVal>
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-castExtVal> (): T of <uninitialized parent> declared in <root>'
|
RETURN type=kotlin.Nothing from='public final fun <get-castExtVal> <T> (): T of <root>.<get-castExtVal> declared in <root>'
|
||||||
TYPE_OP type=T of <uninitialized parent> origin=CAST typeOperand=T of <uninitialized parent>
|
TYPE_OP type=T of <root>.<get-castExtVal> origin=CAST typeOperand=T of <root>.<get-castExtVal>
|
||||||
ERROR_CALL 'Unresolved reference: this@R|/castExtVal|' type=T of <uninitialized parent>
|
ERROR_CALL 'Unresolved reference: this@R|/castExtVal|' type=T of <root>.<get-castExtVal>
|
||||||
CLASS CLASS name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]
|
CLASS CLASS name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Host<T of <root>.Host>
|
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Host<T of <root>.Host>
|
||||||
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?]
|
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?]
|
||||||
@@ -68,14 +69,15 @@ FILE fqName:<root> fileName:/castToTypeParameter.kt
|
|||||||
TYPE_OP type=T of <root>.Host origin=CAST typeOperand=T of <root>.Host
|
TYPE_OP type=T of <root>.Host origin=CAST typeOperand=T of <root>.Host
|
||||||
ERROR_CALL 'Unresolved reference: this@R|/Host.castMemberExtVal|' type=kotlin.Any
|
ERROR_CALL 'Unresolved reference: this@R|/Host.castMemberExtVal|' type=kotlin.Any
|
||||||
PROPERTY name:castGenericMemberExtVal visibility:public modality:FINAL [val]
|
PROPERTY name:castGenericMemberExtVal visibility:public modality:FINAL [val]
|
||||||
FUN name:<get-castGenericMemberExtVal> visibility:public modality:FINAL <> ($this:<root>.Host<T of <root>.Host>, $receiver:TV of <uninitialized parent>) returnType:TV of <uninitialized parent>
|
FUN name:<get-castGenericMemberExtVal> visibility:public modality:FINAL <TV> ($this:<root>.Host<T of <root>.Host>, $receiver:TV of <root>.Host.<get-castGenericMemberExtVal>) returnType:TV of <root>.Host.<get-castGenericMemberExtVal>
|
||||||
correspondingProperty: PROPERTY name:castGenericMemberExtVal visibility:public modality:FINAL [val]
|
correspondingProperty: PROPERTY name:castGenericMemberExtVal visibility:public modality:FINAL [val]
|
||||||
|
TYPE_PARAMETER name:TV index:0 variance: superTypes:[kotlin.Any?]
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host<T of <root>.Host>
|
$this: VALUE_PARAMETER name:<this> type:<root>.Host<T of <root>.Host>
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:TV of <uninitialized parent>
|
$receiver: VALUE_PARAMETER name:<this> type:TV of <root>.Host.<get-castGenericMemberExtVal>
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-castGenericMemberExtVal> (): TV of <uninitialized parent> declared in <root>.Host'
|
RETURN type=kotlin.Nothing from='public final fun <get-castGenericMemberExtVal> <TV> (): TV of <root>.Host.<get-castGenericMemberExtVal> declared in <root>.Host'
|
||||||
TYPE_OP type=TV of <uninitialized parent> origin=CAST typeOperand=TV of <uninitialized parent>
|
TYPE_OP type=TV of <root>.Host.<get-castGenericMemberExtVal> origin=CAST typeOperand=TV of <root>.Host.<get-castGenericMemberExtVal>
|
||||||
ERROR_CALL 'Unresolved reference: this@R|/Host.castGenericMemberExtVal|' type=TV of <uninitialized parent>
|
ERROR_CALL 'Unresolved reference: this@R|/Host.castGenericMemberExtVal|' type=TV of <root>.Host.<get-castGenericMemberExtVal>
|
||||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||||
overridden:
|
overridden:
|
||||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
|
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
|
||||||
|
|||||||
@@ -24,5 +24,11 @@ FILE fqName:<root> fileName:/classReference.kt
|
|||||||
GET_OBJECT 'CLASS CLASS name:A modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.Unit
|
GET_OBJECT 'CLASS CLASS name:A modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.Unit
|
||||||
GET_CLASS type=kotlin.reflect.KClass<<root>.A>
|
GET_CLASS type=kotlin.reflect.KClass<<root>.A>
|
||||||
CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in <root>.A' type=<root>.A origin=null
|
CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in <root>.A' type=<root>.A origin=null
|
||||||
ERROR_EXPR 'Cannot bind 1 type arguments to <get-java> call with 0 type parameters' type=java.lang.Class<<root>.A>
|
CALL 'public final fun <get-java> <T> (): java.lang.Class<T of kotlin.jvm.<get-java>> declared in kotlin.jvm' type=java.lang.Class<<root>.A> origin=null
|
||||||
ERROR_EXPR 'Cannot bind 1 type arguments to <get-java> call with 0 type parameters' type=java.lang.Class<<root>.A>
|
<T>: <root>.A
|
||||||
|
$receiver: GET_CLASS type=kotlin.reflect.KClass<<root>.A>
|
||||||
|
GET_OBJECT 'CLASS CLASS name:A modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.Unit
|
||||||
|
CALL 'public final fun <get-java> <T> (): java.lang.Class<T of kotlin.jvm.<get-java>> declared in kotlin.jvm' type=java.lang.Class<<root>.A> origin=null
|
||||||
|
<T>: <root>.A
|
||||||
|
$receiver: GET_CLASS type=kotlin.reflect.KClass<<root>.A>
|
||||||
|
CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in <root>.A' type=<root>.A origin=null
|
||||||
|
|||||||
@@ -1,15 +1,18 @@
|
|||||||
FILE fqName:<root> fileName:/genericPropertyCall.kt
|
FILE fqName:<root> fileName:/genericPropertyCall.kt
|
||||||
PROPERTY name:id visibility:public modality:FINAL [val]
|
PROPERTY name:id visibility:public modality:FINAL [val]
|
||||||
FUN name:<get-id> visibility:public modality:FINAL <> ($receiver:T of <uninitialized parent>) returnType:T of <uninitialized parent>
|
FUN name:<get-id> visibility:public modality:FINAL <T> ($receiver:T of <root>.<get-id>) returnType:T of <root>.<get-id>
|
||||||
correspondingProperty: PROPERTY name:id visibility:public modality:FINAL [val]
|
correspondingProperty: PROPERTY name:id visibility:public modality:FINAL [val]
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:T of <uninitialized parent>
|
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?]
|
||||||
|
$receiver: VALUE_PARAMETER name:<this> type:T of <root>.<get-id>
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-id> (): T of <uninitialized parent> declared in <root>'
|
RETURN type=kotlin.Nothing from='public final fun <get-id> <T> (): T of <root>.<get-id> declared in <root>'
|
||||||
ERROR_CALL 'Unresolved reference: this@R|/id|' type=T of <uninitialized parent>
|
ERROR_CALL 'Unresolved reference: this@R|/id|' type=T of <root>.<get-id>
|
||||||
PROPERTY name:test visibility:public modality:FINAL [val]
|
PROPERTY name:test visibility:public modality:FINAL [val]
|
||||||
FIELD PROPERTY_BACKING_FIELD name:test type:kotlin.String visibility:private [final,static]
|
FIELD PROPERTY_BACKING_FIELD name:test type:kotlin.String visibility:private [final,static]
|
||||||
EXPRESSION_BODY
|
EXPRESSION_BODY
|
||||||
ERROR_EXPR 'Cannot bind 1 type arguments to <get-id> call with 0 type parameters' type=kotlin.String
|
CALL 'public final fun <get-id> <T> (): T of <root>.<get-id> declared in <root>' type=kotlin.String origin=null
|
||||||
|
<T>: kotlin.String
|
||||||
|
$receiver: CONST String type=kotlin.String value="abc"
|
||||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-test> visibility:public modality:FINAL <> () returnType:kotlin.String
|
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-test> visibility:public modality:FINAL <> () returnType:kotlin.String
|
||||||
correspondingProperty: PROPERTY name:test visibility:public modality:FINAL [val]
|
correspondingProperty: PROPERTY name:test visibility:public modality:FINAL [val]
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
|
|||||||
@@ -68,30 +68,32 @@ FILE fqName:<root> fileName:/genericPropertyRef.kt
|
|||||||
FIELD PROPERTY_DELEGATE name:additionalText$delegate type:<root>.DVal visibility:private [final,static]
|
FIELD PROPERTY_DELEGATE name:additionalText$delegate type:<root>.DVal visibility:private [final,static]
|
||||||
EXPRESSION_BODY
|
EXPRESSION_BODY
|
||||||
CONSTRUCTOR_CALL 'public constructor <init> (kmember: kotlin.Any) [primary] declared in <root>.DVal' type=<root>.DVal origin=null
|
CONSTRUCTOR_CALL 'public constructor <init> (kmember: kotlin.Any) [primary] declared in <root>.DVal' type=<root>.DVal origin=null
|
||||||
kmember: PROPERTY_REFERENCE 'public final text: kotlin.String? [var]' field='FIELD PROPERTY_BACKING_FIELD name:text type:kotlin.String? visibility:private' getter='public final fun <get-text> (): kotlin.String? declared in <root>.Value' setter='public final fun <set-text> (<set-?>: kotlin.String?): kotlin.Unit declared in <root>.Value' type=kotlin.reflect.KMutableProperty1<<root>.Value<T of <uninitialized parent>>, kotlin.String?> origin=null
|
kmember: PROPERTY_REFERENCE 'public final text: kotlin.String? [var]' field='FIELD PROPERTY_BACKING_FIELD name:text type:kotlin.String? visibility:private' getter='public final fun <get-text> (): kotlin.String? declared in <root>.Value' setter='public final fun <set-text> (<set-?>: kotlin.String?): kotlin.Unit declared in <root>.Value' type=kotlin.reflect.KMutableProperty1<<root>.Value<T of <root>.<get-additionalText>>, kotlin.String?> origin=null
|
||||||
FUN DELEGATED_PROPERTY_ACCESSOR name:<get-additionalText> visibility:public modality:FINAL <> ($receiver:<root>.Value<T of <uninitialized parent>>) returnType:kotlin.Int
|
FUN DELEGATED_PROPERTY_ACCESSOR name:<get-additionalText> visibility:public modality:FINAL <T> ($receiver:<root>.Value<T of <root>.<get-additionalText>>) returnType:kotlin.Int
|
||||||
correspondingProperty: PROPERTY name:additionalText visibility:public modality:FINAL [delegated,val]
|
correspondingProperty: PROPERTY name:additionalText visibility:public modality:FINAL [delegated,val]
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.Value<T of <uninitialized parent>>
|
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?]
|
||||||
|
$receiver: VALUE_PARAMETER name:<this> type:<root>.Value<T of <root>.<get-additionalText>>
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-additionalText> (): kotlin.Int declared in <root>'
|
RETURN type=kotlin.Nothing from='public final fun <get-additionalText> <T> (): kotlin.Int declared in <root>'
|
||||||
CALL 'public final fun getValue (t: kotlin.Any?, p: kotlin.Any): kotlin.Int [operator] declared in <root>.DVal' type=kotlin.Int origin=null
|
CALL 'public final fun getValue (t: kotlin.Any?, p: kotlin.Any): kotlin.Int [operator] declared in <root>.DVal' type=kotlin.Int origin=null
|
||||||
$this: GET_FIELD 'FIELD PROPERTY_DELEGATE name:additionalText$delegate type:<root>.DVal visibility:private [final,static]' type=<root>.DVal origin=GET_PROPERTY
|
$this: GET_FIELD 'FIELD PROPERTY_DELEGATE name:additionalText$delegate type:<root>.DVal visibility:private [final,static]' type=<root>.DVal origin=GET_PROPERTY
|
||||||
t: ERROR_CALL 'Unresolved reference: this@R|/additionalText|' type=<root>.Value<T of <uninitialized parent>>
|
t: ERROR_CALL 'Unresolved reference: this@R|/additionalText|' type=<root>.Value<T of <root>.<get-additionalText>>
|
||||||
p: PROPERTY_REFERENCE 'public final additionalText: kotlin.Int [delegated,val]' field='FIELD PROPERTY_DELEGATE name:additionalText$delegate type:<root>.DVal visibility:private [final,static]' getter='public final fun <get-additionalText> (): kotlin.Int declared in <root>' setter=null type=kotlin.reflect.KProperty<*> origin=null
|
p: PROPERTY_REFERENCE 'public final additionalText: kotlin.Int [delegated,val]' field='FIELD PROPERTY_DELEGATE name:additionalText$delegate type:<root>.DVal visibility:private [final,static]' getter='public final fun <get-additionalText> <T> (): kotlin.Int declared in <root>' setter=null type=kotlin.reflect.KProperty<*> origin=null
|
||||||
PROPERTY name:additionalValue visibility:public modality:FINAL [delegated,val]
|
PROPERTY name:additionalValue visibility:public modality:FINAL [delegated,val]
|
||||||
FIELD PROPERTY_DELEGATE name:additionalValue$delegate type:<root>.DVal visibility:private [final,static]
|
FIELD PROPERTY_DELEGATE name:additionalValue$delegate type:<root>.DVal visibility:private [final,static]
|
||||||
EXPRESSION_BODY
|
EXPRESSION_BODY
|
||||||
CONSTRUCTOR_CALL 'public constructor <init> (kmember: kotlin.Any) [primary] declared in <root>.DVal' type=<root>.DVal origin=null
|
CONSTRUCTOR_CALL 'public constructor <init> (kmember: kotlin.Any) [primary] declared in <root>.DVal' type=<root>.DVal origin=null
|
||||||
kmember: PROPERTY_REFERENCE 'public final value: T of <uninitialized parent> [var]' field=null getter='public final fun <get-value> (): T of <uninitialized parent> declared in <root>.Value' setter='public final fun <set-value> (<set-?>: T of <uninitialized parent>): kotlin.Unit declared in <root>.Value' type=kotlin.reflect.KMutableProperty1<<root>.Value<T of <uninitialized parent>>, T of <uninitialized parent>> origin=null
|
kmember: PROPERTY_REFERENCE 'public final value: T of <root>.<get-additionalValue> [var]' field=null getter='public final fun <get-value> (): T of <root>.<get-additionalValue> declared in <root>.Value' setter='public final fun <set-value> (<set-?>: T of <uninitialized parent>): kotlin.Unit declared in <root>.Value' type=kotlin.reflect.KMutableProperty1<<root>.Value<T of <root>.<get-additionalValue>>, T of <root>.<get-additionalValue>> origin=null
|
||||||
FUN DELEGATED_PROPERTY_ACCESSOR name:<get-additionalValue> visibility:public modality:FINAL <> ($receiver:<root>.Value<T of <uninitialized parent>>) returnType:kotlin.Int
|
FUN DELEGATED_PROPERTY_ACCESSOR name:<get-additionalValue> visibility:public modality:FINAL <T> ($receiver:<root>.Value<T of <root>.<get-additionalValue>>) returnType:kotlin.Int
|
||||||
correspondingProperty: PROPERTY name:additionalValue visibility:public modality:FINAL [delegated,val]
|
correspondingProperty: PROPERTY name:additionalValue visibility:public modality:FINAL [delegated,val]
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.Value<T of <uninitialized parent>>
|
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?]
|
||||||
|
$receiver: VALUE_PARAMETER name:<this> type:<root>.Value<T of <root>.<get-additionalValue>>
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-additionalValue> (): kotlin.Int declared in <root>'
|
RETURN type=kotlin.Nothing from='public final fun <get-additionalValue> <T> (): kotlin.Int declared in <root>'
|
||||||
CALL 'public final fun getValue (t: kotlin.Any?, p: kotlin.Any): kotlin.Int [operator] declared in <root>.DVal' type=kotlin.Int origin=null
|
CALL 'public final fun getValue (t: kotlin.Any?, p: kotlin.Any): kotlin.Int [operator] declared in <root>.DVal' type=kotlin.Int origin=null
|
||||||
$this: GET_FIELD 'FIELD PROPERTY_DELEGATE name:additionalValue$delegate type:<root>.DVal visibility:private [final,static]' type=<root>.DVal origin=GET_PROPERTY
|
$this: GET_FIELD 'FIELD PROPERTY_DELEGATE name:additionalValue$delegate type:<root>.DVal visibility:private [final,static]' type=<root>.DVal origin=GET_PROPERTY
|
||||||
t: ERROR_CALL 'Unresolved reference: this@R|/additionalValue|' type=<root>.Value<T of <uninitialized parent>>
|
t: ERROR_CALL 'Unresolved reference: this@R|/additionalValue|' type=<root>.Value<T of <root>.<get-additionalValue>>
|
||||||
p: PROPERTY_REFERENCE 'public final additionalValue: kotlin.Int [delegated,val]' field='FIELD PROPERTY_DELEGATE name:additionalValue$delegate type:<root>.DVal visibility:private [final,static]' getter='public final fun <get-additionalValue> (): kotlin.Int declared in <root>' setter=null type=kotlin.reflect.KProperty<*> origin=null
|
p: PROPERTY_REFERENCE 'public final additionalValue: kotlin.Int [delegated,val]' field='FIELD PROPERTY_DELEGATE name:additionalValue$delegate type:<root>.DVal visibility:private [final,static]' getter='public final fun <get-additionalValue> <T> (): kotlin.Int declared in <root>' setter=null type=kotlin.reflect.KProperty<*> origin=null
|
||||||
CLASS CLASS name:DVal modality:FINAL visibility:public superTypes:[kotlin.Any]
|
CLASS CLASS name:DVal modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.DVal
|
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.DVal
|
||||||
CONSTRUCTOR visibility:public <> (kmember:kotlin.Any) returnType:<root>.DVal [primary]
|
CONSTRUCTOR visibility:public <> (kmember:kotlin.Any) returnType:<root>.DVal [primary]
|
||||||
@@ -161,25 +163,27 @@ FILE fqName:<root> fileName:/genericPropertyRef.kt
|
|||||||
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:value2 type:kotlin.Any? visibility:private [static]' type=kotlin.Unit origin=null
|
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:value2 type:kotlin.Any? visibility:private [static]' type=kotlin.Unit origin=null
|
||||||
value: GET_VAR '<set-?>: kotlin.Any? declared in <root>.<set-value2>' type=kotlin.Any? origin=null
|
value: GET_VAR '<set-?>: kotlin.Any? declared in <root>.<set-value2>' type=kotlin.Any? origin=null
|
||||||
PROPERTY name:bar visibility:public modality:FINAL [var]
|
PROPERTY name:bar visibility:public modality:FINAL [var]
|
||||||
FUN name:<get-bar> visibility:public modality:FINAL <> ($receiver:T of <uninitialized parent>) returnType:T of <uninitialized parent>
|
FUN name:<get-bar> visibility:public modality:FINAL <T> ($receiver:T of <root>.<get-bar>) returnType:T of <root>.<get-bar>
|
||||||
correspondingProperty: PROPERTY name:bar visibility:public modality:FINAL [var]
|
correspondingProperty: PROPERTY name:bar visibility:public modality:FINAL [var]
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:T of <uninitialized parent>
|
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?]
|
||||||
|
$receiver: VALUE_PARAMETER name:<this> type:T of <root>.<get-bar>
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-bar> (): T of <uninitialized parent> declared in <root>'
|
RETURN type=kotlin.Nothing from='public final fun <get-bar> <T> (): T of <root>.<get-bar> declared in <root>'
|
||||||
ERROR_CALL 'Unresolved reference: this@R|/bar|' type=T of <uninitialized parent>
|
ERROR_CALL 'Unresolved reference: this@R|/bar|' type=T of <root>.<get-bar>
|
||||||
FUN name:<set-bar> visibility:public modality:FINAL <> ($receiver:T of <uninitialized parent>, value:T of <uninitialized parent>) returnType:kotlin.Unit
|
FUN name:<set-bar> visibility:public modality:FINAL <T> ($receiver:T of <root>.<set-bar>, value:T of <root>.<get-bar>) returnType:kotlin.Unit
|
||||||
correspondingProperty: PROPERTY name:bar visibility:public modality:FINAL [var]
|
correspondingProperty: PROPERTY name:bar visibility:public modality:FINAL [var]
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:T of <uninitialized parent>
|
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?]
|
||||||
VALUE_PARAMETER name:value index:0 type:T of <uninitialized parent>
|
$receiver: VALUE_PARAMETER name:<this> type:T of <root>.<set-bar>
|
||||||
|
VALUE_PARAMETER name:value index:0 type:T of <root>.<get-bar>
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:recivier type:kotlin.Any? visibility:private [static]' type=kotlin.Unit origin=null
|
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:recivier type:kotlin.Any? visibility:private [static]' type=kotlin.Unit origin=null
|
||||||
value: ERROR_CALL 'Unresolved reference: this@R|/bar|' type=T of <uninitialized parent>
|
value: ERROR_CALL 'Unresolved reference: this@R|/bar|' type=T of <root>.<get-bar>
|
||||||
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:value2 type:kotlin.Any? visibility:private [static]' type=kotlin.Unit origin=null
|
SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:value2 type:kotlin.Any? visibility:private [static]' type=kotlin.Unit origin=null
|
||||||
value: GET_VAR 'value: T of <uninitialized parent> declared in <root>.<set-bar>' type=T of <uninitialized parent> origin=null
|
value: GET_VAR 'value: T of <root>.<get-bar> declared in <root>.<set-bar>' type=T of <root>.<get-bar> origin=null
|
||||||
PROPERTY name:barRef visibility:public modality:FINAL [val]
|
PROPERTY name:barRef visibility:public modality:FINAL [val]
|
||||||
FIELD PROPERTY_BACKING_FIELD name:barRef type:kotlin.reflect.KMutableProperty1<kotlin.String?, kotlin.String?> visibility:private [final,static]
|
FIELD PROPERTY_BACKING_FIELD name:barRef type:kotlin.reflect.KMutableProperty1<kotlin.String?, kotlin.String?> visibility:private [final,static]
|
||||||
EXPRESSION_BODY
|
EXPRESSION_BODY
|
||||||
PROPERTY_REFERENCE 'public final bar: T of <uninitialized parent> [var]' field=null getter='public final fun <get-bar> (): T of <uninitialized parent> declared in <root>' setter='public final fun <set-bar> (value: T of <uninitialized parent>): kotlin.Unit declared in <root>' type=kotlin.reflect.KMutableProperty1<kotlin.String?, kotlin.String?> origin=null
|
PROPERTY_REFERENCE 'public final bar: T of <root>.<get-bar> [var]' field=null getter='public final fun <get-bar> <T> (): T of <root>.<get-bar> declared in <root>' setter='public final fun <set-bar> <T> (value: T of <root>.<get-bar>): kotlin.Unit declared in <root>' type=kotlin.reflect.KMutableProperty1<kotlin.String?, kotlin.String?> origin=null
|
||||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-barRef> visibility:public modality:FINAL <> () returnType:kotlin.reflect.KMutableProperty1<kotlin.String?, kotlin.String?>
|
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-barRef> visibility:public modality:FINAL <> () returnType:kotlin.reflect.KMutableProperty1<kotlin.String?, kotlin.String?>
|
||||||
correspondingProperty: PROPERTY name:barRef visibility:public modality:FINAL [val]
|
correspondingProperty: PROPERTY name:barRef visibility:public modality:FINAL [val]
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
|
|||||||
+8
-7
@@ -29,16 +29,17 @@ FILE fqName:<root> fileName:/implicitCastToTypeParameter.kt
|
|||||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||||
PROPERTY name:asT visibility:public modality:FINAL [val]
|
PROPERTY name:asT visibility:public modality:FINAL [val]
|
||||||
FUN name:<get-asT> visibility:public modality:FINAL <> ($receiver:<root>.Foo<T of <uninitialized parent>>) returnType:T of <uninitialized parent>?
|
FUN name:<get-asT> visibility:public modality:FINAL <T> ($receiver:<root>.Foo<T of <root>.<get-asT>>) returnType:T of <root>.<get-asT>?
|
||||||
correspondingProperty: PROPERTY name:asT visibility:public modality:FINAL [val]
|
correspondingProperty: PROPERTY name:asT visibility:public modality:FINAL [val]
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.Foo<T of <uninitialized parent>>
|
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any]
|
||||||
|
$receiver: VALUE_PARAMETER name:<this> type:<root>.Foo<T of <root>.<get-asT>>
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-asT> (): T of <uninitialized parent>? declared in <root>'
|
RETURN type=kotlin.Nothing from='public final fun <get-asT> <T> (): T of <root>.<get-asT>? declared in <root>'
|
||||||
WHEN type=T of <uninitialized parent>? origin=IF
|
WHEN type=T of <root>.<get-asT>? origin=IF
|
||||||
BRANCH
|
BRANCH
|
||||||
if: TYPE_OP type=kotlin.Boolean origin=INSTANCEOF typeOperand=T of <uninitialized parent>
|
if: TYPE_OP type=kotlin.Boolean origin=INSTANCEOF typeOperand=T of <root>.<get-asT>
|
||||||
ERROR_CALL 'Unresolved reference: this@R|/asT|' type=<root>.Foo<T of <uninitialized parent>>
|
ERROR_CALL 'Unresolved reference: this@R|/asT|' type=<root>.Foo<T of <root>.<get-asT>>
|
||||||
then: ERROR_CALL 'Unresolved reference: this@R|/asT|' type=T of <uninitialized parent>
|
then: ERROR_CALL 'Unresolved reference: this@R|/asT|' type=T of <root>.<get-asT>
|
||||||
BRANCH
|
BRANCH
|
||||||
if: CONST Boolean type=kotlin.Boolean value=true
|
if: CONST Boolean type=kotlin.Boolean value=true
|
||||||
then: CONST Null type=kotlin.Nothing? value=null
|
then: CONST Null type=kotlin.Nothing? value=null
|
||||||
|
|||||||
@@ -22,4 +22,7 @@ FILE fqName:<root> fileName:/objectClassReference.kt
|
|||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
GET_CLASS type=kotlin.reflect.KClass<<root>.A>
|
GET_CLASS type=kotlin.reflect.KClass<<root>.A>
|
||||||
GET_OBJECT 'CLASS OBJECT name:A modality:FINAL visibility:public superTypes:[kotlin.Any]' type=<root>.A
|
GET_OBJECT 'CLASS OBJECT name:A modality:FINAL visibility:public superTypes:[kotlin.Any]' type=<root>.A
|
||||||
ERROR_EXPR 'Cannot bind 1 type arguments to <get-java> call with 0 type parameters' type=java.lang.Class<<root>.A>
|
CALL 'public final fun <get-java> <T> (): java.lang.Class<T of kotlin.jvm.<get-java>> declared in kotlin.jvm' type=java.lang.Class<<root>.A> origin=null
|
||||||
|
<T>: <root>.A
|
||||||
|
$receiver: GET_CLASS type=kotlin.reflect.KClass<<root>.A>
|
||||||
|
GET_OBJECT 'CLASS OBJECT name:A modality:FINAL visibility:public superTypes:[kotlin.Any]' type=<root>.A
|
||||||
|
|||||||
@@ -11,12 +11,13 @@ FILE fqName:<root> fileName:/typeParameterClassLiteral.kt
|
|||||||
RETURN type=kotlin.Nothing from='public final fun classRefExtFun <T> (): kotlin.reflect.KClass<T of <root>.classRefExtFun> [inline] declared in <root>'
|
RETURN type=kotlin.Nothing from='public final fun classRefExtFun <T> (): kotlin.reflect.KClass<T of <root>.classRefExtFun> [inline] declared in <root>'
|
||||||
CLASS_REFERENCE 'TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any]' type=kotlin.reflect.KClass<T of <root>.classRefExtFun>
|
CLASS_REFERENCE 'TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any]' type=kotlin.reflect.KClass<T of <root>.classRefExtFun>
|
||||||
PROPERTY name:classRefExtVal visibility:public modality:FINAL [val]
|
PROPERTY name:classRefExtVal visibility:public modality:FINAL [val]
|
||||||
FUN name:<get-classRefExtVal> visibility:public modality:FINAL <> ($receiver:T of <uninitialized parent>) returnType:kotlin.reflect.KClass<T of <uninitialized parent>>
|
FUN name:<get-classRefExtVal> visibility:public modality:FINAL <T> ($receiver:T of <root>.<get-classRefExtVal>) returnType:kotlin.reflect.KClass<T of <root>.<get-classRefExtVal>>
|
||||||
correspondingProperty: PROPERTY name:classRefExtVal visibility:public modality:FINAL [val]
|
correspondingProperty: PROPERTY name:classRefExtVal visibility:public modality:FINAL [val]
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:T of <uninitialized parent>
|
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any]
|
||||||
|
$receiver: VALUE_PARAMETER name:<this> type:T of <root>.<get-classRefExtVal>
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-classRefExtVal> (): kotlin.reflect.KClass<T of <uninitialized parent>> declared in <root>'
|
RETURN type=kotlin.Nothing from='public final fun <get-classRefExtVal> <T> (): kotlin.reflect.KClass<T of <root>.<get-classRefExtVal>> declared in <root>'
|
||||||
CLASS_REFERENCE 'TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any]' type=kotlin.reflect.KClass<T of <uninitialized parent>>
|
CLASS_REFERENCE 'TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any]' type=kotlin.reflect.KClass<T of <root>.<get-classRefExtVal>>
|
||||||
CLASS CLASS name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]
|
CLASS CLASS name:Host modality:FINAL visibility:public superTypes:[kotlin.Any]
|
||||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Host
|
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.Host
|
||||||
CONSTRUCTOR visibility:public <> () returnType:<root>.Host [primary]
|
CONSTRUCTOR visibility:public <> () returnType:<root>.Host [primary]
|
||||||
@@ -37,13 +38,14 @@ FILE fqName:<root> fileName:/typeParameterClassLiteral.kt
|
|||||||
RETURN type=kotlin.Nothing from='public final fun classRefGenericMemberExtFun <TF> (): kotlin.reflect.KClass<TF of <root>.Host.classRefGenericMemberExtFun> [inline] declared in <root>.Host'
|
RETURN type=kotlin.Nothing from='public final fun classRefGenericMemberExtFun <TF> (): kotlin.reflect.KClass<TF of <root>.Host.classRefGenericMemberExtFun> [inline] declared in <root>.Host'
|
||||||
CLASS_REFERENCE 'TYPE_PARAMETER name:TF index:0 variance: superTypes:[kotlin.Any]' type=kotlin.reflect.KClass<TF of <root>.Host.classRefGenericMemberExtFun>
|
CLASS_REFERENCE 'TYPE_PARAMETER name:TF index:0 variance: superTypes:[kotlin.Any]' type=kotlin.reflect.KClass<TF of <root>.Host.classRefGenericMemberExtFun>
|
||||||
PROPERTY name:classRefGenericMemberExtVal visibility:public modality:FINAL [val]
|
PROPERTY name:classRefGenericMemberExtVal visibility:public modality:FINAL [val]
|
||||||
FUN name:<get-classRefGenericMemberExtVal> visibility:public modality:FINAL <> ($this:<root>.Host, $receiver:TV of <uninitialized parent>) returnType:kotlin.reflect.KClass<TV of <uninitialized parent>>
|
FUN name:<get-classRefGenericMemberExtVal> visibility:public modality:FINAL <TV> ($this:<root>.Host, $receiver:TV of <root>.Host.<get-classRefGenericMemberExtVal>) returnType:kotlin.reflect.KClass<TV of <root>.Host.<get-classRefGenericMemberExtVal>>
|
||||||
correspondingProperty: PROPERTY name:classRefGenericMemberExtVal visibility:public modality:FINAL [val]
|
correspondingProperty: PROPERTY name:classRefGenericMemberExtVal visibility:public modality:FINAL [val]
|
||||||
|
TYPE_PARAMETER name:TV index:0 variance: superTypes:[kotlin.Any]
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
$this: VALUE_PARAMETER name:<this> type:<root>.Host
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:TV of <uninitialized parent>
|
$receiver: VALUE_PARAMETER name:<this> type:TV of <root>.Host.<get-classRefGenericMemberExtVal>
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-classRefGenericMemberExtVal> (): kotlin.reflect.KClass<TV of <uninitialized parent>> declared in <root>.Host'
|
RETURN type=kotlin.Nothing from='public final fun <get-classRefGenericMemberExtVal> <TV> (): kotlin.reflect.KClass<TV of <root>.Host.<get-classRefGenericMemberExtVal>> declared in <root>.Host'
|
||||||
CLASS_REFERENCE 'TYPE_PARAMETER name:TV index:0 variance: superTypes:[kotlin.Any]' type=kotlin.reflect.KClass<TV of <uninitialized parent>>
|
CLASS_REFERENCE 'TYPE_PARAMETER name:TV index:0 variance: superTypes:[kotlin.Any]' type=kotlin.reflect.KClass<TV of <root>.Host.<get-classRefGenericMemberExtVal>>
|
||||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||||
overridden:
|
overridden:
|
||||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
|
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
|
||||||
|
|||||||
@@ -35,13 +35,14 @@ FILE fqName:<root> fileName:/useImportedMember.kt
|
|||||||
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in kotlin.Any'
|
DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in kotlin.Any'
|
||||||
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:BaseClass modality:OPEN visibility:public superTypes:[kotlin.Any]'
|
INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:BaseClass modality:OPEN visibility:public superTypes:[kotlin.Any]'
|
||||||
PROPERTY name:fromClass visibility:public modality:FINAL [val]
|
PROPERTY name:fromClass visibility:public modality:FINAL [val]
|
||||||
FUN name:<get-fromClass> visibility:public modality:FINAL <> ($this:<root>.BaseClass, $receiver:T of <uninitialized parent>) returnType:T of <uninitialized parent>
|
FUN name:<get-fromClass> visibility:public modality:FINAL <T> ($this:<root>.BaseClass, $receiver:T of <root>.BaseClass.<get-fromClass>) returnType:T of <root>.BaseClass.<get-fromClass>
|
||||||
correspondingProperty: PROPERTY name:fromClass visibility:public modality:FINAL [val]
|
correspondingProperty: PROPERTY name:fromClass visibility:public modality:FINAL [val]
|
||||||
|
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?]
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.BaseClass
|
$this: VALUE_PARAMETER name:<this> type:<root>.BaseClass
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:T of <uninitialized parent>
|
$receiver: VALUE_PARAMETER name:<this> type:T of <root>.BaseClass.<get-fromClass>
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-fromClass> (): T of <uninitialized parent> declared in <root>.BaseClass'
|
RETURN type=kotlin.Nothing from='public final fun <get-fromClass> <T> (): T of <root>.BaseClass.<get-fromClass> declared in <root>.BaseClass'
|
||||||
ERROR_CALL 'Unresolved reference: this@R|/BaseClass.fromClass|' type=T of <uninitialized parent>
|
ERROR_CALL 'Unresolved reference: this@R|/BaseClass.fromClass|' type=T of <root>.BaseClass.<get-fromClass>
|
||||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||||
overridden:
|
overridden:
|
||||||
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
|
public open fun equals (other: kotlin.Any?): kotlin.Boolean [operator] declared in kotlin.Any
|
||||||
@@ -114,18 +115,19 @@ FILE fqName:<root> fileName:/useImportedMember.kt
|
|||||||
RETURN type=kotlin.Nothing from='public final fun g1 <T> (t: T of <root>.C.g1): T of <root>.C.g1 declared in <root>.C'
|
RETURN type=kotlin.Nothing from='public final fun g1 <T> (t: T of <root>.C.g1): T of <root>.C.g1 declared in <root>.C'
|
||||||
GET_VAR 't: T of <root>.C.g1 declared in <root>.C.g1' type=T of <root>.C.g1 origin=null
|
GET_VAR 't: T of <root>.C.g1 declared in <root>.C.g1' type=T of <root>.C.g1 origin=null
|
||||||
PROPERTY name:g2 visibility:public modality:FINAL [val]
|
PROPERTY name:g2 visibility:public modality:FINAL [val]
|
||||||
FUN name:<get-g2> visibility:public modality:FINAL <> ($this:<root>.C, $receiver:T of <uninitialized parent>) returnType:T of <uninitialized parent>
|
FUN name:<get-g2> visibility:public modality:FINAL <T> ($this:<root>.C, $receiver:T of <root>.C.<get-g2>) returnType:T of <root>.C.<get-g2>
|
||||||
correspondingProperty: PROPERTY name:g2 visibility:public modality:FINAL [val]
|
correspondingProperty: PROPERTY name:g2 visibility:public modality:FINAL [val]
|
||||||
|
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?]
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.C
|
$this: VALUE_PARAMETER name:<this> type:<root>.C
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:T of <uninitialized parent>
|
$receiver: VALUE_PARAMETER name:<this> type:T of <root>.C.<get-g2>
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-g2> (): T of <uninitialized parent> declared in <root>.C'
|
RETURN type=kotlin.Nothing from='public final fun <get-g2> <T> (): T of <root>.C.<get-g2> declared in <root>.C'
|
||||||
ERROR_CALL 'Unresolved reference: this@R|/C.g2|' type=T of <uninitialized parent>
|
ERROR_CALL 'Unresolved reference: this@R|/C.g2|' type=T of <root>.C.<get-g2>
|
||||||
PROPERTY FAKE_OVERRIDE name:fromClass visibility:public modality:FINAL [fake_override,val]
|
PROPERTY FAKE_OVERRIDE name:fromClass visibility:public modality:FINAL [fake_override,val]
|
||||||
FUN FAKE_OVERRIDE name:<get-fromClass> visibility:public modality:FINAL <> ($this:<root>.C) returnType:T of <uninitialized parent> [fake_override]
|
FUN FAKE_OVERRIDE name:<get-fromClass> visibility:public modality:FINAL <> ($this:<root>.C) returnType:T of <root>.BaseClass.<get-fromClass> [fake_override]
|
||||||
correspondingProperty: PROPERTY FAKE_OVERRIDE name:fromClass visibility:public modality:FINAL [fake_override,val]
|
correspondingProperty: PROPERTY FAKE_OVERRIDE name:fromClass visibility:public modality:FINAL [fake_override,val]
|
||||||
overridden:
|
overridden:
|
||||||
public final fun <get-fromClass> (): T of <uninitialized parent> declared in <root>.BaseClass
|
public final fun <get-fromClass> <T> (): T of <root>.BaseClass.<get-fromClass> declared in <root>.BaseClass
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.C
|
$this: VALUE_PARAMETER name:<this> type:<root>.C
|
||||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||||
overridden:
|
overridden:
|
||||||
@@ -229,7 +231,10 @@ FILE fqName:<root> fileName:/useImportedMember.kt
|
|||||||
BRANCH
|
BRANCH
|
||||||
if: CALL 'public final fun not (): kotlin.Boolean [operator] declared in kotlin.Boolean' type=kotlin.Boolean origin=EXCLEQ
|
if: CALL 'public final fun not (): kotlin.Boolean [operator] declared in kotlin.Boolean' type=kotlin.Boolean origin=EXCLEQ
|
||||||
$this: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EXCLEQ
|
$this: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EXCLEQ
|
||||||
arg0: ERROR_EXPR 'Cannot bind 1 type arguments to <get-g2> call with 0 type parameters' type=kotlin.String
|
arg0: CALL 'public final fun <get-g2> <T> (): T of <root>.C.<get-g2> declared in <root>.C' type=kotlin.String origin=null
|
||||||
|
<T>: kotlin.String
|
||||||
|
$this: CONST String type=kotlin.String value="8"
|
||||||
|
$receiver: CONST String type=kotlin.String value="8"
|
||||||
arg1: CONST String type=kotlin.String value="8"
|
arg1: CONST String type=kotlin.String value="8"
|
||||||
then: RETURN type=kotlin.Nothing from='public final fun box (): kotlin.String declared in <root>'
|
then: RETURN type=kotlin.Nothing from='public final fun box (): kotlin.String declared in <root>'
|
||||||
CONST String type=kotlin.String value="8"
|
CONST String type=kotlin.String value="8"
|
||||||
@@ -248,7 +253,10 @@ FILE fqName:<root> fileName:/useImportedMember.kt
|
|||||||
BRANCH
|
BRANCH
|
||||||
if: CALL 'public final fun not (): kotlin.Boolean [operator] declared in kotlin.Boolean' type=kotlin.Boolean origin=EXCLEQ
|
if: CALL 'public final fun not (): kotlin.Boolean [operator] declared in kotlin.Boolean' type=kotlin.Boolean origin=EXCLEQ
|
||||||
$this: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EXCLEQ
|
$this: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EXCLEQ
|
||||||
arg0: ERROR_EXPR 'Cannot bind 1 type arguments to <get-fromClass> call with 0 type parameters' type=kotlin.String
|
arg0: CALL 'public final fun <get-fromClass> <T> (): T of <root>.BaseClass.<get-fromClass> declared in <root>.BaseClass' type=kotlin.String origin=null
|
||||||
|
<T>: kotlin.String
|
||||||
|
$this: CONST String type=kotlin.String value="10"
|
||||||
|
$receiver: CONST String type=kotlin.String value="10"
|
||||||
arg1: CONST String type=kotlin.String value="10"
|
arg1: CONST String type=kotlin.String value="10"
|
||||||
then: RETURN type=kotlin.Nothing from='public final fun box (): kotlin.String declared in <root>'
|
then: RETURN type=kotlin.Nothing from='public final fun box (): kotlin.String declared in <root>'
|
||||||
CONST String type=kotlin.String value="10"
|
CONST String type=kotlin.String value="10"
|
||||||
|
|||||||
+28
-22
@@ -1,34 +1,40 @@
|
|||||||
FILE fqName:<root> fileName:/variableAsFunctionCallWithGenerics.kt
|
FILE fqName:<root> fileName:/variableAsFunctionCallWithGenerics.kt
|
||||||
PROPERTY name:gk visibility:public modality:FINAL [val]
|
PROPERTY name:gk visibility:public modality:FINAL [val]
|
||||||
FUN name:<get-gk> visibility:public modality:FINAL <> ($receiver:T of <uninitialized parent>) returnType:kotlin.Function0<T of <uninitialized parent>>
|
FUN name:<get-gk> visibility:public modality:FINAL <T> ($receiver:T of <root>.<get-gk>) returnType:kotlin.Function0<T of <root>.<get-gk>>
|
||||||
correspondingProperty: PROPERTY name:gk visibility:public modality:FINAL [val]
|
correspondingProperty: PROPERTY name:gk visibility:public modality:FINAL [val]
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:T of <uninitialized parent>
|
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.CharSequence]
|
||||||
|
$receiver: VALUE_PARAMETER name:<this> type:T of <root>.<get-gk>
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-gk> (): kotlin.Function0<T of <uninitialized parent>> declared in <root>'
|
RETURN type=kotlin.Nothing from='public final fun <get-gk> <T> (): kotlin.Function0<T of <root>.<get-gk>> declared in <root>'
|
||||||
FUN_EXPR type=kotlin.Function0<T of <uninitialized parent>> origin=LAMBDA
|
FUN_EXPR type=kotlin.Function0<T of <root>.<get-gk>> origin=LAMBDA
|
||||||
FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL <> () returnType:T of <uninitialized parent>
|
FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL <> () returnType:T of <root>.<get-gk>
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
RETURN type=kotlin.Nothing from='local final fun <anonymous> (): T of <uninitialized parent> declared in <root>.<get-gk>'
|
RETURN type=kotlin.Nothing from='local final fun <anonymous> (): T of <root>.<get-gk> declared in <root>.<get-gk>'
|
||||||
ERROR_CALL 'Unresolved reference: this@R|/gk|' type=T of <uninitialized parent>
|
ERROR_CALL 'Unresolved reference: this@R|/gk|' type=T of <root>.<get-gk>
|
||||||
FUN name:testGeneric1 visibility:public modality:FINAL <> (x:kotlin.String) returnType:T of <uninitialized parent>
|
FUN name:testGeneric1 visibility:public modality:FINAL <> (x:kotlin.String) returnType:T of <root>.<get-gk>
|
||||||
VALUE_PARAMETER name:x index:0 type:kotlin.String
|
VALUE_PARAMETER name:x index:0 type:kotlin.String
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
RETURN type=kotlin.Nothing from='public final fun testGeneric1 (x: kotlin.String): T of <uninitialized parent> declared in <root>'
|
RETURN type=kotlin.Nothing from='public final fun testGeneric1 (x: kotlin.String): T of <root>.<get-gk> declared in <root>'
|
||||||
CALL 'public abstract fun invoke (): R of kotlin.Function0 [operator] declared in kotlin.Function0' type=T of <uninitialized parent> origin=INVOKE
|
CALL 'public abstract fun invoke (): R of kotlin.Function0 [operator] declared in kotlin.Function0' type=T of <root>.<get-gk> origin=INVOKE
|
||||||
$this: ERROR_EXPR 'Cannot bind 1 type arguments to <get-gk> call with 0 type parameters' type=kotlin.Function0<kotlin.String>
|
$this: CALL 'public final fun <get-gk> <T> (): kotlin.Function0<T of <root>.<get-gk>> declared in <root>' type=kotlin.Function0<kotlin.String> origin=null
|
||||||
|
<T>: kotlin.String
|
||||||
|
$receiver: GET_VAR 'x: kotlin.String declared in <root>.testGeneric1' type=kotlin.String origin=null
|
||||||
PROPERTY name:kt26531Val visibility:public modality:FINAL [val]
|
PROPERTY name:kt26531Val visibility:public modality:FINAL [val]
|
||||||
FUN name:<get-kt26531Val> visibility:public modality:FINAL <> ($receiver:T of <uninitialized parent>) returnType:kotlin.Function0<T of <uninitialized parent>>
|
FUN name:<get-kt26531Val> visibility:public modality:FINAL <T> ($receiver:T of <root>.<get-kt26531Val>) returnType:kotlin.Function0<T of <root>.<get-kt26531Val>>
|
||||||
correspondingProperty: PROPERTY name:kt26531Val visibility:public modality:FINAL [val]
|
correspondingProperty: PROPERTY name:kt26531Val visibility:public modality:FINAL [val]
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:T of <uninitialized parent>
|
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?]
|
||||||
|
$receiver: VALUE_PARAMETER name:<this> type:T of <root>.<get-kt26531Val>
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-kt26531Val> (): kotlin.Function0<T of <uninitialized parent>> declared in <root>'
|
RETURN type=kotlin.Nothing from='public final fun <get-kt26531Val> <T> (): kotlin.Function0<T of <root>.<get-kt26531Val>> declared in <root>'
|
||||||
FUN_EXPR type=kotlin.Function0<T of <uninitialized parent>> origin=LAMBDA
|
FUN_EXPR type=kotlin.Function0<T of <root>.<get-kt26531Val>> origin=LAMBDA
|
||||||
FUN name:<no name provided> visibility:local modality:FINAL <> () returnType:T of <uninitialized parent>
|
FUN name:<no name provided> visibility:local modality:FINAL <> () returnType:T of <root>.<get-kt26531Val>
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
RETURN type=kotlin.Nothing from='local final fun <no name provided> (): T of <uninitialized parent> declared in <root>.<get-kt26531Val>'
|
RETURN type=kotlin.Nothing from='local final fun <no name provided> (): T of <root>.<get-kt26531Val> declared in <root>.<get-kt26531Val>'
|
||||||
ERROR_CALL 'Unresolved reference: this@R|/kt26531Val|' type=T of <uninitialized parent>
|
ERROR_CALL 'Unresolved reference: this@R|/kt26531Val|' type=T of <root>.<get-kt26531Val>
|
||||||
FUN name:kt26531 visibility:public modality:FINAL <> () returnType:T of <uninitialized parent>
|
FUN name:kt26531 visibility:public modality:FINAL <> () returnType:T of <root>.<get-kt26531Val>
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
RETURN type=kotlin.Nothing from='public final fun kt26531 (): T of <uninitialized parent> declared in <root>'
|
RETURN type=kotlin.Nothing from='public final fun kt26531 (): T of <root>.<get-kt26531Val> declared in <root>'
|
||||||
CALL 'public abstract fun invoke (): R of kotlin.Function0 [operator] declared in kotlin.Function0' type=T of <uninitialized parent> origin=INVOKE
|
CALL 'public abstract fun invoke (): R of kotlin.Function0 [operator] declared in kotlin.Function0' type=T of <root>.<get-kt26531Val> origin=INVOKE
|
||||||
$this: ERROR_EXPR 'Cannot bind 1 type arguments to <get-kt26531Val> call with 0 type parameters' type=kotlin.Function0<kotlin.Int>
|
$this: CALL 'public final fun <get-kt26531Val> <T> (): kotlin.Function0<T of <root>.<get-kt26531Val>> declared in <root>' type=kotlin.Function0<kotlin.Int> origin=null
|
||||||
|
<T>: kotlin.Int
|
||||||
|
$receiver: CONST Int type=kotlin.Int value=7
|
||||||
|
|||||||
@@ -41,16 +41,18 @@ FILE fqName:<root> fileName:/integerCoercionToT.kt
|
|||||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||||
PROPERTY name:value visibility:public modality:FINAL [var]
|
PROPERTY name:value visibility:public modality:FINAL [var]
|
||||||
FUN name:<get-value> visibility:public modality:FINAL <> ($receiver:<root>.CInt32VarX<T_INT of <uninitialized parent>>) returnType:T_INT of <uninitialized parent>
|
FUN name:<get-value> visibility:public modality:FINAL <T_INT> ($receiver:<root>.CInt32VarX<T_INT of <root>.<get-value>>) returnType:T_INT of <root>.<get-value>
|
||||||
correspondingProperty: PROPERTY name:value visibility:public modality:FINAL [var]
|
correspondingProperty: PROPERTY name:value visibility:public modality:FINAL [var]
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.CInt32VarX<T_INT of <uninitialized parent>>
|
TYPE_PARAMETER name:T_INT index:0 variance: superTypes:[kotlin.Int]
|
||||||
|
$receiver: VALUE_PARAMETER name:<this> type:<root>.CInt32VarX<T_INT of <root>.<get-value>>
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-value> (): T_INT of <uninitialized parent> declared in <root>'
|
RETURN type=kotlin.Nothing from='public final fun <get-value> <T_INT> (): T_INT of <root>.<get-value> declared in <root>'
|
||||||
CALL 'public final fun TODO (): kotlin.Nothing [inline] declared in kotlin' type=kotlin.Nothing origin=null
|
CALL 'public final fun TODO (): kotlin.Nothing [inline] declared in kotlin' type=kotlin.Nothing origin=null
|
||||||
FUN name:<set-value> visibility:public modality:FINAL <> ($receiver:<root>.CInt32VarX<T_INT of <uninitialized parent>>, value:T_INT of <uninitialized parent>) returnType:kotlin.Unit
|
FUN name:<set-value> visibility:public modality:FINAL <T_INT> ($receiver:<root>.CInt32VarX<T_INT of <root>.<get-value>>, value:T_INT of <root>.<get-value>) returnType:kotlin.Unit
|
||||||
correspondingProperty: PROPERTY name:value visibility:public modality:FINAL [var]
|
correspondingProperty: PROPERTY name:value visibility:public modality:FINAL [var]
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.CInt32VarX<T_INT of <uninitialized parent>>
|
TYPE_PARAMETER name:T_INT index:0 variance: superTypes:[kotlin.Int]
|
||||||
VALUE_PARAMETER name:value index:0 type:T_INT of <uninitialized parent>
|
$receiver: VALUE_PARAMETER name:<this> type:<root>.CInt32VarX<T_INT of <root>.<get-value>>
|
||||||
|
VALUE_PARAMETER name:value index:0 type:T_INT of <root>.<get-value>
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
CLASS CLASS name:IdType modality:FINAL visibility:public superTypes:[<root>.CPointed]
|
CLASS CLASS name:IdType modality:FINAL visibility:public superTypes:[<root>.CPointed]
|
||||||
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.IdType
|
$this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.IdType
|
||||||
|
|||||||
@@ -31,14 +31,16 @@ FILE fqName:<root> fileName:/genericClassInDifferentModule_m1.kt
|
|||||||
$this: VALUE_PARAMETER name:<this> type:<root>.Base<T of <root>.Base>
|
$this: VALUE_PARAMETER name:<this> type:<root>.Base<T of <root>.Base>
|
||||||
VALUE_PARAMETER name:<set-?> index:0 type:T of <root>.Base
|
VALUE_PARAMETER name:<set-?> index:0 type:T of <root>.Base
|
||||||
PROPERTY name:exn visibility:public modality:ABSTRACT [var]
|
PROPERTY name:exn visibility:public modality:ABSTRACT [var]
|
||||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-exn> visibility:public modality:ABSTRACT <> ($this:<root>.Base<T of <root>.Base>, $receiver:Z of <uninitialized parent>) returnType:T of <root>.Base
|
FUN DEFAULT_PROPERTY_ACCESSOR name:<get-exn> visibility:public modality:ABSTRACT <Z> ($this:<root>.Base<T of <root>.Base>, $receiver:Z of <root>.Base.<get-exn>) returnType:T of <root>.Base
|
||||||
correspondingProperty: PROPERTY name:exn visibility:public modality:ABSTRACT [var]
|
correspondingProperty: PROPERTY name:exn visibility:public modality:ABSTRACT [var]
|
||||||
|
TYPE_PARAMETER name:Z index:0 variance: superTypes:[kotlin.Any?]
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.Base<T of <root>.Base>
|
$this: VALUE_PARAMETER name:<this> type:<root>.Base<T of <root>.Base>
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:Z of <uninitialized parent>
|
$receiver: VALUE_PARAMETER name:<this> type:Z of <root>.Base.<get-exn>
|
||||||
FUN DEFAULT_PROPERTY_ACCESSOR name:<set-exn> visibility:public modality:ABSTRACT <> ($this:<root>.Base<T of <root>.Base>, $receiver:Z of <uninitialized parent>, <set-?>:T of <root>.Base) returnType:kotlin.Unit
|
FUN DEFAULT_PROPERTY_ACCESSOR name:<set-exn> visibility:public modality:ABSTRACT <Z> ($this:<root>.Base<T of <root>.Base>, $receiver:Z of <root>.Base.<set-exn>, <set-?>:T of <root>.Base) returnType:kotlin.Unit
|
||||||
correspondingProperty: PROPERTY name:exn visibility:public modality:ABSTRACT [var]
|
correspondingProperty: PROPERTY name:exn visibility:public modality:ABSTRACT [var]
|
||||||
|
TYPE_PARAMETER name:Z index:0 variance: superTypes:[kotlin.Any?]
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.Base<T of <root>.Base>
|
$this: VALUE_PARAMETER name:<this> type:<root>.Base<T of <root>.Base>
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:Z of <uninitialized parent>
|
$receiver: VALUE_PARAMETER name:<this> type:Z of <root>.Base.<set-exn>
|
||||||
VALUE_PARAMETER name:<set-?> index:0 type:T of <root>.Base
|
VALUE_PARAMETER name:<set-?> index:0 type:T of <root>.Base
|
||||||
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
|
||||||
overridden:
|
overridden:
|
||||||
|
|||||||
@@ -37,18 +37,20 @@ FILE fqName:<root> fileName:/genericClassInDifferentModule_m2.kt
|
|||||||
receiver: GET_VAR '<this>: <root>.Derived1<T of <root>.Derived1> declared in <root>.Derived1.<set-bar>' type=<root>.Derived1<T of <root>.Derived1> origin=null
|
receiver: GET_VAR '<this>: <root>.Derived1<T of <root>.Derived1> declared in <root>.Derived1.<set-bar>' type=<root>.Derived1<T of <root>.Derived1> origin=null
|
||||||
value: GET_VAR '<set-?>: T of <root>.Derived1 declared in <root>.Derived1.<set-bar>' type=T of <root>.Derived1 origin=null
|
value: GET_VAR '<set-?>: T of <root>.Derived1 declared in <root>.Derived1.<set-bar>' type=T of <root>.Derived1 origin=null
|
||||||
PROPERTY name:exn visibility:public modality:FINAL [var]
|
PROPERTY name:exn visibility:public modality:FINAL [var]
|
||||||
FUN name:<get-exn> visibility:public modality:FINAL <> ($this:<root>.Derived1<T of <root>.Derived1>, $receiver:Z of <uninitialized parent>) returnType:T of <root>.Derived1
|
FUN name:<get-exn> visibility:public modality:FINAL <Z> ($this:<root>.Derived1<T of <root>.Derived1>, $receiver:Z of <root>.Derived1.<get-exn>) returnType:T of <root>.Derived1
|
||||||
correspondingProperty: PROPERTY name:exn visibility:public modality:FINAL [var]
|
correspondingProperty: PROPERTY name:exn visibility:public modality:FINAL [var]
|
||||||
|
TYPE_PARAMETER name:Z index:0 variance: superTypes:[kotlin.Any?]
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.Derived1<T of <root>.Derived1>
|
$this: VALUE_PARAMETER name:<this> type:<root>.Derived1<T of <root>.Derived1>
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:Z of <uninitialized parent>
|
$receiver: VALUE_PARAMETER name:<this> type:Z of <root>.Derived1.<get-exn>
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-exn> (): T of <root>.Derived1 declared in <root>.Derived1'
|
RETURN type=kotlin.Nothing from='public final fun <get-exn> <Z> (): T of <root>.Derived1 declared in <root>.Derived1'
|
||||||
CALL 'public final fun <get-x> (): T of <root>.Derived1 declared in <root>.Base' type=T of <root>.Derived1 origin=null
|
CALL 'public final fun <get-x> (): T of <root>.Derived1 declared in <root>.Base' type=T of <root>.Derived1 origin=null
|
||||||
$this: GET_VAR '<this>: <root>.Derived1<T of <root>.Derived1> declared in <root>.Derived1.<get-exn>' type=<root>.Derived1<T of <root>.Derived1> origin=null
|
$this: GET_VAR '<this>: <root>.Derived1<T of <root>.Derived1> declared in <root>.Derived1.<get-exn>' type=<root>.Derived1<T of <root>.Derived1> origin=null
|
||||||
FUN name:<set-exn> visibility:public modality:FINAL <> ($this:<root>.Derived1<T of <root>.Derived1>, $receiver:Z of <uninitialized parent>, value:T of <root>.Derived1) returnType:kotlin.Unit
|
FUN name:<set-exn> visibility:public modality:FINAL <Z> ($this:<root>.Derived1<T of <root>.Derived1>, $receiver:Z of <root>.Derived1.<set-exn>, value:T of <root>.Derived1) returnType:kotlin.Unit
|
||||||
correspondingProperty: PROPERTY name:exn visibility:public modality:FINAL [var]
|
correspondingProperty: PROPERTY name:exn visibility:public modality:FINAL [var]
|
||||||
|
TYPE_PARAMETER name:Z index:0 variance: superTypes:[kotlin.Any?]
|
||||||
$this: VALUE_PARAMETER name:<this> type:<root>.Derived1<T of <root>.Derived1>
|
$this: VALUE_PARAMETER name:<this> type:<root>.Derived1<T of <root>.Derived1>
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:Z of <uninitialized parent>
|
$receiver: VALUE_PARAMETER name:<this> type:Z of <root>.Derived1.<set-exn>
|
||||||
VALUE_PARAMETER name:value index:0 type:T of <root>.Derived1
|
VALUE_PARAMETER name:value index:0 type:T of <root>.Derived1
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
PROPERTY FAKE_OVERRIDE name:x visibility:public modality:FINAL [fake_override,val]
|
PROPERTY FAKE_OVERRIDE name:x visibility:public modality:FINAL [fake_override,val]
|
||||||
|
|||||||
@@ -40,17 +40,19 @@ FILE fqName:<root> fileName:/genericPropertyReferenceType.kt
|
|||||||
public open fun toString (): kotlin.String declared in kotlin.Any
|
public open fun toString (): kotlin.String declared in kotlin.Any
|
||||||
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
$this: VALUE_PARAMETER name:<this> type:kotlin.Any
|
||||||
PROPERTY name:y visibility:public modality:FINAL [var]
|
PROPERTY name:y visibility:public modality:FINAL [var]
|
||||||
FUN name:<get-y> visibility:public modality:FINAL <> ($receiver:<root>.C<T of <uninitialized parent>>) returnType:T of <uninitialized parent>
|
FUN name:<get-y> visibility:public modality:FINAL <T> ($receiver:<root>.C<T of <root>.<get-y>>) returnType:T of <root>.<get-y>
|
||||||
correspondingProperty: PROPERTY name:y visibility:public modality:FINAL [var]
|
correspondingProperty: PROPERTY name:y visibility:public modality:FINAL [var]
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.C<T of <uninitialized parent>>
|
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?]
|
||||||
|
$receiver: VALUE_PARAMETER name:<this> type:<root>.C<T of <root>.<get-y>>
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
RETURN type=kotlin.Nothing from='public final fun <get-y> (): T of <uninitialized parent> declared in <root>'
|
RETURN type=kotlin.Nothing from='public final fun <get-y> <T> (): T of <root>.<get-y> declared in <root>'
|
||||||
CALL 'public final fun <get-x> (): T of <uninitialized parent> declared in <root>.C' type=T of <uninitialized parent> origin=null
|
CALL 'public final fun <get-x> (): T of <root>.<get-y> declared in <root>.C' type=T of <root>.<get-y> origin=null
|
||||||
$this: ERROR_CALL 'Unresolved reference: this@R|/y|' type=<root>.C<T of <uninitialized parent>>
|
$this: ERROR_CALL 'Unresolved reference: this@R|/y|' type=<root>.C<T of <root>.<get-y>>
|
||||||
FUN name:<set-y> visibility:public modality:FINAL <> ($receiver:<root>.C<T of <uninitialized parent>>, v:T of <uninitialized parent>) returnType:kotlin.Unit
|
FUN name:<set-y> visibility:public modality:FINAL <T> ($receiver:<root>.C<T of <root>.<get-y>>, v:T of <root>.<get-y>) returnType:kotlin.Unit
|
||||||
correspondingProperty: PROPERTY name:y visibility:public modality:FINAL [var]
|
correspondingProperty: PROPERTY name:y visibility:public modality:FINAL [var]
|
||||||
$receiver: VALUE_PARAMETER name:<this> type:<root>.C<T of <uninitialized parent>>
|
TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?]
|
||||||
VALUE_PARAMETER name:v index:0 type:T of <uninitialized parent>
|
$receiver: VALUE_PARAMETER name:<this> type:<root>.C<T of <root>.<get-y>>
|
||||||
|
VALUE_PARAMETER name:v index:0 type:T of <root>.<get-y>
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
ERROR_CALL 'Unresolved reference: R|FakeOverride</C.x: R|T|>|' type=IrErrorType
|
ERROR_CALL 'Unresolved reference: R|FakeOverride</C.x: R|T|>|' type=IrErrorType
|
||||||
FUN name:use visibility:public modality:FINAL <> (p:kotlin.reflect.KMutableProperty<kotlin.String>) returnType:kotlin.Unit
|
FUN name:use visibility:public modality:FINAL <> (p:kotlin.reflect.KMutableProperty<kotlin.String>) returnType:kotlin.Unit
|
||||||
@@ -59,11 +61,11 @@ FILE fqName:<root> fileName:/genericPropertyReferenceType.kt
|
|||||||
FUN name:test1 visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
FUN name:test1 visibility:public modality:FINAL <> () returnType:kotlin.Unit
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
CALL 'public final fun use (p: kotlin.reflect.KMutableProperty<kotlin.String>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
CALL 'public final fun use (p: kotlin.reflect.KMutableProperty<kotlin.String>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||||
p: PROPERTY_REFERENCE 'public final y: T of <uninitialized parent> [var]' field=null getter='public final fun <get-y> (): T of <uninitialized parent> declared in <root>' setter='public final fun <set-y> (v: T of <uninitialized parent>): kotlin.Unit declared in <root>' type=kotlin.reflect.KMutableProperty0<kotlin.String> origin=null
|
p: PROPERTY_REFERENCE 'public final y: T of <root>.<get-y> [var]' field=null getter='public final fun <get-y> <T> (): T of <root>.<get-y> declared in <root>' setter='public final fun <set-y> <T> (v: T of <root>.<get-y>): kotlin.Unit declared in <root>' type=kotlin.reflect.KMutableProperty0<kotlin.String> origin=null
|
||||||
FUN name:test2 visibility:public modality:FINAL <> (a:kotlin.Any) returnType:kotlin.Unit
|
FUN name:test2 visibility:public modality:FINAL <> (a:kotlin.Any) returnType:kotlin.Unit
|
||||||
VALUE_PARAMETER name:a index:0 type:kotlin.Any
|
VALUE_PARAMETER name:a index:0 type:kotlin.Any
|
||||||
BLOCK_BODY
|
BLOCK_BODY
|
||||||
TYPE_OP type=<root>.C<kotlin.String> origin=CAST typeOperand=<root>.C<kotlin.String>
|
TYPE_OP type=<root>.C<kotlin.String> origin=CAST typeOperand=<root>.C<kotlin.String>
|
||||||
GET_VAR 'a: kotlin.Any declared in <root>.test2' type=kotlin.Any origin=null
|
GET_VAR 'a: kotlin.Any declared in <root>.test2' type=kotlin.Any origin=null
|
||||||
CALL 'public final fun use (p: kotlin.reflect.KMutableProperty<kotlin.String>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
CALL 'public final fun use (p: kotlin.reflect.KMutableProperty<kotlin.String>): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
|
||||||
p: PROPERTY_REFERENCE 'public final y: T of <uninitialized parent> [var]' field=null getter='public final fun <get-y> (): T of <uninitialized parent> declared in <root>' setter='public final fun <set-y> (v: T of <uninitialized parent>): kotlin.Unit declared in <root>' type=kotlin.reflect.KMutableProperty0<kotlin.String> origin=null
|
p: PROPERTY_REFERENCE 'public final y: T of <root>.<get-y> [var]' field=null getter='public final fun <get-y> <T> (): T of <root>.<get-y> declared in <root>' setter='public final fun <set-y> <T> (v: T of <root>.<get-y>): kotlin.Unit declared in <root>' type=kotlin.reflect.KMutableProperty0<kotlin.String> origin=null
|
||||||
|
|||||||
Reference in New Issue
Block a user