Scala 2.10, karmaşık derleme zamanı kod oluşturulmasına benzer makrolar için deneysel destek sunar. Daha fazla ayrıntı için bkz. here.
Jason Zaugg en macrocosm git depo üzerinde bazı eğlenceli örnekleri vardır ve tip-güvenli veritabanı (ve toplama) sorguları sağlayan ScalaQuery SQL DSL genişletilmiş halidir SLICK kütüphane bir LINQ benzeri şekilde ifade edilmesi. expecty iddia kütüphanesinden
Ve bu örnek
:
import org.expecty.Expecty
case class Person(name: String = "Fred", age: Int = 42) {
def say(words: String*) = words.mkString(" ")
}
val person = Person()
val expect = new Expecty()
...
val word1 = "ping"
val word2 = "pong"
expect {
person.say(word1, word2) == "pong pong"
}
Verim:
java.lang.AssertionError:
person.say(word1, word2) == "pong pong"
| | | | |
| | ping pong false
| ping pong
Person(Fred,42)
Evet, bu mümkün. Eminim ki bunu yapan eklentiler vardır. Mevcut eklentiler listesine baktınız mı? –