相关疑难解决方法(0)

HList#foldLeft()返回什么?

我正在尝试使用来自Shapeless的HList.

这是我的第一次尝试:

trait Column[T] {
     val name: String
}

case class CV[T](col: Column[T], value: T)

object CV {
    object columnCombinator extends Poly2 {
        implicit def algo[A] = at[(String, String, String), CV[A]] { case ((suffix, separator, sql), cv) ?
            (suffix, separator, if (sql == "") cv.col.name+suffix else sql+separator+cv.col.name+suffix)
        }
    }

    def combine[A <: HList](columns: A, suffix: String, separator: String = " and ")
                           (implicit l: LeftFolder[A, (String, String, String), columnCombinator.type]): String =
        columns.foldLeft((suffix, separator, ""))(columnCombinator)._3
}
Run Code Online (Sandbox Code Playgroud)

问题是我不知道foldLeft这个例子中返回了什么.

我希望它返回(String, …

scala shapeless

6
推荐指数
1
解决办法
399
查看次数

标签 统计

scala ×1

shapeless ×1