#ifndef __Aspect_ah__ #define __Aspect_ah__ #include aspect Action { advice execution("% Base::%(...)") : around() { printf("A: before(exec) %s\n", JoinPoint::signature()); tjp->proceed(); printf("A: after(exec) %s\n", JoinPoint::signature()); } advice call("% Base::%(...)") : around() { printf("A: before(call) %s\n", JoinPoint::signature()); tjp->proceed(); printf("A: after(call) %s\n", JoinPoint::signature()); } }; #endif // __Aspect_ah__