Maven Constraint Serializer
Built-in kotlinx.serialization serializer that encodes and decodes a Constraint in Maven-style string representation.
Samples
import io.github.z4kn4fein.semver.constraints.Constraint
import io.github.z4kn4fein.semver.constraints.ConstraintSerializer
import io.github.z4kn4fein.semver.constraints.MavenConstraintSerializer
import io.github.z4kn4fein.semver.constraints.MavenStyleFormatter
import io.github.z4kn4fein.semver.constraints.MavenStyleParser
import io.github.z4kn4fein.semver.constraints.satisfiedBy
import io.github.z4kn4fein.semver.constraints.satisfiedByAll
import io.github.z4kn4fein.semver.constraints.satisfiedByAny
import io.github.z4kn4fein.semver.constraints.toConstraint
import io.github.z4kn4fein.semver.constraints.toConstraintOrNull
import io.github.z4kn4fein.semver.constraints.toMavenConstraint
import io.github.z4kn4fein.semver.constraints.toMavenConstraintOrNull
import io.github.z4kn4fein.semver.constraints.toMavenFormat
import io.github.z4kn4fein.semver.toVersion
import kotlinx.serialization.json.Json
fun main() {
//sampleStart
print(Json.encodeToString(MavenConstraintSerializer, ">1.2".toConstraint()))
//sampleEnd
}Content copied to clipboard
import io.github.z4kn4fein.semver.constraints.Constraint
import io.github.z4kn4fein.semver.constraints.ConstraintSerializer
import io.github.z4kn4fein.semver.constraints.MavenConstraintSerializer
import io.github.z4kn4fein.semver.constraints.MavenStyleFormatter
import io.github.z4kn4fein.semver.constraints.MavenStyleParser
import io.github.z4kn4fein.semver.constraints.satisfiedBy
import io.github.z4kn4fein.semver.constraints.satisfiedByAll
import io.github.z4kn4fein.semver.constraints.satisfiedByAny
import io.github.z4kn4fein.semver.constraints.toConstraint
import io.github.z4kn4fein.semver.constraints.toConstraintOrNull
import io.github.z4kn4fein.semver.constraints.toMavenConstraint
import io.github.z4kn4fein.semver.constraints.toMavenConstraintOrNull
import io.github.z4kn4fein.semver.constraints.toMavenFormat
import io.github.z4kn4fein.semver.toVersion
import kotlinx.serialization.json.Json
fun main() {
//sampleStart
val decoded = Json.decodeFromString(MavenConstraintSerializer, "\"[1.2,)\"")
print(decoded)
//sampleEnd
}Content copied to clipboard