scala-reflect

    0熱度

    1回答

    有沒有方法通過它的字節碼名稱找到方法? 比如,我想通過字符串找到println(Object)參考"_root_.scala.Predef.println(Ljava/lang/Object;)V."

    1熱度

    2回答

    我想提出一個案例類Bla,它採用類型參數A,它在運行時知道A的類型(它將其存儲在其info字段中)。 我的嘗試如下例所示。問題是這個例子不能編譯。 case class Bla[A](){ val info=Run.paramInfo(this) // this does not compile } import scala.reflect.runtime.universe._

    3熱度

    1回答

    我想使用scalameta註釋宏在Scala中自動生成REST API模型。具體地,給出: @Resource case class User( @get id : Int, @get @post @patch name : String, @get @post email : String, registeredOn : Long ) 我要生成:

    0熱度

    1回答

    我正在創建一些從封裝方法的註釋中讀取一些信息的宏庫。 @info(foo(bar, baz)) def enclosing() = { myMacro() } 這些信息在StaticAnnotation@info被編碼爲foo(bar, baz)。 foo(bar, baz)包含的信息myMacro需要,然而,foo(bar, baz)不能在該位置@info型檢查,並導致編譯器錯

    3熱度

    1回答

    我有一些類型標記的Scala代碼,我需要爲Java用戶提供這些代碼。我的問題歸結爲解決以下問題: 給定兩個Scala類型標記,如何手動爲Tuple2 [A,B]創建一個類型標記? 如果這有什麼差別我的具體情況是有點簡單: 我有一個一類的標籤,我需要創建Tuple2 [字符串,A]代碼類型

    0熱度

    2回答

    我正在尋找一種方法來將一個斯卡拉單例對象作爲一個字符串(例如:package1.Main)給予實際的主要實例,以便我可以調用它的方法。問題的 例子: package x { object Main extends App { val objectPath: String = io.StdIn.readLine("Give an object: ") // user enters

    2熱度

    1回答

    { sealed trait Sealed; case object Foo extends Sealed; case class Bar(s: String) extends Sealed; trait Baz extends Sealed } import scala.reflect.runtime.universe._ val List(bar, baz, foo) = symbolOf

    2熱度

    1回答

    case class FieldName(field: String) extends scala.annotation.StaticAnnotation @FieldName("foo") trait Foo import scala.reflect.runtime.universe._ symbolOf[Foo].annotations.head // ann: Annotation

    0熱度

    1回答

    考慮,我想反序列化JSON字符串的情況: def deserialize[T](json) 我可以提供類,我想應用的功能明確,而像 class Person(name: String) deserialize[Person]("""{ "name": "Jennie" }""") 編寫代碼但是,如果我需要其他類,我必須在我的代碼中提供它,再次編譯。我希望我的程序更加靈活,它可以使

    0熱度

    1回答

    我一直在進行復雜的編譯時反射,並且遇到了需要使用AST手動編寫Scala代碼的需求。在試驗過程中,我注意到一個奇怪的編譯錯誤,這對我來說並沒有什麼意義,所以我試着在一個測試項目上重現它。 我使用斯卡拉2.10.4。 下面的代碼: Macro.scala: object Macro { def reifyTestImpl(c: Context): c.Expr[OffsetDateTime