cost 183 ms
在 Scala 中綁定通配符類型參數

[英]Bind wildcard type argument in Scala

在 Scala 2 中,您當然可以使用通配符或存在類型作為類型 arguments。但是,這意味着您並不總是有想要使用的類型的名稱。 這有時會導致奇怪的情況,您需要依靠類型推斷來規避顯式編寫類型。 這是我的意思的一個有點人為的例子:case class Container[T](value: T) ...

在 Scala 中,模式匹配如何在使用提取器對象時選擇使用哪種情況?

[英]In Scala, how does pattern matching choose which case to use when using extractor objects?

我不確定模式匹配如何知道StatusReply是成功還是錯誤。 通常,我不確定在使用提取器對象時模式匹配如何選擇要使用的大小寫。 提取器對象中的unapply方法有一個參數,它指定要解構的對象的類型。 我猜測模式匹配根據 unapply 方法中的參數類型選擇大小寫。 StatusReply.Su ...

Scala 特征和方法參數的高級類型

[英]Scala Higher Kinded Types for Traits and Method Parameters

我有一個特征定義,它在像這樣實例化時包含副作用: 我的 Param 是 case class,它本身采用如下類型參數: 現在我的問題是,如果我將特征方法簽名更改為以下內容,這意味着什么: 如您所見,我在引用 Param 案例 class 的所有地方都有通配符。這是一個好方法嗎? 我不想將我的接口與方 ...

在 Swift 5.7 中編碼/解碼 [any TypeName] 類型的異構數組的最佳方法是什么?

[英]What's the best way to encode/decode a heterogenous array of type [any TypeName] in Swift 5.7?

所以我有一個大致這樣結構的協議: 我有一個這樣的枚舉: 然后我有一個 object 使用 Swift 的新 5.7 語法,它包含如下混合類型的Content : 因此,我能夠從any Content的任何部分的 type 屬性中破譯它是哪種類型的內容,並像這樣正確地進行類型轉換: 但這只是將單個內 ...

縮小 class 實現協議中的 function 參數類型

[英]Narrowing down the function argument type in class implementing protocol

我有一個簡單的 http 客戶端協議: 現在,我正在嘗試將此協議用作客戶端將使用的類型(例如,某些MyThingRepository將注入HttpClientProtocol而不知道將注入的特定類型 - 用於松散耦合)。 然后我試圖從該協議創建一個具體的 class 。 問題是我得到Type 'Ap ...

將基於“MyProtocol”的泛型函數的參數更改為使用存在的“any MyProtocol”或“some MyProtocol”是否會受到懲罰?

[英]Is there a penalty for changing a generic function's argument based on `MyProtocol` to using the existential `any MyProtocol` or `some MyProtocol`?

通常在討論some之類的東西時,它們指的是返回類型。 這個問題專門關於在參數列表中使用any或some 。 例如,在String的 Swift 文檔中,您有這個初始化程序...... 在 Swift 5.6 中,他們引入了any關鍵字,讓我們更輕松地使用存在類型。 通過這種更改,我理解您理論上可以 ...

Swift 5.7 存在的問題

[英]Issue with Swift 5.7 existentials

我最近將一些最初使用 Type-Erasure 的代碼轉換為使用新的 Swift 5.7 any存在。 但是,在嘗試將any關鍵字與已實現的泛型類型一起使用時,我遇到了一些問題。 我在Xcode 14 Beta 2 (它具有隱式打開的 Existentials)上運行它。 這是一個例子: pro ...

`forall a -> b` 語法是什么意思?

[英]What does the `forall a -> b` syntax mean?

在GHCi中, FUN的種類是這樣顯示的: 起初,我認為這是一種迂回的說法 但事實證明模板 Haskell 有一個單獨的構造函數用於此表單: ForallVisT 。 我找不到關於它的任何文檔,而且我什至不知道如何以有意義的方式開始試驗它。 這個語法是什么意思? forall a -> b ...

如何從 scope 中的約束系列派生類型類實例?

[英]How can I derive typeclass instances from constraint families that are in scope?

編輯:我跟進了一個更具體的問題。 謝謝這里的回答者,我認為后續問題可以更好地解釋我在這里介紹的一些困惑。 TL; DR我正在努力將約束證明納入表達式,同時在構造函數上使用具有存在約束的 GADT。 (這是一個嚴重的嘴,對不起!) 我將一個問題提煉為以下內容。 我有一個簡單的 GADT,它表示稱 ...

使用 scala 路徑相關類型作為 function codomain 時,為什么無法為該 function 添加別名?

[英]When using scala path dependent type as function codomain, why is it impossible to add alias for that function?

這是一個簡單的例子: 這給出了編譯錯誤: 這個(some other)從哪里來? 是類型選擇規則不明確導致的編譯器bug(理論上應該在scala 3解決)? 更新 1對不起,我剛剛意識到P#Repr不應該被稱為類型選擇,它應該只指val p: P;p.Repr ,現在它增加了更多的混亂,因為: 我 ...

Existential Container 與符合協議的結構體實例的關系

[英]Relation between Existential Container and struct instance which conform protocol

我試圖了解如何找到協議方法的實現。 我知道 Swift 使用 Existential Container 在堆棧內存中進行固定大小的存儲,它管理如何描述內存中struct的實例。 它有一個價值見證表(VWT)和協議見證表(PWT) VWTs 知道如何在 struct 實例(它們的生命周期)中管 ...

生命周期子類型化和 impl-trait

[英]Lifetime sub-typing and impl-trait

我遇到了一種有趣的生命周期子類型化形式,我認為它是有效的,但編譯器對此持懷疑態度。 考慮以下 function,它計算兩個引用序列的點積。fn dot_prod<'a>(xs: impl IntoIterator<Item = &'a usize>, ys: imp ...


 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM