Upload
andres-almiray
View
1.885
Download
0
Embed Size (px)
Citation preview
www.canoo.com 2
About the speaker
๏ Java developer since the beginning
๏ True believer in Open Source
๏ Groovy committer since 2007
๏ Project lead of the Griffon framework
๏ Currently working for
www.canoo.com 3
What are AST Transformations?
๏ Essentially byte code generation
๏ They enable compile-time metaprogramming
๏ Groovy has two types of AST transformations: global and local
www.canoo.com 21
@Canonical
๏ Merges @ToString, @EqualsAndHashCode and @TupleConstructor
๏ Allows specific tweaks per annotation
www.canoo.com 23
And there are many more…
๏ @AutoClone
๏ @AutoExternalize
๏ @ConditionalInterrupt @TimedInterrupt @ThreadInterrupt
๏ @PackageScope
๏ @WithReadLock @WithWriteLock
๏ @Field
www.canoo.com 24
Found in other projects
๏ . ‣ @Entity
๏ . ‣ @EventPublisher ‣ @Listener ‣ @Entity ‣ @Scaffold
๏ Modules ‣ @Scalify ‣ @Bytecode
๏ Groovy++ ‣ @Typed