首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用泛型参数取消应用Scala

使用泛型参数取消应用Scala
EN

Stack Overflow用户
提问于 2018-07-13 05:43:30
回答 0查看 376关注 0票数 2

因此,如果可能的话,我希望确保大小写匹配中的提取器将为其提供一个正确的泛型类型的别名。

代码语言:javascript
运行
复制
trait MyT[A]

case class MyC[A](t: MyT[A])

def foo: MyC[_]

def go[A](t: MyT[A]): Option[MyC[A]] = foo match {
  case m@MyC(`t`) => Some(m.copy(t = t))
  case _ => None
}

这是可行的,但我不喜欢做m.copy(t = t)。基本上,m@将绑定到MyC[Any],但我希望它绑定到MyC[A]。这是可能的吗,也许可以使用自定义的unapply

EN

回答

页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51314898

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档