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

scala Обработка Either & Neither
Не уверен, как это назвать, вариант подойдет так же хорошо, как и Либо, мне все равно нужно обработать третий случай. Scalaz, вероятно, уже предоставляет что-то подобное, но мне любопытно узнать, как без отдельной библиотеки можно кратко справиться...
430 просмотров
schedule 04.08.2023

Либо, Варианты и для понимания
Я кодировал для понимания и кое-что задавался вопросом: def updateUserStats(user: User): Either[Error,User] = for { stampleCount <- stampleRepository.getStampleCount(user).right userUpdated <-...
2103 просмотров
schedule 11.07.2023

Метод Scala.Either getOrElse
Почему, когда я печатаю это, все работает нормально? Right(2).left getOrElse Right(4).left getOrElse Left("Error") но когда я набираю эту компиляцию, происходит сбой? Right[String, Int](2).left getOrElse Right[String, Int](4).left...
3136 просмотров
schedule 17.01.2024

Идиоматический способ написать firstRightOrLefts в Haskell?
У меня есть следующий метод: firstRightOrLefts :: [Either b a] -> Either [b] a firstRightOrLefts eithers = case partitionEithers eithers of (_, (x : _)) -> Right x (xs, _) -> Left xs Что меня беспокоит, так это...
224 просмотров
schedule 30.03.2022

Scala Future, flatMap, работающая на Either
Есть ли действительно способ преобразовать объект типа Future [Either [Future [T1], Future [T2]]] в и объект типа Either [Future [T1], Future [T2]]? Может быть, что-то вроде flatMap, которое работает на Either .... Я пытаюсь заставить этот код...
2778 просмотров
schedule 17.06.2023

Идиоматическая обработка ошибок в Clojure
Когда я надеваю шляпу C, я думаю, что, возможно, идиоматический Clojure просто делает простую вещь и проверяет возвращаемые значения. Когда я надеваю шляпу Java (неохотно, должен добавить), я думаю про себя, что, поскольку Clojure работает на JVM,...
7834 просмотров

Future[List[Error]/Double]] в Future[[List[Error]\/List[Double]] в Scala
Я играю со Scala (z), чтобы изучить функциональное программирование. У меня есть значение типа Future[List[Error \/ Double]] , и я хочу преобразовать его во что-то с типом Future[[List[Error] \/ List[Double]] . Цель состоит в том, чтобы...
128 просмотров
schedule 24.03.2024

Как использовать asRight для создания экземпляра Both с кошками
Я пытаюсь создать экземпляр Either , используя asRight в REPL: import cats._ import cats.data._ import cats.implicits._ scala> val x = "xxx".asRight <console>:20: error: value asRight is not a member of String val x =...
1555 просмотров
schedule 17.05.2023

Преобразователи монад, объясненные в Javascript?
Мне трудно понять преобразователи монад, отчасти потому, что в большинстве примеров и объяснений используется Haskell. Может ли кто-нибудь привести пример создания преобразователя для слияния фьючерсной и любой монады в Javascript и того, как его...
1365 просмотров

Ограничить возвращаемый тип функции, которая принимает либо
Я пытаюсь сделать такую ​​функцию: def foo(x: Either[String, Int]) = x match { case Left(s) => Left("foo:" + s) case Right(n) => Right(n+1) } Это работает, но я ищу способ убедить вызывающего, что результат всегда будет того же...
85 просмотров
schedule 26.11.2023

Обработка возвращаемых типов f64 или Complex64. Дженерики? Либо?
У меня есть работающая программа на Rust, использующая реальные двойники ( f64 ) в качестве базового типа, и я хочу расширить систему, чтобы она также могла обрабатывать комплексные значения ( num::complex::Complex64 ). Функция (урезанный пример)...
162 просмотров
schedule 12.04.2022

Обработка ошибок для нескольких значений Both
У меня есть два значения either , например: Either String Config -- error string or config parsed Either String Env -- error string or environment variables detected И я хотел бы извлечь их значения в эту запись: type App = App {...
181 просмотров
schedule 30.11.2023

Scala либо со списком
Я хотел реализовать аналогичный тип с именем Result для типа Either . Основное отличие состоит в том, что левая сторона типа Result всегда должна быть списком чего-то. Какое определение типа было бы правильным для этого? Я пробовал иметь...
119 просмотров
schedule 03.08.2022

ADT против любого из исключений
Итак, текущая реализация использует твиттер Future вместе с генерацией исключений, чтобы сигнализировать о недопустимом варианте использования вместе с for-comprehensions , например: def someMethod(a: ...): Future[X] = { // do something //...
328 просмотров
schedule 01.04.2023