Set

data class Set<T : Any>(val value: T) : PatchOp<T> , UpdateOp<T>

JSON Merge Patch set operation that sets/replaces the current value.

Constructors

Link copied to clipboard
fun <T : Any> Set(value: T)

Functions

Link copied to clipboard
open override fun toString(): String

Properties

Link copied to clipboard
val value: T

Extensions

Link copied to clipboard
inline fun <T : Any> UpdateOp<T>.getOrDefault(current: () -> T): T

Retrieves a value depending on the patch operation where none is mapped to the value returned by given the current function.

Link copied to clipboard
inline fun <T : Any> PatchOp<T>.getOrDefaultNullifyingDelete(current: () -> T?): T?

Retrieves a value depending on the patch operation where delete is mapped to null and none is mapped to the value returned by given the current function.

Link copied to clipboard
inline fun <T : Any> PatchOp<T>.getOrElse(block: (deleted: Boolean) -> Nothing): T

Retrieves a value for set operations and calls the block function for delete and none operations.

Link copied to clipboard
inline fun <T : Any, R : Any> PatchOp<T>.map(transform: (T) -> R): PatchOp<R>

Transforms the value for set operations by calling the provided transform function and creating a new set operation; all other patch operations (delete and none) are returned as is.

inline fun <T : Any, R : Any> UpdateOp<T>.map(transform: (T) -> R): UpdateOp<R>

Transforms the value for set operations by calling the provided transform function and creating a new set operation; none operations are returned as is.

Link copied to clipboard
inline fun <T : Any> PatchOp<T>.use(block: (T?) -> Unit)

Allows using a patch operation by passing an appropriate value to the given block function.

inline fun <T : Any> UpdateOp<T>.use(block: (T) -> Unit)

Allows using a patch update operation by passing an appropriate value to the given block function.