Advertisement
Guest User

Untitled

a guest
Nov 19th, 2014
154
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Scala 0.53 KB | None | 0 0
  1. object Main {
  2.   import scala.language.experimental.macros
  3.  
  4.   case class Weapon(name: String, damage: Int)
  5.   case class Person(name: String, weapon: Weapon)
  6.  
  7.   def compile(accessor: String): String = macro Macros.compile
  8.  
  9.   def main(args: Array[String]) {
  10.     val sword = Weapon("sword", 16)
  11.     val alexBeaumont = Person("Alex", sword)
  12.     println("player: " + compile("alex-beaumont name"))
  13.     println("weapon: " + compile("alex-beaumont weapon name"))
  14.     println("   dmg: " + compile("alex-beaumont weapon damage"))
  15.   }
  16. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement