4ntoine
01/31/2019, 5:53 AMplugins {
id 'com.android.library'
id 'kotlin-multiplatform' version '1.3.20'
}
kotlin {
jvm()
wasm32('wasm')
android()
sourceSets {
commonMain {
dependencies {
implementation 'org.jetbrains.kotlin:kotlin-stdlib-common'
implementation "org.jetbrains.kotlin:kotlin-reflect"
}
}
commonTest {
dependencies {
implementation 'org.jetbrains.kotlin:kotlin-test-common'
implementation 'org.jetbrains.kotlin:kotlin-test-annotations-common'
}
}
commonJvmMain {
dependencies {
implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk8'
}
}
jvmMain {
dependsOn commonJvmMain
}
jvmTest {
dependencies {
implementation 'org.jetbrains.kotlin:kotlin-test'
implementation 'org.jetbrains.kotlin:kotlin-test-junit'
}
}
androidMain {
dependsOn commonJvmMain
}
hho
01/31/2019, 2:10 PMadalbert
05/18/2019, 8:23 PMitnoles
05/19/2019, 6:46 PMitnoles
05/19/2019, 6:57 PMChi
05/19/2019, 8:12 PMMarc Knaup
05/19/2019, 8:50 PMhashCodeOf(a, b, c, d, …)
which is inlined and without boxing?Marc Knaup
05/19/2019, 10:09 PMMarc Knaup
05/20/2019, 3:20 AMSomeInlineClass.print()
be known at compile-time?
interface Inline {
fun print()
}
inline class SomeInlineClass(private val value: Int) : Inline {
override fun print() {
print(value)
}
}
inline fun <T : Inline> printInline(inline: T) {
inline.print()
}
fun main() {
printInline(SomeInlineClass(2)) // why boxing?
}
user
05/21/2019, 11:21 AMsmilecs
05/22/2019, 6:53 AMErick House
05/22/2019, 8:47 AMkarelpeeters
05/22/2019, 8:48 AMkarelpeeters
05/22/2019, 8:49 AMpaulex
05/22/2019, 11:23 AMLeoColman
05/24/2019, 1:34 AMuser
05/24/2019, 10:38 AMDerek Berner
05/24/2019, 5:48 PMDerek Berner
05/24/2019, 5:49 PMjasync-sql
but then I'm writing my object-relational layer manuallyDerek Berner
05/24/2019, 5:50 PMexposed
but there's quite a bit of duplication involved to get around the zero reflection, and its IO blocksBen
05/24/2019, 6:00 PMGautam Lad
05/24/2019, 7:08 PMexecute overrides nothing
with the following?
interface UseCase<out Result, in Arguments> where Result : Any {
suspend fun execute(vararg args: Arguments): Result
}
class TestUseCase : UseCase<Boolean, Boolean> {
override suspend fun execute(vararg args: Boolean): Boolean {
return true
}
}
Gautam Lad
05/24/2019, 7:08 PMGautam Lad
05/24/2019, 7:10 PMkarelpeeters
05/24/2019, 7:17 PMGautam Lad
05/24/2019, 7:18 PMPaulius Ruminas
05/24/2019, 7:38 PMfun CoroutineScope.foo(): ReceiveChannel<Int> = produce {
val otherChannel = Channel<String>()
otherChannel.mapTo(channel) { it.toInt() }
}
What does it mean?Emilbeksulaymanov
05/26/2019, 10:57 AMuser
05/28/2019, 1:41 PM