Groovyの注目すべきSomeClass.metaClass.getProperty関数がscalaにありますか?これは、ドメイン固有の言語を作成する際に非常に役立ちます。たとえば、x.get("arbitraryPropertyName")
またはx("arbitraryPropertyName")
ではなく、val x = SomeClass(); x.arbitraryPropertyName
と言うことができます。GroovyのclassX.metaClass.getProperty in scala
5
A
答えて
9
あなたの説明から、この機能はScalaのDynamic
のように聞こえます。 Scaladocから、
ダイナミックな呼び出しを可能にするマーカー特性。この のインスタンスxは、任意のメソッド名の場合はx.meth(args)を呼び出し、 の引数の場合は引数をリストします。呼び出しがxによってネイティブにサポートされていない場合は、 がx.applyDynamic( "meth"、args)に書き換えられます。あなたのクラスが
Dynamic
を拡張する場合、ある
、その後、x.applyDynamic("arbitraryPropertyName")
に変換されますフォームx.arbitraryPropertyName
の呼び出し、そしてもちろん、あなたはapplyDynamic
の動作を定義するために得ます。
関連する問題
- 1. .with alternative in scala
- 2. groovy regex in jenkins
- 3. Html Sloping in Groovy
- 4. FoldRight in Laziness in scala
- 5. Scala対Groovy対Javaテスト
- 6. FP LCM in scala in 1 line
- 7. コンビネータ/:in scala
- 8. Scala REPL in Emacs
- 9. NPE in scala Array.fill
- 10. Java IO in Scala
- 11. Brainfuckコンパイラin scala
- 12. Easypost in scala
- 13. observablemap in scala
- 14. Scala REPL in Gradle
- 15. SoapUI Groovy GotoTestStep in other Testcase
- 16. Scala Actor in script mode
- 17. scala sort indexseq in place
- 18. toArray in Scala 2.10マイルストーン
- 19. flattenとflatMap in scala
- 20. scala mongodb INフィルタの使用
- 21. Scala slick query where in list
- 22. Jenkinsfile in groovy gitタグを読み取る
- 23. >の意味は?:Null <:in Scala?
- 24. Jersey 2.x @Contact/Dependency Injection in Scala
- 25. Slick in Play 2.5(scala)から始める
- 26. GroovyからScala動的関数を呼び出せますか?
- 27. 埋め込まれたscalaと埋め込みGroovy
- 28. GroovyのINまたはOUTパラメータoracleデータベースがありません
- 29. Groovyに似たScalaの "Power assert"のようなものはありますか?
- 30. "Scala in Depth"で混乱しています。オプションの例