Do not generate separate type parameter declarations for constructors
This commit is contained in:
+1
-2
@@ -16,7 +16,6 @@
|
||||
|
||||
package org.jetbrains.kotlin.psi2ir.generators
|
||||
|
||||
import com.sun.org.apache.xpath.internal.operations.Mod
|
||||
import org.jetbrains.kotlin.descriptors.*
|
||||
import org.jetbrains.kotlin.ir.declarations.*
|
||||
import org.jetbrains.kotlin.ir.expressions.IrBlockBody
|
||||
@@ -204,7 +203,7 @@ class FunctionGenerator(declarationGenerator: DeclarationGenerator) : Declaratio
|
||||
context.symbolTable.declareConstructor(
|
||||
ktConstructorElement.startOffset, ktConstructorElement.endOffset, IrDeclarationOrigin.DEFINED, constructorDescriptor
|
||||
).buildWithScope { irConstructor ->
|
||||
generateFunctionParameterDeclarations(irConstructor, ktParametersElement, null)
|
||||
generateValueParameterDeclarations(irConstructor, ktParametersElement, null)
|
||||
irConstructor.body = createBodyGenerator(irConstructor.symbol).generateBody()
|
||||
}
|
||||
|
||||
|
||||
-1
@@ -23,7 +23,6 @@ import org.jetbrains.kotlin.ir.declarations.impl.IrModuleFragmentImpl
|
||||
import org.jetbrains.kotlin.ir.declarations.impl.IrPropertyImpl
|
||||
import org.jetbrains.kotlin.ir.declarations.impl.IrTypeParameterImpl
|
||||
import org.jetbrains.kotlin.ir.declarations.impl.IrValueParameterImpl
|
||||
import org.jetbrains.kotlin.ir.descriptors.IrDeclarationStubBuilder
|
||||
import org.jetbrains.kotlin.ir.symbols.IrSymbol
|
||||
import org.jetbrains.kotlin.resolve.DescriptorUtils
|
||||
import org.jetbrains.kotlin.resolve.scopes.MemberScope
|
||||
|
||||
@@ -3,7 +3,6 @@ FILE /dataClassesGeneric.kt
|
||||
$new: VALUE_PARAMETER <receiver: Test1>
|
||||
TYPE_PARAMETER <T>
|
||||
CONSTRUCTOR public constructor Test1<T>(x: T)
|
||||
TYPE_PARAMETER <T>
|
||||
VALUE_PARAMETER value-parameter x: T
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
|
||||
|
||||
-1
@@ -3,7 +3,6 @@ FILE /delegatingConstructorCallToTypeAliasConstructor.kt
|
||||
$new: VALUE_PARAMETER <receiver: Cell>
|
||||
TYPE_PARAMETER <T>
|
||||
CONSTRUCTOR public constructor Cell<T>(value: T)
|
||||
TYPE_PARAMETER <T>
|
||||
VALUE_PARAMETER value-parameter value: T
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
|
||||
|
||||
@@ -17,7 +17,6 @@ FILE /fakeOverrides.kt
|
||||
$new: VALUE_PARAMETER <receiver: CFoo>
|
||||
TYPE_PARAMETER <T>
|
||||
CONSTRUCTOR public constructor CFoo<T>()
|
||||
TYPE_PARAMETER <T>
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CFoo'
|
||||
|
||||
@@ -13,7 +13,6 @@ FILE /class.kt
|
||||
$new: VALUE_PARAMETER <receiver: Test>
|
||||
TYPE_PARAMETER <T0>
|
||||
CONSTRUCTOR public constructor Test<T0>()
|
||||
TYPE_PARAMETER <T0>
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='Test'
|
||||
@@ -21,7 +20,6 @@ FILE /class.kt
|
||||
$new: VALUE_PARAMETER <receiver: TestNested>
|
||||
TYPE_PARAMETER <T1>
|
||||
CONSTRUCTOR public constructor TestNested<T1>()
|
||||
TYPE_PARAMETER <T1>
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='TestNested'
|
||||
@@ -32,7 +30,6 @@ FILE /class.kt
|
||||
$new: VALUE_PARAMETER <receiver: TestInner>
|
||||
TYPE_PARAMETER <T2>
|
||||
CONSTRUCTOR public constructor TestInner<T2>()
|
||||
TYPE_PARAMETER <T2>
|
||||
$outer: VALUE_PARAMETER <receiver: Test>
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
|
||||
|
||||
@@ -4,8 +4,6 @@ FILE /constructor.kt
|
||||
TYPE_PARAMETER <T1>
|
||||
TYPE_PARAMETER <T2>
|
||||
CONSTRUCTOR public constructor Test1<T1, T2>(x: T1, y: T2)
|
||||
TYPE_PARAMETER <T1>
|
||||
TYPE_PARAMETER <T2>
|
||||
VALUE_PARAMETER value-parameter x: T1
|
||||
VALUE_PARAMETER value-parameter y: T2
|
||||
BLOCK_BODY
|
||||
@@ -56,7 +54,6 @@ FILE /constructor.kt
|
||||
$new: VALUE_PARAMETER <receiver: TestInner>
|
||||
TYPE_PARAMETER <Z>
|
||||
CONSTRUCTOR public constructor TestInner<Z>(z: Z)
|
||||
TYPE_PARAMETER <Z>
|
||||
$outer: VALUE_PARAMETER <receiver: Test2>
|
||||
VALUE_PARAMETER value-parameter z: Z
|
||||
BLOCK_BODY
|
||||
@@ -73,7 +70,6 @@ FILE /constructor.kt
|
||||
GET_FIELD 'z: Z' type=Z origin=null
|
||||
receiver: GET_VAR '<receiver: TestInner>' type=Test2.TestInner<Z> origin=null
|
||||
CONSTRUCTOR public constructor TestInner<Z>(z: Z, i: kotlin.Int)
|
||||
TYPE_PARAMETER <Z>
|
||||
$outer: VALUE_PARAMETER <receiver: Test2>
|
||||
VALUE_PARAMETER value-parameter z: Z
|
||||
VALUE_PARAMETER value-parameter i: kotlin.Int
|
||||
@@ -125,7 +121,6 @@ FILE /constructor.kt
|
||||
$new: VALUE_PARAMETER <receiver: Test4>
|
||||
TYPE_PARAMETER <T>
|
||||
CONSTRUCTOR public constructor Test4<T>(x: kotlin.Int)
|
||||
TYPE_PARAMETER <T>
|
||||
VALUE_PARAMETER value-parameter x: kotlin.Int
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
|
||||
@@ -141,7 +136,6 @@ FILE /constructor.kt
|
||||
GET_FIELD 'x: Int' type=kotlin.Int origin=null
|
||||
receiver: GET_VAR '<receiver: Test4>' type=Test4<T> origin=null
|
||||
CONSTRUCTOR public constructor Test4<T>(x: kotlin.Int, y: kotlin.Int = ...)
|
||||
TYPE_PARAMETER <T>
|
||||
VALUE_PARAMETER value-parameter x: kotlin.Int
|
||||
VALUE_PARAMETER value-parameter y: kotlin.Int = ...
|
||||
EXPRESSION_BODY
|
||||
|
||||
@@ -3,7 +3,6 @@ FILE /dataClassMembers.kt
|
||||
$new: VALUE_PARAMETER <receiver: Test>
|
||||
TYPE_PARAMETER <T>
|
||||
CONSTRUCTOR public constructor Test<T>(x: T, y: kotlin.String = ...)
|
||||
TYPE_PARAMETER <T>
|
||||
VALUE_PARAMETER value-parameter x: T
|
||||
VALUE_PARAMETER value-parameter y: kotlin.String = ...
|
||||
EXPRESSION_BODY
|
||||
|
||||
-1
@@ -60,7 +60,6 @@ FILE /defaultPropertyAccessors.kt
|
||||
$new: VALUE_PARAMETER <receiver: InPrimaryCtor>
|
||||
TYPE_PARAMETER <T>
|
||||
CONSTRUCTOR public constructor InPrimaryCtor<T>(testInPrimaryCtor1: T, testInPrimaryCtor2: kotlin.Int = ...)
|
||||
TYPE_PARAMETER <T>
|
||||
VALUE_PARAMETER value-parameter testInPrimaryCtor1: T
|
||||
VALUE_PARAMETER value-parameter testInPrimaryCtor2: kotlin.Int = ...
|
||||
EXPRESSION_BODY
|
||||
|
||||
@@ -19,7 +19,6 @@ FILE /delegatedMembers.kt
|
||||
$new: VALUE_PARAMETER <receiver: Test>
|
||||
TYPE_PARAMETER <TT>
|
||||
CONSTRUCTOR public constructor Test<TT>(impl: IBase<TT>)
|
||||
TYPE_PARAMETER <TT>
|
||||
VALUE_PARAMETER value-parameter impl: IBase<TT>
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
|
||||
|
||||
@@ -48,7 +48,6 @@ FILE /propertyAccessors.kt
|
||||
$new: VALUE_PARAMETER <receiver: Host>
|
||||
TYPE_PARAMETER <T>
|
||||
CONSTRUCTOR public constructor Host<T>()
|
||||
TYPE_PARAMETER <T>
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='Host'
|
||||
|
||||
@@ -13,7 +13,6 @@ FILE /integerCoercionToT.kt
|
||||
$new: VALUE_PARAMETER <receiver: CInt32VarX>
|
||||
TYPE_PARAMETER <T>
|
||||
CONSTRUCTOR public constructor CInt32VarX<T>()
|
||||
TYPE_PARAMETER <T>
|
||||
BLOCK_BODY
|
||||
DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
|
||||
INSTANCE_INITIALIZER_CALL classDescriptor='CInt32VarX'
|
||||
|
||||
Reference in New Issue
Block a user