Journey to the Center of the Room Generating Kotlin
summary
Room 2.6 alpha1 adds Kotlin code generation by switching to KSP for accurate Kotlin symbols, introducing XProcessing to unify Java and Kotlin annotation handling, and shipping XPoet to emit either language from one writer. The work covers three concrete goals, five engineering takeaways (type-safe XTypeName, percent-sign templates, a fallback API, and accepting pseudo-Java Kotlin), and enables support for Kotlin value classes while trading idiomatic Kotlin (no string templates, no named args, switches become if/else cascades).
AI-written summary · about
chapters (9)
- 0:00Introduction and setup
- 1:12What is Room and Kotlin codegen
- 2:37Three key tasks for Kotlin support
- 3:43Switching to KSP for Kotlin sources
- 4:51Unified processing with XProcessing
- 6:15Generating code with XPoet
- 8:23Code examples with XPoet
- 14:39Five key takeaways from the journey
- 19:11Design compromises and future of Room








