~/talk

Scala Meta Live Coding Session

Talkat Scala Days Copenhagen 2017 · 2017-05-30..06-02· [scala]
slides:none on file

Live codes an annotation macro that reads constructor params and their @get/@post/@patch markers and generates companion case classes for REST models, using Scala Meta 1.8, Scala 2.12 and the scala‑meta‑paradise plugin. The macro creates or updates the companion object, flattens constructor params, groups by annotation (uses annotation names because AST equality is by reference), wraps patch fields in Option, and inserts generated classes; unit tests compile and IntelliJ recognizes the expansion, though incremental recompilation of macros requires manual clean/test.

AI-written summary · about

  1. 0:00Intro
  2. 0:50Scala Meta
  3. 2:10Scala Macros
  4. 4:00Promise Code
  5. 6:50Expectations
  6. 7:20Macros
  7. 8:20Macro System
  8. 9:38Macros Everywhere
  9. 9:53QuasiCores
  10. 11:55Using QuasiCores
  11. 12:12Resources
  12. 12:23Documentation
  13. 13:38Problem
  14. 16:21SBT Project
  15. 18:32Annotations
  16. 20:35Companion object
  17. 22:45Compliation error
  18. 24:03Creating the case class
  19. 25:40Parameters
  20. 26:34Modifiers
  21. 35:25Inserting Models into Companion Objects
  22. 39:45Type
  23. 41:33Test pass
  24. 42:26Data access layer
  25. 43:13Update model
  26. 44:24Plug
  27. 44:38Question
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.