I think that this would be an easy feature given the great foundation in this project, and what Kotlin can do with delegates.
In my class, I'd like to have magic delegated properties that take into account everything (SystemProperties, EnvironmentVariables, command line, and default values). I think it would be possible to do so in a way that a single import is all you need:
import com.natpryce.konfig.byConfig
class MyClass {
val speed:Double = byConfig(0.0)
val name:String = byConfig("Larry")
init {
println("My name is $name because of ${::name.source}")
}
}
I think that this would be an easy feature given the great foundation in this project, and what Kotlin can do with delegates.
In my class, I'd like to have magic delegated properties that take into account everything (SystemProperties, EnvironmentVariables, command line, and default values). I think it would be possible to do so in a way that a single import is all you need: