Использование Klaxon для JSON с Arrow для Option в Kotlin? - PullRequest
0 голосов
/ 17 октября 2019

Колтин новичок здесь. Если у меня есть библиотека с (Kotlin) Заемщиками и Книгами, и Book извлекается, когда он имеет Borrower (используя тип данных Arrow * Option):

data class Borrower(val name: Name, val maxBooks: MaxBooks)
data class Book(val title: Title, val author: Author, val maybeBorrower: Option<Borrower> = None)

Как мне кодировать идекодировать между крошечной библиотекой:

val br1 = Borrower("Borrower1", 1)
val bk1 = Book("Title1", "Author1", Some(br1))
val bk2 = Book("Title2", "Author2", None)

И это JSON-представление:

val jsonStringBooks = """[{"title":"Title1","author":"Author1","borrower":{"name":"Borrower1","maxBooks":1}},{"title":"Title2","author":"Author2","borrower":null}]"""

Использование Klaxon?

Представление Option (или Either?) через клаксон меня выкидывает. Я верю, что Scala-json обрабатывает эти типы данных.

Спасибо.

...