You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

20 lines
602 B
Kotlin

package net.cijber.pubgrub
import net.cijber.pubgrub.stubs.PackageId
import net.cijber.pubgrub.stubs.Version
sealed class IncompatibilityCause<P : PackageId, V : Version<V>> {
enum class SimpleCause {
Root,
Dependency,
UseLatest,
NoVersions,
UnknownSource
}
data class Simple<P : PackageId, V : Version<V>>(val cause: SimpleCause) : IncompatibilityCause<P, V>()
data class ConflictCause<P : PackageId, V : Version<V>>(
val conflict: Incompatibility<P, V>,
val other: Incompatibility<P, V>
) : IncompatibilityCause<P, V>()
}