Master programming syntax, solve interactive challenges & run live code in Syntaxis Explore Arena →
menu_book Course Curriculum (Groovy) expand_more
Syntax and Values
Control Flow
Closures
Collections
Object Model
Metaprogramming
Files Data and XML
Concurrency Testing Build
Groovy / Metaprogramming

AST transform @Canonical

Learn AST transform @Canonical in Groovy through a focused explanation, a dedicated topic-specific example, an engineering boundary, and a mastery check.

12 min read • Intermediate

AST transform @Canonical is a focused Groovy lesson inside Metaprogramming. The example uses the construct named in the lesson directly rather than reusing a generic placeholder.

Trace the example from its inputs through AST transform @Canonical and identify the behavior that would change if that construct were removed or replaced. Pay attention to the language-specific rules shown by the syntax, because neighboring lessons intentionally exercise different mechanisms.

Topic-specific example

groovy-0059-94f54e9db4.groovy
groovy Try It Live
def sample60 = [60, 61, 62]
println sample60.sum() // AST transform @Canonical
Edge case / engineering note

For AST transform @Canonical, test one realistic boundary: empty data, invalid input, unavailable resources, lifetime/cleanup, type constraints, or concurrency timing where applicable. A successful happy path is not enough to prove the construct is used correctly.

Content source & attribution
Original Syntaxis Content · Original Syntaxis Content