Вопросы по теме 'circe'

Получение кодека circe для семейства классов запечатанных случаев, где базовый признак имеет (запечатанный) член типа
Я могу легко вывести кодек для семейства классов запечатанных корпусов следующим образом: import io.circe._ import io.circe.generic.auto._ sealed trait Base case class X(x: Int) extends Base case class Y(y: Int) extends Base object Test extends...
1210 просмотров
schedule 23.07.2023

Разбор Json с помощью Circe и монокля
Я написал этот пример кода package com.abhi import io.circe._ import io.circe.optics.JsonPath._ object CirceTest extends App { val id = root.id.long val date = root.date.long val input = """ |{ | "id" : 0,...
565 просмотров
schedule 08.03.2023

создание unmarshaller с использованием circe
Я играю с клиентской частью Akka Http. Я создал простой запрос, но как я могу отменить ответ? на стороне сервера легко использовать circe для маршалинга ответа, но у меня есть трудности на стороне клиента import akka.actor.ActorSystem import...
1069 просмотров
schedule 20.06.2022

С Circe Json, почему неявное разрешение медленнее во время выполнения
Почему Circe Json медленнее с поиском неявного декодера по сравнению с сохранением неявного декодера в val. Я ожидаю, что они будут одинаковыми, потому что неявное разрешение выполняется во время выполнения. import io.circe._ import...
894 просмотров
schedule 11.12.2023

Как декодировать ADT с помощью circe, не устраняя неоднозначность объектов
Предположим, у меня есть такой ADT: sealed trait Event case class Foo(i: Int) extends Event case class Bar(s: String) extends Event case class Baz(c: Char) extends Event case class Qux(values: List[String]) extends Event Общий вывод по...
6581 просмотров

Дивергентное неявное расширение при абстрагировании над Traversable
ОКОНЧАТЕЛЬНОЕ РЕДАКТИРОВАНИЕ: все угловые случаи были решены, единственная проблема заключается в том, что мне нужно скопировать частный метод Encoder.encodeTraversableOnce из Цирцеи, чтобы заставить Encoder работать. Мне также пришлось изменить...
243 просмотров
schedule 23.07.2022

Ошибки при преобразовании массива JSON в список классов случаевc
Я пытался разобрать JSON из внешней службы в список классов случаев, используя circe (я новичок как в circe , так и в Scala). Класс дела выглядит следующим образом: case class User( id: Int, username: Option[String],...
355 просмотров
schedule 20.07.2022

Как разобрать вариант Json с помощью библиотеки Circe на Scala?
Я пытаюсь создать декодер для моей модели Json, используя классы case, но я не могу найти способ декодировать список вариантов jsons. object CirceTester { def main(args: Array[String]): Unit = { val json = """{ "foo": "bar", "baz":...
114 просмотров
schedule 12.11.2022

Как вставить пустой объект в JSON с помощью Circe?
Я получаю объект JSON по сети в виде строки. Затем я использую Цирцею для его анализа. Я хочу добавить к нему несколько полей, а затем передать его ниже по потоку. Практически все это работает. Проблема в том, что мое «добавление» на самом...
1453 просмотров
schedule 02.09.2023

Как создать собственный декодер в Circe, который анализирует значения времени
Я пытаюсь декодировать строку вида «5 м», «5 с» или «5 мс» в объекты типа FiniteDuration, которые составляют, соответственно, 5 минут, 5 секунд, 5 миллисекунд. Я пытаюсь создать собственный декодер и кодировщик для проекта, который включает класс...
739 просмотров
schedule 31.05.2024

Разбор файла с содержимым в формате Json в Scala
Я хочу проанализировать файл с содержимым в формате json. Из файла я хочу извлечь несколько свойств (имя, DataType, Nullable), чтобы динамически создавать имена некоторых столбцов. Я рассмотрел несколько примеров, но большинство из них используют...
1204 просмотров
schedule 12.06.2022

Scala, Circe, Http4s - есть ли способ кодировать Throwable в Circe?
Я создал иерархию ошибок: sealed trait MyError extends Throwable final case class SecondError(msg: String) extends MyError Теперь я мог получить такую ​​ошибку в своих http4s маршрутах: case GET -> Root / "things" => for {...
308 просмотров
schedule 15.01.2023

Как декодировать общий класс case с помощью полуавтоматики в Circe
У меня есть следующий класс case: case class QueryResult[T: Decoder](data: T) Работает с автоматическим выводом. Но я не мог решить это иметь полуавтоматическое происхождение. Вот мой тестовый пример: //import...
234 просмотров
schedule 16.04.2022

Как удалить нулевые значения в списке объектов с помощью Circe
Я пытаюсь закодировать список объектов с помощью Circe, что-то похожее на: val test = Seq(MyObject("hello", None, 1, 2, None) Я пытаюсь разобрать это с помощью Цирцеи: test.asJson Но это создает объект JSON: [ { name:...
1330 просмотров
schedule 13.06.2022

Использование Circe для декодирования строки Json
У меня есть строка Json как val configInfo = { "car": { "requesters": { "request1": "key1", "request2": "key2" }, "provider": { "request1": "key3", "request2": "key4"...
859 просмотров
schedule 07.02.2023

Цирцея: перемещение неявного кодировщика в общий класс
Я работаю с библиотекой Цирцеи и хочу изучить веревки. Рассмотрим следующий код: import io.circe.generic.auto._ import io.circe.syntax._ import io.circe.{Decoder, Encoder, Json} sealed trait Something case class Name(val name: String) extends...
372 просмотров
schedule 23.07.2022

Почему функция circe `or` (очевидно, унарная функция) работает с reduceLeft, которая требует бинарной операции?
Мы с А делаем некоторую работу с circe по кодированию/декодированию некоторых ADT, и мы столкнулись с некоторыми функциями, которые мы принципиально не понимаем. Примеры, приведенные в документации circe, работают, как и ожидалось, но при детализации...
74 просмотров
schedule 26.04.2023

ConfiguredJsonCodec для ADT со змеиным корпусом
Мне нужно использовать json api, где есть список дискретных строковых значений в случае змеи. Пример ниже работает, но я хотел бы удалить руководство fooDecoder в пользу аннотации ConfiguredJsonCodec (в настоящее время закомментированной). Или...
201 просмотров
schedule 19.07.2022