编写一些通用 Scala 集合的函数
Writing a function of some generic scala collection
我定义了一个案例class...
case class QueryRef[A](id: UUID, descriptor: (A) => Boolean, selector: immutable.Iterable[A] => A])
...这将作为消息在 Akka Actor 之间传递。接收方将使用 descriptor
过滤某些类型 A
的集合,然后使用 selector
.
从结果过滤集合中 select 单个元素
如所写,它仅在接收演员的集合具有类型 immutable.Seq[A]
时才有效。我想概括以上内容,以便它可以与 A
类型的元素的通用集合一起使用。这可能吗?
Scala 集合具有层次结构,如下图所示。您只需要选择适合您的用例的层次结构级别。如果您希望允许映射和集合,那么 Iterable 可能是您的理想选择。
当然,您随后只能使用在该层次结构级别可用的那些函数,您将无法使用任何 Seq 特定功能。
我定义了一个案例class...
case class QueryRef[A](id: UUID, descriptor: (A) => Boolean, selector: immutable.Iterable[A] => A])
...这将作为消息在 Akka Actor 之间传递。接收方将使用 descriptor
过滤某些类型 A
的集合,然后使用 selector
.
如所写,它仅在接收演员的集合具有类型 immutable.Seq[A]
时才有效。我想概括以上内容,以便它可以与 A
类型的元素的通用集合一起使用。这可能吗?
Scala 集合具有层次结构,如下图所示。您只需要选择适合您的用例的层次结构级别。如果您希望允许映射和集合,那么 Iterable 可能是您的理想选择。
当然,您随后只能使用在该层次结构级别可用的那些函数,您将无法使用任何 Seq 特定功能。