From cbd9733d3dd2f52992e98e7cebd072091a572529 Mon Sep 17 00:00:00 2001 From: Vadim Mishenev Date: Mon, 3 Jul 2023 16:18:43 +0300 Subject: Enhance typealias presentation (#3053) --- core/src/main/kotlin/model/Documentable.kt | 3 ++- core/src/main/kotlin/model/additionalExtras.kt | 15 ++++++++++++--- 2 files changed, 14 insertions(+), 4 deletions(-) (limited to 'core/src/main/kotlin') diff --git a/core/src/main/kotlin/model/Documentable.kt b/core/src/main/kotlin/model/Documentable.kt index adc51cfc..c7b2290e 100644 --- a/core/src/main/kotlin/model/Documentable.kt +++ b/core/src/main/kotlin/model/Documentable.kt @@ -376,8 +376,9 @@ data class DTypeAlias( override val expectPresentInSet: DokkaSourceSet?, override val sourceSets: Set, override val generics: List, + override val sources: SourceSetDependent, override val extra: PropertyContainer = PropertyContainer.empty() -) : Documentable(), WithType, WithVisibility, WithExtraProperties, WithGenerics { +) : Documentable(), WithType, WithVisibility, WithExtraProperties, WithGenerics, WithSources { override val children: List get() = emptyList() diff --git a/core/src/main/kotlin/model/additionalExtras.kt b/core/src/main/kotlin/model/additionalExtras.kt index 9b98448e..1f6f6d27 100644 --- a/core/src/main/kotlin/model/additionalExtras.kt +++ b/core/src/main/kotlin/model/additionalExtras.kt @@ -104,13 +104,22 @@ object PrimaryConstructorExtra : ExtraProperty, ExtraProperty.Key = this } -data class ActualTypealias(val underlyingType: SourceSetDependent) : ExtraProperty { +data class ActualTypealias( + val typeAlias: DTypeAlias +) : ExtraProperty { + + @Suppress("unused") + @Deprecated(message = "It can be removed soon. Use [typeAlias.underlyingType]", ReplaceWith("this.typeAlias.underlyingType")) + val underlyingType: SourceSetDependent + get() = typeAlias.underlyingType + companion object : ExtraProperty.Key { override fun mergeStrategyFor( left: ActualTypealias, right: ActualTypealias - ) = - MergeStrategy.Replace(ActualTypealias(left.underlyingType + right.underlyingType)) + ) = MergeStrategy.Fail { + throw IllegalStateException("Adding [ActualTypealias] should be after merging all documentables") + } } override val key: ExtraProperty.Key = ActualTypealias -- cgit