问题标签 [vavr]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
26 浏览

java - RuntimeException 被视为 ServerSOAPFaultException

为什么如下代码:

当异常为 RuntimeException 时调用第一种情况。RuntimeException 不是 ServerSOAPFaultException 的实例。

0 投票
2 回答
1081 浏览

java - 模式匹配匹配所有 Case 条件

我是新的 vavr,所以我不知道我是否缺少一些基本的东西,但我正在做 Java 目前没有的模式匹配。调试后,我意识到 vavr 匹配所有案例,但如果案例条件不匹配,如果提供了供应商,则不会执行该值。那正确吗?

例如:

在上面的示例中,如果 days = MONDAY 它调用 CASE 方法传递枚举值并检查是否存在匹配项。在这种情况下,它是匹配的,因此它将返回“星期一”。我希望模式匹配会在我们得到匹配后终止。但事实证明,TuESDAY 也再次进入 Case 方法,模式不匹配,因此值仍然是“星期一”,但我想知道一旦满足条件,有没有办法停止模式匹配。

0 投票
1 回答
1527 浏览

java - VAVR 组合 Try and List

我试图弄清楚使用 VAVR 的 Try 的惯用方式是什么。我正在查看的用例必须执行以下步骤:
- 获取鞋子列表(调用可以抛出检查异常)
- 清理每只鞋子(调用可以抛出检查异常)
- 恢复每只鞋子(调用可以抛出已检查的异常)
- 返回清洁/修复鞋子的列表

这是我的示例玩具代码,其中 processRequest 方法购买了 n 双鞋,清洁并修复它们;打印错误(如果有):

我的问题是:如何简化这个逻辑?有没有可以消除的方法调用?可读性可以提高吗?

0 投票
1 回答
116 浏览

java - Vavr Set 字段应该是 volatile、atomic 还是以其他方式声明?

在 vavr 中,您拥有不可变的 io.vavr.collection.Set。考虑到addName()andnames()可以从各种线程中调用,使用它的正确方法和惯用方法是什么?

我应该使用易失性吗?我应该AtomicRef<Set<String>>改用吗?

0 投票
1 回答
60 浏览

java - 使用选项创建查询作为参数

我正在尝试通过 Vavr 的 Option 值进行 mongo 查询(使用 Spring Data)来搜索记录。我有值选项 userId,我想知道是否可以通过此参数在数据库中搜索。

我在 MongoDB 和 Spring 文档中搜索过,但这些都不是关于 Vavr 类型的任何东西,例如 Option。此查询均无效。

其中 userId 是 Vavr 选项

0 投票
1 回答
689 浏览

java - Match on Options inside Tuple with Vavr

Using Vavr's types, I have created a pair of Somes:

I'd like to get at the integers 1 and 2 using Vavr's match expression; this is how I currently do it:

This works and returns "1/2" but has me worried since I call the unsafe get methods on the two Somes.

I'd rather have the match expression decompose input to the the point where it extracts the innermost integers.

This note in Vavr's user guide makes me doubt whether that's possible:

⚡ A first prototype of Vavr’s Match API allowed to extract a user-defined selection of objects from a match pattern. Without proper compiler support this isn’t practicable because the number of generated methods exploded exponentially. The current API makes the compromise that all patterns are matched but only the root patterns are decomposed.

Yet I'm still curious whether there's a more elegant, type-safe way to decompose the nested value input.

0 投票
3 回答
2639 浏览

java - 如何根据选项值获得左/右

我正在尝试Either根据选项值返回值。如果选项存在,我的目标是返回 Either.right(),否则代码应该返回 Either.left()。我使用 Java 8 和 vavr 0.9.2

我想避免有条件的重叠

编译器失败并显示此消息

0 投票
1 回答
231 浏览

java - Spring - 注入 vavr 集合

在我的 Spring 项目中,我广泛使用来自vavr库的集合。有时我需要注入 bean 的集合。据我所知,Spring 只能从 JDK 注入集合,例如List, Set,Map等。有没有办法注入 vavr 集合?我想做这样的事情:

0 投票
1 回答
201 浏览

java - 使用 Vavr 获取正则表达式组

考虑到 Vavr 提供tuples,是否可以使用它们来捕获正则表达式中的组?

以 HTTP 请求行为例进行匹配

获取/资源 HTTP 1.1

和一个匹配的模式

Vavr 中是否有将三个匹配字符串作为元组返回的方法?

0 投票
2 回答
521 浏览

java - 如何从弹性4j TimeLimitter 中抛出自定义异常?

我正在使用弹性 4j 的 TimeLimiter 来控制 RestTemplate 调用的超时请求。如果 response.getBody() 为空,我将抛出一个自定义异常,但是在 getorElseThrow 中提供了 Resilience4j 总是抛出异常。如何在这里抛出自定义异常?

在这里,我正在尝试抛出“methodWhichThrowsCustomException”抛出的异常,但我无法做到这一点,它只会抛出此处抛出的异常。