Как преобразовать в изысканный шрифт?
Я использую библиотеку https://github.com/fthomas/refined и хочу преобразоватьjava.util.UUID
к изысканным Uuid
.
Как конвертироватьjava.util.UUID
к изысканным Uuid
?
Обновить
У меня есть следующие http-маршруты:
private val httpRoutes: HttpRoutes[F] = HttpRoutes.of[F] {
case GET -> Root / UUIDVar(id) =>
program.read(id)
а функция чтения определяется следующим образом:
def read(id: Uuid): F[User] =
query
.read(id)
.flatMap {
case Some(user) =>
Applicative[F].pure(user)
case None =>
ApplicativeError[F, UserError].raiseError[User](UserNotRegistered)
}
Компилятор жалуется:
type mismatch;
[error] found : java.util.UUID
[error] required: eu.timepit.refined.string.Uuid
[error] program.read(id)
[error]
^
1 ответ
Решение
Вот трансформация java.util.UUID
в eu.timepit.refined.api.Refined[String, eu.timepit.refined.string.Uuid]
import java.util.UUID
import eu.timepit.refined.string.Uuid
import eu.timepit.refined.api.Refined
val uuid: UUID = UUID.fromString("deea44c7-a180-4898-9527-58db0ed34683")
val uuid1: String Refined Uuid = Refined.unsafeApply[String, Uuid](uuid.toString)