cost 385 ms
Scala:理解中的可覆蓋隱式

[英]Scala: overridable implicits in for-comprehension

我試圖通過API定義隱式,並希望允許客戶端覆蓋它們。 這里是一個討論:[ 如何覆蓋一個導入的隱式值? 我已經嘗試過最簡單的解決方案。 它按預期工作。 現在,我想以相同的方式定義基於未來的API,並將ExecutionContext定義為具有默認值的隱式。 我對理解力的每一行都遇到 ...

嘗試對有序類的實例進行排序時,為什么會出現“發散的隱式展開”錯誤?

[英]Why am I getting a “ diverging implicit expansion” error when trying to sort instances of an ordered class?

關於這個問題有很多問題,但是經過一個小時的閱讀,我仍然無法理解我做錯了什么。 這是我擁有的代碼(Scala 2.11)的最小示例: 當我嘗試基本比較時,它可以正常工作: 但是,當嘗試訂購列表時,編譯器對我大喊: 編輯:感謝Dmytro Mitin,我現在知道Seq[An ...

None的隱式查找與Option的Contravariant Typeclass不兼容

[英]Implicit lookup for Typeclass of None is not compatible with Contravariant Typeclass of Option

我沒有以下代碼可以編譯,而且我對自己做錯了很好奇。 我定義了一個Contravariant Jsonwriter特性和一個接受隱式作者的函數: 另外,我定義了這些作者的一些實例: 現在,我編寫了一個測試: Some(1.0)的第一個測試工作正常,None的第二個測試 ...

泛型函數中的隱式轉換

[英]Implicit conversions in generic function

我需要從Any轉換為基本數字類型,例如Int或Double。 我通過使用Scala隱式實現了這些轉換。 我的代碼與此類似: 問題是我需要在像這樣的通用函數中進行這些轉換: 這是對doStuffAndConvert的調用: 但是,編譯器將引發以下錯誤: 我試圖通 ...

導入隱式轉換而不使用SparkSession實例

[英]import implicit conversions without instance of SparkSession

我的Spark-Code混亂了這樣的代碼 或者 我真的不明白為什么我們需要一個SparkSession實例來導入這些隱式轉換。 我寧願做類似的事情: 這個問題有優雅的解決方案嗎? 我對implicits的使用不僅限於$ ,還包括Encoders , .toDF()等。 ...

如何以未來的方式用Scala“pimp my library”?

[英]How can I “pimp my library” with Scala in a future-proof way?

我使用Scala隱式類來擴展我經常使用的對象。 作為一個例子,我有一個類似於Spark DataFrame上定義的方法: 但是如果類已經定義了相同的方法,則不會調用隱式defs。 如果我以后升級到定義DataFrame#deduplicate方法的Spark的新版本會發生什么? 客 ...

Scala中的高級類型約束-邏輯運算符和隱式參數

[英]Advanced Type Constraints in Scala - Logical Operators and Implicit Parameters

我有下面的代碼,效果很好。 輸出: 我想修改方法union的定義,如下所示: union(1)的輸出應為以下內容: Some int: 1 不幸的是,在這種情況下,Scala不知道邏輯運算符Or(並且,不是,..),因此無法對其進行編譯。 我該怎么做? 我在 ...

什么是“ <refinement> 通過TypeTag獲得的類型?

[英]What is a “<refinement>” type gotten through a TypeTag?

我有一個方法: 大多數情況下, print[MyClass]在調用時會打印MyClass ,但有時會打印&lt;refinement&gt; ?。 我正在一個相當復雜的系統上工作(多個互連的jar,10萬行代碼),而且我似乎無法確定是什么決定了這是一種行為還是另一種行為。 但是, ...

如何獲取所需的VectorSpace的隱式實例?

[英]How do I get the implicit instance of the VectorSpace I need?

我正在嘗試使用尖頂使我編寫的線性插值函數更通用 我意識到這可以變得更通用,因為您可以通過這種方式對任何向量空間的元素進行插值。 所以我將其更改為: 但是,當我嘗試像這樣使用它時: 它說它找不到VectorSpace[Seq[Int],Double]的隱式。 有沒有辦法 ...

Scala:未進行隱式轉換?

[英]Scala: implicit conversion not made?

akka.pattern.ask提供了一個隱式轉換(從ActorRef到AskableActorRef ,后者提供了ask方法) 但是,當我使用sbt進行編譯時,無法識別該轉換。 (Intellij看到了隱式轉換,對此沒有任何問題,但是我正在使用sbt進行構建。) 我可以使它明確 ...

調用密封抽象特征子類的Scala隱式

[英]Summoning Scala implicits for subclasses of sealed abstract trait

我正在使用兩個都依賴於隱式參數的Scala庫來為案例類提供編解碼器/編組器(問題中的庫是msgpack4s和op-rabbit)。 一個簡化的示例如下: 一個庫的打印機可以是通用的,前提是存在另一個庫的隱式Show: 我想提供一個抽象化底層庫詳細信息的API-調用者只需要傳遞c ...

Scala的類型類模式中隱式定義的運行時成本

[英]Runtime cost of implicit definitions in Scala's typeclass pattern

我正在看這篇文章,關於如何使用implicits在Scala中模擬類型類。 如果我沒有錯,每次使用遞歸實例聲明的類型類方法時,都會在運行時構造一個新實例( Printer a =&gt; Printer (Option a) )。 這是代碼,每次使用print ,都會在運行時創建一個新的 ...

在scala中有條件地生成隱式

[英]Conditionally generating implicits in scala

我正在研究一個鏈接的隱式函數系統,該系統類似於下面的簡化示例。 測試c1.payload == c2.payload表示我需要執行的測試不在“類型空間”中; 我曾期望我可以進入witnessEvidence定義的witnessEvidence ,但是Scala顯然不允許使用帶有任意類型的隱式 ...

通過隱式測試兩種Scala無形狀HList類型的等效性

[英]Test two scala shapeless HList types for equivalence via implicit

我對測試兩個HList異構記錄是否“等效”感興趣; 也就是說,它們具有相同的鍵/值對,但不一定以相同的順序。 是否有一個預定義的類型謂詞是做什么EquivHLists確實在下面的代碼片段? ...

Scala協方差丟失類型約束

[英]Scala covariance losing type constraints

我想在嘗試解決“錯誤位置問題中的協變量類型參數”情況時如何保留我的類型約束。 這是代碼: 我需要協方差,以便可以查找我的隱式對象。 為了能夠找到隱式的process方法。...我需要使第二類參數協變。 但是,然后我不能在convert方法中使用實際的類型信息。 任何想法 ...

通過類名獲取隱式實例

[英]Get an implicit instance by class name

我想做的是:從類名獲取一個隱式實例。 主要問題是我無法獲取在運行時創建的類類型的隱式實例。 我有的: 我要做的事情:從類名中以某種方式獲取隱式實例。 錯誤:找不到參數worker的隱式值:Worker [typeHolder.Typed] val worker = get ...

為什么使用類型相等檢查隱式失敗?

[英]Why type equality check with implicitly fails?

我想在運行時在類型級別上進行一些計算。 因此,我為它們定義了包裝器類和隱式定義。 但是我不明白為什么在計算過程中類型信息會丟失 編譯器不接受e , l , g : 發生了什么,為什么編譯器拒絕承認X和y.Out是相同的類型。 是否可以改寫該示例以便將其編譯? ...

使用-Ywarn-unused時,從Scala中的分析中排除類型證據參數

[英]Excluding type evidence parameters from analysis in Scala when using -Ywarn-unused

當將-Ywarn-unused傳遞給編譯器時,在Scala中編譯包含類型證據參數的程序(例如T &lt;:&lt; U )會引起警告。 特別是在類型證據參數用於驗證使用幻像類型編碼的約束的情況下,很可能會發生此警告。 例如,在此處編譯文件: https : //github.com/hs ...


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