Kombinator automates the creation of instances of a Kotlin data class by generating combinations of constructor parameters based on annotations. Users annotate their data classes and provide possible parameter values, allowing Kombinator to create a new object that encapsulates all combinations and a method to retrieve them. This tool leverages Kotlin Symbol Processing (KSP) for efficient compile-time processing and KotlinPoet for generating Kotlin source files programmatically. The combination reduces manual effort and errors in testing and populating UI states.
Kombinator aims to simplify the creation of multiple instances of a Kotlin data class by automatically generating all possible combinations of its constructor parameters.
Kotlin Symbol Processing (KSP) allows for writing lightweight compiler plugins for Kotlin that efficiently process code at compile time.
KotlinPoet is a library for generating Kotlin source files programmatically, providing a fluid API for constructing code and handling details like imports.
Kombinator generates an object containing properties for every unique combination of parameters, along with a getAllCombinations() function to retrieve them.
Collection
[
|
...
]