From fe24837fb51d5004ec3d7d728ce4c325a192e426 Mon Sep 17 00:00:00 2001 From: Kamil Doległo Date: Fri, 3 Apr 2020 12:45:54 +0200 Subject: Add DTypeAlias documentable --- core/src/main/kotlin/links/DRI.kt | 4 +++- core/src/main/kotlin/model/Documentable.kt | 16 ++++++++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) (limited to 'core/src') diff --git a/core/src/main/kotlin/links/DRI.kt b/core/src/main/kotlin/links/DRI.kt index abc88939..f961c982 100644 --- a/core/src/main/kotlin/links/DRI.kt +++ b/core/src/main/kotlin/links/DRI.kt @@ -33,7 +33,9 @@ data class DRI( val params = callable?.let { listOfNotNull(it.extensionReceiverParameter) + it.valueParameters }.orEmpty() DRI( firstIsInstanceOrNull()?.fqName?.asString(), - filterIsInstance().toList().takeIf { it.isNotEmpty() }?.asReversed() + (filterIsInstance() + filterIsInstance()).toList() + .takeIf { it.isNotEmpty() } + ?.asReversed() ?.joinToString(separator = ".") { it.name.asString() }, callable?.let { Callable.from(it) }, firstIsInstanceOrNull()?.let { params.indexOf(it) }, diff --git a/core/src/main/kotlin/model/Documentable.kt b/core/src/main/kotlin/model/Documentable.kt index fec94537..42b49b82 100644 --- a/core/src/main/kotlin/model/Documentable.kt +++ b/core/src/main/kotlin/model/Documentable.kt @@ -140,6 +140,7 @@ data class DPackage( override val functions: List, override val properties: List, override val classlikes: List, + val typealiases: List, override val documentation: PlatformDependent, override val platformData: List, override val extra: PropertyContainer = PropertyContainer.empty() @@ -344,6 +345,21 @@ data class DTypeParameter( override fun withNewExtras(newExtras: PropertyContainer) = copy(extra = newExtras) } +data class DTypeAlias( + override val dri: DRI, + override val name: String, + override val type: Bound, + val underlyingType: Bound, + override val documentation: PlatformDependent, + override val platformData: List, + override val extra: PropertyContainer = PropertyContainer.empty() +) : Documentable(), WithType, WithExtraProperties { + override val children: List + get() = emptyList() + + override fun withNewExtras(newExtras: PropertyContainer) = copy(extra = newExtras) +} + sealed class Projection sealed class Bound : Projection() data class OtherParameter(val name: String) : Bound() -- cgit