scala-2.10

    3熱度

    1回答

    我想有一個階宏,執行以下操作: 當我寫: myCreateCityMacro("paris") myCreateCityMacro("vallorbe") 我想獲得: val paris = new City("paris") val vallorbe = new City("vallorbe")

    0熱度

    1回答

    我使用的時候會遇到一些惱人的問題聲稱那裏是可以得 沒有良好的信息:它爲什麼失敗,什麼斷言約爲 斷言信息被埋在海量的不需要的信息之下,像太多的scala函數層。 我已經將這些問題留在了我的腦海中,現在新的scala宏已經可用了,我打算繼續Stack Overflow併爲每個問題創建一個高價值的問題和答案對。那樣,下一個有這個問題的人就不必在這麼多的錯誤信息中s舌。如果其他專家用他們自己的知識加以引申

    3熱度

    2回答

    似乎TypeTags只適用於在被調用方法的參數使用的類型參數的工作,而不是返回類型: scala> :paste // Entering paste mode (ctrl-D to finish) import scala.reflect.runtime.universe._ object Test { def withParam[T: TypeTag](v: T): T =

    4熱度

    1回答

    我一直在嘗試MacroParadise(here和here)以及一些其他更新的功能。今天,在使用TypeTags時,我意識到我現在可以做這樣的事情來強制執行類型相等。 def typeEq[A: TypeTag, B: TypeTag]: Boolean = { implicitly[TypeTag[A]].tpe =:= implicitly[TypeTag[B]].tpe }

    2熱度

    2回答

    使用ClassTag/TypeTag代替ClassManifest我有一些代碼實例化一個Random類是這樣的: trait T class A extends T class B extends T class C extends T def createRandomT = { val choices = Vector(classOf[A], classOf[B], clas

    3熱度

    2回答

    我使用 IntelliJ IDEA的126.330 斯卡拉插件0.7.142 JVM 1.6 斯卡拉2.10 在Windows 7 64位 決定嘗試Scala和寫˚F下拉應用程序 object main { def main(args: Array[String]) { println("Hello, world!") } } 然後我創建了Scala控制檯運行配

    2熱度

    1回答

    這是一個晦澀難懂的問題,但是在Scala的字符串插值中循環的最好方法是什麼?舉例來說,如果你想做到這一點 html"""<ul> ${ for (todoItem <- todoList) { html"""<li>TODO: ${todoItem}</li>""" } } </ul>""" 我看不出有什麼簡潔的方式來積累的內部HT

    1熱度

    1回答

    我有下面的代碼,用Scala編寫2.10.0: trait A[T <: B] { self : { def foo() } => val action :()=>Unit = this.foo _ //wanna make default for this val construction : String=>T def bar()(impl

    0熱度

    1回答

    我想縮小泛型類型。它編譯,但結果不是預期的(Container(A),Container(B)..)而不是(Container(A),Container(A))。 我在做什麼錯? sealed trait Base case class A() extends Base case class B() extends Base case class Container[+T](item: Ba

    1熱度

    1回答

    假設我有一個例如二維數組,並存儲一些索引在元組中: val testArray = Array.ofDim[Double](3, 4) val ixs = (1,2) 我想直接使用這些元組, testArray(ixs)。但是,Function.tupled(testedArray _)返回「_必須遵循方法;不能跟隨Array [Array [Double]]」。 這是因爲Array實際上不