1
繼赫然啓發question通過關於使用無形的ADT枚舉@TravisBrown,我留下下面的代碼片段:隱式參數:如何在函數簽名中進行編碼?
implicitly[EnumerableAdt[Foo]].values
我想一個方法中封裝,這樣我不用到每個調用後的.values
(這對我來說似乎是一個更清潔的API,那樣)。 但是我似乎無法做到正確。每當我嘗試封裝implicitly[EnumerableAdt[Foo]]
時,我都會得到隱式解析錯誤。
我試過,這使得最有意義的我,是,例如:
def imply[T](implicit ev: T):Set[T] = implicitly[EnumerableAdt[T]].values
肯定沒有取得更少意義,我的ev
。
我不是專家級的編程。
非常感謝,它的工作原理! – Yaneeve