%%% %% Keywords in Aspect the AspectBench Compiler. %% %% @author Martin Bravenboer <martin.bravenboer@gmail.com> %%% module languages/aspectj/abc/Keyword[JavaCtx AspectCtx PointcutCtx PatternCtx] imports languages/java/JavaMix[PlainJavaTheCtx] exports %%% %% Keywords in Java Context %%% lexical syntax "privileged" | "aspect" | "pointcut" -> Keyword[[JavaCtx]] %%% %% Keywords in Aspect Context %%% lexical syntax "after" | "around" | "before" | "declare" | "issingleton" | "percflow" | "percflowbelow" | "pertarget" | "perthis" | "pointcut" | "proceed" -> Keyword[[AspectCtx]] Keyword[[JavaCtx]] -> Keyword[[AspectCtx]] %%% %% Keywords in Pointcut Context %%% lexical syntax PrimPointcutName -> Keyword[[PointcutCtx]] Keyword[[JavaCtx]] -> Keyword[[PointcutCtx]] "error" | "parents" | "precedence" | "returning" | "soft" | "throwing" | "warning" -> Keyword[[PointcutCtx]] %%% %% Keywords in Pattern Context %%% lexical syntax Keyword[[PointcutCtx]] -> Keyword[[PatternCtx]] Keyword[[PatternCtx]] -> IdPattern {reject} context-free syntax "proceed" -> MethodSpec[[AspectCtx]] {cons("Proceed")}