我在 scala 中有一个更高种类的用户定义别名:
type FutureOfLastError = Future[LastError]
我也有这种类型的值:
val myFuture: FutureOfLastError = ...
要编写可读的代码,我想定义(例如)一个方法,如
def mapToString = { ... }
它将 FutureOfLastError 的实例映射到 Future[String] 并将其称为
myFuture mapToString
我怎样才能做到这一点?甚至可能吗?我已经尝试过封装在一个案例类中,我想到了各种隐式转换。
我最喜欢的选择是类型别名上的伴生对象,但我无法让它工作,因为我无法从伴生对象调用特征 Future 的方法(如 map 等)。