Skip to main content

Functions

FileScopeConversion

These settings apply to global functions and interface extensions.

Enabled (Boolean)

Controls whether SKIE generates wrappers for global functions and interface extensions, which allows them to be called with the usual syntax.

The default value is true.

Annotation configuration:

Kotlin
import co.touchlab.skie.configuration.annotations.FunctionInterop

@FunctionInterop.FileScopeConversion.Enabled
fun enabled() {
}

@FunctionInterop.FileScopeConversion.Disabled
fun disabled() {
}

Gradle configuration:

build.gradle.kts
import co.touchlab.skie.configuration.FunctionInterop

skie {
features {
group {
FunctionInterop.FileScopeConversion.Enabled(true) // or false
}
}
}

LegacyName (Boolean)

If enabled, SKIE uses the original Kotlin compiler algorithm for naming functions and properties.

note

The custom conflict resolution algorithm is still used if the name generated by the original Kotlin compiler is creating a conflict.

The default value is false.

Annotation configuration:

Kotlin
import co.touchlab.skie.configuration.annotations.FunctionInterop

@FunctionInterop.LegacyName.Enabled
fun enabled() {
}

@FunctionInterop.LegacyName.Disabled
fun disabled() {
}

Gradle configuration:

build.gradle.kts
import co.touchlab.skie.configuration.FunctionInterop

skie {
features {
group {
FunctionInterop.LegacyName(true) // or false
}
}
}