3
我有一些類型標記的Scala代碼,我需要爲Java用戶提供這些代碼。我的問題歸結爲解決以下問題:手動創建類型標記
給定兩個Scala類型標記,如何手動爲Tuple2 [A,B]創建一個類型標記?
如果這有什麼差別我的具體情況是有點簡單: 我有一個一類的標籤,我需要創建Tuple2 [字符串,A]代碼類型
我有一些類型標記的Scala代碼,我需要爲Java用戶提供這些代碼。我的問題歸結爲解決以下問題:手動創建類型標記
給定兩個Scala類型標記,如何手動爲Tuple2 [A,B]創建一個類型標記?
如果這有什麼差別我的具體情況是有點簡單: 我有一個一類的標籤,我需要創建Tuple2 [字符串,A]代碼類型
類型標籤通常用作暗含,所以隱式系統對它們非常熟悉。只要告訴斯卡拉你想要什麼類型,並隱式地詢問它。
def tupleTag[A : TypeTag, B: TypeTag]: TypeTag[Tuple2[A, B]] = implicitly
如果可以實例化,Scala會這樣做。如果它不能,這是一個編譯器錯誤。在這種情況下,由於A
和B
已經是具體的(因爲它們有標籤),因此Tuple2[A, B]
也總是具體。
你和你的隱性魔法:) – harel