livefront / sealed-enum

A Kotlin annotation processor that makes writing normal enum classes obsolete.
Apache License 2.0
149 stars 7 forks source link

Convert Class to KClass #128

Closed alexvanyo closed 1 year ago

alexvanyo commented 1 year ago

Fixes #125 .

This is a breaking change to convert current usages of Class to KClass in a couple spots in the API.

This allows the runtime module to be fully multiplatform to setup #81 , as KClass is not specific to jvm targets like Class is.

This was previously part of #78 , but spun out here for ease of reviewing the API change without adjusting the entire project to be multiplatform.

github-actions[bot] commented 1 year ago

🧛 Project Code Coverage: 97.68%

Coverage of Modified Files:

File Coverage
SealedEnum.kt 100.00%
SealedEnumTypeSpec.kt 100.00%

Modified Files Not Found In Coverage Report:

CreateSealedEnumFromEnumTests.kt EmptySealedClass.kt EmptySealedClassTests.kt EmptySealedInterface.kt EmptySealedInterfaceTests.kt EnumForSealedEnumProvider.kt EnvironmentsSealedEnum.kt EnvironmentsSealedEnumTests.kt GenericSealedClass.kt JavaBaseClasses.kt NestedObjectsWithSameName.kt NestedObjectsWithSameNameTests.kt OneObjectSealedClass.kt OneObjectSealedClassTests.kt OneObjectSealedInterface.kt OneObjectSealedInterfaceTests.kt OutsideSealedClass.kt PrivateInterfaceSealedClass.kt PrivateInterfaceSealedClassTests.kt ProtectedInterfaceSealedClass.kt ProtectedInterfaceSealedClassTests.kt ProtectedInterfaceSealedClassWithDifferentPackageBaseClass.kt ProtectedInterfaceSealedClassWithDifferentPackageBaseClassTests.kt SealedClassHierarchy.kt SealedEnumWithAbstractBaseClasses.kt SealedEnumWithInterfaces.kt SealedInterfaceHierarchy.kt SplitAcrossFilesSealedClass.kt TraversalOrder.kt TwoObjectSealedClass.kt TwoObjectSealedClassTests.kt TwoObjectSealedInterface.kt TwoObjectSealedInterfaceTests.kt VisibilitySealedClass.kt VisibilitySealedClassTests.kt runtime.api

Codebase cunningly covered by count Shroud 🧛

Generated by :no_entry_sign: Danger

alexvanyo commented 1 year ago

Thanks @brian-livefront ! Merging this after the 0.6.0 release to have a Kotlin 1.8 update without any breaking changes included.