Content deleted Content added
Hairy Dude (talk | contribs) spacing Tags: Mobile edit Mobile web edit Advanced mobile edit |
Hairy Dude (talk | contribs) →AspectJ's join-point model: MOS:LISTGAP (ordinary list and pre block markup unfortunately not compatible) Tags: Mobile edit Mobile web edit Advanced mobile edit |
||
Line 97:
===AspectJ's join-point model===
{{Main article|AspectJ }}
{{unordered list
▲* The join points in AspectJ include method or constructor call or execution, the initialization of a class or object, field read and write access, exception handlers, etc. They do not include loops, super calls, throws clauses, multiple statements, etc.
▲* Pointcuts are specified by combinations of ''primitive pointcut designators'' (PCDs).
▲:"Kinded" PCDs match a particular kind of join point (e.g., method execution) and tend to take as input a Java-like signature. One such pointcut looks like this:
execution(* set*(*))
"Dynamic" PCDs check runtime types and bind variables. For example,
Line 111:
this(Point)
"Scope" PCDs limit the lexical scope of the join point. For example:
Line 117:
within(com.company.*)
Pointcuts can be composed and named for reuse. For example:
Line 123:
pointcut set() : execution(* set*(*) ) && this(Point) && within(com.company.*);
</source>
after() : set() {
Display.update();
}
===Other potential join point models===
|