Вопросы по теме '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 просмотров
schedule
19.12.2022
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 просмотров
schedule
14.10.2023
Ограничить возвращаемый тип функции, которая принимает либо
Я пытаюсь сделать такую функцию:
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