Files
kotlin-fork/libraries/tools/kotlin-stdlib-gen
AJ Alt ed96197d6b Always use LF line endings in generated stdlib code
The code generation uses a mixture of literal `\n` characters and `appendln`. The latter insert `\r\n` on Windows by default, causing generated files to contain a mixture of line endings.

This commit sets the `line.separator` system property for the generator to `\n` so that `appendln` will never insert `\r` characters. As an additional measure, `.gitattributes` files were added to checkout generated stdlib files always with LF line endings.
2019-06-27 03:02:10 +03:00
..

Code Generation for Standard Library

Some of the code in the standard library is created by code generation based on templates. For example, many Array methods need to be implemented separately for Array<T>, ByteArray, ShortArray, IntArray, etc.

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 gradlew without 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.