add opportunity to generate types lists for sealed subtypes

This commit is contained in:
2025-01-14 09:56:30 +06:00
parent 307c8030af
commit a5eb0fbd24
7 changed files with 122 additions and 8 deletions

View File

@@ -1,14 +1,19 @@
package dev.inmo.micro_utils.ksp.sealed.generator.test
import dev.inmo.micro_utils.ksp.sealed.GenerateSealedTypesWorkaround
import dev.inmo.micro_utils.ksp.sealed.GenerateSealedWorkaround
@GenerateSealedWorkaround
@GenerateSealedTypesWorkaround
sealed interface Test {
@GenerateSealedWorkaround.Order(2)
@GenerateSealedTypesWorkaround.Order(2)
object A : Test
@GenerateSealedWorkaround.Exclude
@GenerateSealedTypesWorkaround.Exclude
object B : Test
@GenerateSealedWorkaround.Order(0)
@GenerateSealedTypesWorkaround.Order(0)
object C : Test
// Required for successful sealed workaround generation

View File

@@ -0,0 +1,12 @@
// THIS CODE HAVE BEEN GENERATED AUTOMATICALLY
// TO REGENERATE IT JUST DELETE FILE
// ORIGINAL FILE: Test.kt
package dev.inmo.micro_utils.ksp.`sealed`.generator.test
import kotlin.collections.Set
import kotlin.reflect.KClass
private val subtypes: Set<KClass<out Test>> = setOf(Test.C::class,
Test.A::class)
public fun Test.Companion.subtypes(): Set<KClass<out Test>> = subtypes