implicits

    5熱度

    1回答

    讓我們來考慮下面的代碼: class A object A{ implicit def A2Int(implicit a:A)=1 implicit def A2String(a:A)="Hello" } object Run extends App{ implicit val a: A =new A import A.A2Int //

    0熱度

    1回答

    考慮下面的(工作)段定義DenseVector和陣列之間的雙向隱式轉換: import scala.reflect.ClassTag import org.apache.spark.mllib.linalg.Vectors import breeze.linalg.{DenseVector => BDV} implicit def bdvToSeq[T](vect: BDV[T])

    2熱度

    1回答

    我正在尋找最好的語法,因爲包含類拿起他們包含的類暴露的含蓄嗎? 我該方案具有抽象測試兩個依賴:應用程序的actorsystem的創造,這種情況發生,要求actorsystem以及一個Web客戶端: trait Core { implicit def system: ActorSystem } trait WebClient { implicit def system: A

    16熱度

    1回答

    假設我有一個簡單的類型類,其實例會給我一些類型的值: trait GiveMeJustA[X] { def apply(): X } 而且我有一些實例: case class Foo(s: String) case class Bar(i: Int) implicit object GiveMeJustAFoo extends GiveMeJustA[Foo] { def ap

    7熱度

    1回答

    第一個例子成功地找到了隱式轉換的方法foo(String),但只要我添加一個類型參數(見fails)的編譯已經不解決這個問題: object works { class A { def foo(): String = ??? } implicit class PimpedA(a: A) { def foo(i: String): String =

    2熱度

    1回答

    方法doesNotCompile僅接受僅包含Label[A]條目的HList。有一個映射器將標籤[A]轉換爲字符串(準確地說:Const[String]#λ)。 但是,當我應用映射器時,返回類型是ev1.Out。我知道這實際上是一個只有Strings的HList,但我怎樣才能說服編譯器呢? import shapeless._ import shapeless.poly._ import sh

    3熱度

    2回答

    給定HList爲Label[A](String)我想將它映射到LabelWithValue[A](Label[A], A)的HList,其中實際值來自Map[String, Any]。在下面的例子中,我剛剛定義了方法中值的映射,只要想象這些值來自數據庫即可。 下面的工作,但它是非常veeery hacky,因爲它使用全局變量。相反,我想通過Map[String, Any]到GetLabelWith

    1熱度

    1回答

    我正在閱讀應該像類型類一樣工作的上下文邊界和隱式參數。我看到的例子經常使用Ordering[T]。喜歡的東西: foo[T : Ordering](a: T, b: T) 是糖 foo[T](a: T, b: T)(implicit ord: Ordering[T]) 所以在身體,你可以這樣做 ord.compare(a, b) 我想我以前理解這一點,現在我畫一個空白...有什麼比簡單

    16熱度

    1回答

    這裏是動手Scala.js電子書爲例: package webpage import org.scalajs.dom.ext.Ajax import scala.scalajs.js import scala.scalajs.js.annotation.JSExport import scalatags.JsDom.all._ import org.scalajs.dom impo

    0熱度

    1回答

    我正在使用Spray JSON庫將我們的案例類序列化爲JSON。問題是我們有一些相互遞歸的定義。我正在從這個序列化密封特徵的例子開始工作: http://www.cakesolutions.net/teamblogs/2012/11/30/spray-json-and-adts/ 下面是一個簡單的例子。請注意C的定義: import spray.json._ import DefaultJson