All Downloads are FREE. Search and download functionalities are using the official Maven repository.

commonMain.co.touchlab.skie.context.LinkPhaseContext.kt Maven / Gradle / Ivy

The newest version!
package co.touchlab.skie.context

import co.touchlab.skie.kir.descriptor.DescriptorKirProvider
import co.touchlab.skie.phases.LinkPhase
import java.nio.file.Path

class LinkPhaseContext(
    private val mainSkieContext: MainSkieContext,
    private val link: (additionalObjectFiles: List) -> Unit,
) : LinkPhase.Context, ForegroundPhaseCompilerContext by mainSkieContext {

    override val context: LinkPhase.Context = this

    val descriptorKirProvider: DescriptorKirProvider = mainSkieContext.descriptorKirProvider

    override fun link(additionalObjectFiles: List) {
        link.invoke(additionalObjectFiles)
    }

    override suspend fun awaitAllBackgroundJobs() {
        mainSkieContext.awaitAllBackgroundJobs()
    }
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy