Override/Implement Members: Do not expand type aliases in the generated members. Retain abbreviated types during flexible type approximation
#KT-13244 Fixed
This commit is contained in:
@@ -191,6 +191,7 @@ interface DescriptorRendererOptions {
|
||||
var renderDefaultAnnotationArguments: Boolean
|
||||
var alwaysRenderModifiers: Boolean
|
||||
var renderConstructorKeyword: Boolean
|
||||
var renderUnabbreviatedType: Boolean
|
||||
}
|
||||
|
||||
object ExcludedTypeAnnotations {
|
||||
|
||||
@@ -128,6 +128,7 @@ internal class DescriptorRendererImpl(
|
||||
if (abbreviated != null) {
|
||||
// TODO nullability is lost for abbreviated type?
|
||||
val abbreviatedRendered = renderNormalizedTypeAsIs(abbreviated.abbreviation)
|
||||
if (!renderUnabbreviatedType) return abbreviatedRendered
|
||||
val unabbreviatedRendered = renderNormalizedTypeAsIs(abbreviated.expandedType)
|
||||
return "$abbreviatedRendered /* = $unabbreviatedRendered */"
|
||||
}
|
||||
|
||||
@@ -99,4 +99,6 @@ internal class DescriptorRendererOptionsImpl : DescriptorRendererOptions {
|
||||
override var alwaysRenderModifiers by property(false)
|
||||
|
||||
override var renderConstructorKeyword by property(true)
|
||||
|
||||
override var renderUnabbreviatedType: Boolean by property(true)
|
||||
}
|
||||
Reference in New Issue
Block a user