Scala 使用返回类型集合的函数定义泛型特征

Scala 使用返回类型集合的函数定义泛型特征,scala,Scala,我正在尝试创建一个Scala特性,作为许多解析器的基本特性。我有许多case类来存储解析后的数据集。所有这些case类都扩展了可解析特性 一些课程将返回 Array[C <: Parseable] Array[Ctrait Parser[A[\uu],B你能详细介绍一下所有这些案例类扩展可解析特性吗?你能给出一个具体的解析器示例吗?扩展可解析特性的案例类对我来说有点不自然。我会试试看!我有许多不同的文本文件,带有管道分隔的数据。每个文件都需要进行不同的解析,所以我正在尝试创建一组解析器,

我正在尝试创建一个Scala特性,作为许多解析器的基本特性。我有许多case类来存储解析后的数据集。所有这些case类都扩展了可解析特性

一些课程将返回

Array[C <: Parseable]

Array[C
trait Parser[A[\uu],B你能详细介绍一下所有这些案例类扩展可解析特性吗?你能给出一个具体的解析器示例吗?扩展可解析特性的案例类对我来说有点不自然。我会试试看!我有许多不同的文本文件,带有管道分隔的数据。每个文件都需要进行不同的解析,所以我正在尝试创建一组解析器,每个解析器都将扩展解析器特性。解析文件的最终结果将是一个包含已解析数据的case类。每个case类都扩展了可解析特性。由于各种原因,解析器生成的case类列表可能是数组或Spark数据集,因此需要通用返回type。我想确保返回的列表只能是可解析的子类型。谢谢!我一直在努力想如何将其应用到我的解析器代码中,最后得出以下结论:object DemographicParser Extended parser[Array,Patient]{def parse(filename:String)(隐式sparkSession:sparkSession):Array[Patient]=。。。
Dataset[C <: Parseable]
trait Parser[A[_], B <: Parseable]{

      def parse(s:String): A[B]

}