scala - 不清楚的 Scala list 语法

标签 scala syntax manifest

我看到一段Scala代码,其 list 语法如下。我不知道 WireFormat 在这里意味着什么。它给 list A 添加了什么约束?这是否意味着类型 A 必须扩展特征 WireFormat?

我找不到任何有关此类语法的文档。

trait WireFormat[A] {
  def toWire(x: A, out: DataOutput)
  def fromWire(in: DataInput): A
}

class DList[A : Manifest : WireFormat]

最佳答案

这是一个context bound 。两种类型用冒号分隔,仅意味着有两个隐式参数。

换句话说,它与以下内容相同:

class DList[A](implicit x: Manifest[A], y: WireFormat[A])

关于scala - 不清楚的 Scala list 语法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9961463/

相关文章:

java - 使用 JRE 7u45 运行小程序时出现权限属性警告

java - Scala 开关在成功匹配后继续匹配下一个案例

scala - 我应该在 Spark sql 中使用哪一个来获得更好的性能,是从 Parquet 文件读取数据还是从数据库读取数据?

Scala 的 "for comprehension"与 future

generics - 具有泛型的特征的语法

android - 应用程序没有出现在应用程序列表中?

java - Android-按下HOME时如何取消所有 Activity ?

scala - 属性错误 : 'list' object has no attribute 'map'

mysql - 错误语法-mysql

Java 泛型和静态工厂方法——语法