c57864e46c
Since we're not yet sure of the design of Experimental/UseExperimental, we're making them "experimental" themselves in some sense, in that the user is required to provide the magic argument "-Xuse-experimental=kotlin.Experimental" to be allowed to use either Experimental or UseExperimental. This is more convenient than the previous approach of "-language-version 1.3 -Xskip-metadata-version-check" because it's simpler and does not cause pre-release binaries to be produced
The Kotlin Standard Library
This module creates the standard library for Kotlin.
Notes for contributors
We use some code generation to generate the various utility extension function for the various collection-like types like arrays, strings, Collection<T>, Sequence<T>, Map<K, V> etc.
These sources are placed into generated folder and their names are prefixed with the underscore, for example generated/_Collections.kt
To run the code generator use the following command in the root directory of the project:
./gradlew :tools:kotlin-stdlib-gen:run
Note: on Windows type
gradlewwithout the leading./
This then runs the script which generates a significant part of stdlib sources from the templates authored with a special kotlin based DSL.
Usage samples
If you want to author samples for the standard library, please head to the samples readme.