File tree Expand file tree Collapse file tree 1 file changed +17
-9
lines changed
qs-kotlin/src/main/kotlin/io/github/techouse/qskotlin/internal Expand file tree Collapse file tree 1 file changed +17
-9
lines changed Original file line number Diff line number Diff line change @@ -13,6 +13,7 @@ import java.time.Instant
1313import java.time.LocalDateTime
1414import java.util.Collections
1515import java.util.IdentityHashMap
16+ import kotlin.collections.ArrayDeque
1617
1718/* * A collection of utility methods used by the library. */
1819internal object Utils {
@@ -82,9 +83,9 @@ internal object Utils {
8283 }
8384 }
8485
85- when {
86- target is Set <* > -> mutableTarget.values.toSet()
87- else -> mutableTarget.values.toSet ()
86+ when (target) {
87+ is Set <* > -> mutableTarget.values.toSet()
88+ else -> mutableTarget.values.toList ()
8889 }
8990 }
9091
@@ -110,21 +111,28 @@ internal object Utils {
110111 }
111112
112113 is Map <* , * > -> {
114+ val mutableTarget = target.toMutableMap()
115+
113116 when (source) {
114117 is Iterable <* > -> {
115- val mutableTarget = target.toMutableMap()
116-
117118 source.forEachIndexed { i, item ->
118119 if (item !is Undefined ) {
119120 mutableTarget[i] = item
120121 }
121122 }
122-
123- mutableTarget
124123 }
125-
126- else -> target
124+ is Undefined -> {
125+ // ignore
126+ }
127+ else -> {
128+ val k = source.toString()
129+ if (k.isNotEmpty()) {
130+ mutableTarget[k] = true
131+ }
132+ }
127133 }
134+
135+ mutableTarget
128136 }
129137
130138 else ->
You can’t perform that action at this time.
0 commit comments