ConstraintSerializer

object ConstraintSerializer : KSerializer<Constraint>

Built-in kotlinx.serialization serializer that encodes and decodes Constraint as its string representation.

Samples

import io.github.z4kn4fein.semver.constraints.Constraint
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.toVersion
import kotlinx.serialization.Serializable
import kotlinx.serialization.decodeFromString
import kotlinx.serialization.encodeToString
import kotlinx.serialization.json.Json
fun main() { 
   //sampleStart 
   @Serializable
data class Data(val constraint: Constraint)

val data = Data(constraint = ">1.2".toConstraint())
print(Json.encodeToString(data)) 
   //sampleEnd
}
import io.github.z4kn4fein.semver.constraints.Constraint
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.toVersion
import kotlinx.serialization.Serializable
import kotlinx.serialization.decodeFromString
import kotlinx.serialization.encodeToString
import kotlinx.serialization.json.Json
fun main() { 
   //sampleStart 
   @Serializable
data class Data(val constraint: Constraint)

val decoded = Json.decodeFromString<Data>("{\"constraint\":\">1.2\"}")
print(decoded.constraint) 
   //sampleEnd
}

Functions

Link copied to clipboard
open override fun deserialize(decoder: Decoder): Constraint
Link copied to clipboard
open override fun serialize(encoder: Encoder, value: Constraint)

Properties

Link copied to clipboard
open override val descriptor: SerialDescriptor

Sources

Link copied to clipboard