This repository was archived by the owner on Nov 6, 2019. It is now read-only.
File tree Expand file tree Collapse file tree 3 files changed +18
-1
lines changed
src/main/kotlin/converter Expand file tree Collapse file tree 3 files changed +18
-1
lines changed Original file line number Diff line number Diff line change @@ -115,12 +115,19 @@ private fun ObjectTypeToKotlinTypeMapper.mapUnionType(type: UnionOrIntersectionT
115
115
116
116
val mappedTypes = notNullTypes.map { mapType(it, null ) }
117
117
return KtTypeUnion (when {
118
- ! nullable -> mappedTypes.distinct ()
118
+ ! nullable -> mappedTypes.merge ()
119
119
notNullTypes.size == 1 -> mappedTypes.map { it.copy(isNullable = true ) }
120
120
else -> (mappedTypes + KtType (NOTHING , isNullable = true )).distinct()
121
121
})
122
122
}
123
123
124
+ private fun List<KtType>.merge (): List <KtType > {
125
+ return groupBy { it.copy(comment = null ) }.map { entry ->
126
+ val comments = entry.value.map { it.comment }.filterNotNull()
127
+ entry.key.copy(comment = if (comments.isEmpty()) null else comments.joinToString(" | " ))
128
+ }
129
+ }
130
+
124
131
private inline val UnionOrIntersectionType .containsUndefined: Boolean
125
132
get() {
126
133
val array = types.asDynamic()
Original file line number Diff line number Diff line change
1
+ package stringValues
2
+
3
+ external interface MapGenerator {
4
+ fun generate (scope : String /* "city" | "state" | "country" | "world" */ )
5
+ }
Original file line number Diff line number Diff line change
1
+ export type GeographicScope = 'city' | 'state' | 'country' | 'world' ;
2
+
3
+ export interface MapGenerator {
4
+ generate ( scope : GeographicScope )
5
+ }
You can’t perform that action at this time.
0 commit comments