EnumGenerator

Generates Kotlin enum classes for GraphQL enum types.

Active generation emits standalone Kotlin enum classes so generated variable, input object, and request helper types can reference real Kotlin types.

Legacy string constant generation is still available for compatibility:

public enum class MediaSort {
SCORE,
POPULARITY,
}

Functions

Link copied to clipboard
fun generate(enums: List<SchemaType.Enum>, packageName: String): List<FileSpec>

Generates standalone Kotlin enum classes for a list of enum types.

Link copied to clipboard
fun generateAsEnumClass(enumType: SchemaType.Enum, packageName: String): FileSpec

Generates a standalone Kotlin enum class for a single enum type.

Link copied to clipboard
fun generateAsStringConstants(enums: List<SchemaType.Enum>, packageName: String): FileSpec?

Generates string constants for a list of enum types. All enums are grouped into a single GraphQLEnums file.