[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[aspectj-users] type pattern matching


I am a little confused by the docs at:

http://www.eclipse.org/aspectj/doc/released/progguide/semantics-pointcuts.html#type-patterns

In particular, what type names are candidates for
matching type patterns that contain wildcards? All
full jvm names of weavable classes? Or just any
name of a weavable class, whether full jvm name or not?

What is the reason that exact type patterns follow
the rules of Java lookup in matching, whereas
exact method patterns do not (one can match private
methods)? It seems AspectJ uses at least three
different views of matching patterns
* for `exact' type patterns that happen to be type names
* for type patterns that contain wild cards
* for method and field patterns (whether exact or not)

It would be interesting to know how that came about,
and what the precise intended rules are.

There is a discussion on a closed bug that is relevant:

https://bugs.eclipse.org/bugs/show_bug.cgi?id=73073

But that does not state what set of names are candidate
matches for patterns with wild cards. Furthermore, it
explains *what* the design does for exact type patterns,
but not *why* it does that.

Any thoughts?

-Oege