Meta-AspectJ

David Zook, Shan Shan Huang, Yannis Smaragdakis

Using ` and #

The ` keyward allows you to quote a piece of code, and store the representation of that code in a variable. For example,
    Identifier myIdent = `[ foo ];
The
entry points table lists more examples of how to use ` to quote different entry points.

The # keyword allows you to splice in previously defined code pieces into the code that you are currently quoting. For example:

    Identifier myIdent = `[ foo ];
    VarDec myVar = `[ int #myIdent = 0; ];
There are two ways to use #: #id, or #[expression], where id is a meta-variable previously defined with a piece of quoted code. expression can be any java expression that returns the correct type -- AST types listed in the
entry points table.

# must be used within a `.