1
我嘗試不成形HList映射
import shapeless._
val ilist = List(1,2,3) ;
val slist = List("a", "b", "c") ;
(ilist :: slist :: HNil).map(list: List[_] => list -> list.length)
和編譯器說,它需要的參數類型的映射功能或提供類型List[_]
當它不能找到list
值。有一個簡單的映射示例嗎?
沒有與普通斯卡拉沒有這樣的問題列出
val list1 = 1 :: 2 :: Nil; val list2 = 3 :: 4 :: Nil
(list1 :: list2 :: Nil) map {list => list -> list.length}
編譯罰款。
如果我要地圖'HList [字符串 - > F [_]]什麼'?編譯器會拒絕純粹的轉換fun(List〜>> Int)=> fun((String - > List)〜>> Int)'。 –
@ValentinTihomirov不知道我對你的理解是否正確,但是你應該把'PolyN'擴展到更復雜的場景。請參閱https://github.com/milessabin/shapeless/wiki/Feature-overview:-shapeless-2.0.0#polymorphic-function-values,段落的末尾,其中定義了「對象大小」 – Archeg