%%% %% Annotation Patterns %% %% @author Martin Bravenboer <martin.bravenboer@gmail.com> %%% module languages/aspectj/pattern/Annotation[Ctx] exports sorts AnnoPattern SimpleAnnoPattern context-free syntax "@" "(" TypePattern ")" -> SimpleAnnoPattern {cons("SimpleAnnoPattern")} "@" TypeName[[Ctx]] -> SimpleAnnoPattern {cons("SimpleAnnoPatternExact")} "!" SimpleAnnoPattern -> NotSimpleAnnoPattern {cons("Not")} (SimpleAnnoPattern | NotSimpleAnnoPattern)* -> AnnoPattern {cons("AnnoPattern")} (SimpleAnnoPattern | NotSimpleAnnoPattern)+ -> AnnoPatternPlus {cons("AnnoPattern")}