Klasse WildTypePattern

Alle implementierten Schnittstellen:
IHasPosition, IHasSourceLocation

public class WildTypePattern extends TypePattern
The PatternParser always creates WildTypePatterns for type patterns in pointcut expressions (apart from *, which is sometimes directly turned into TypePattern.ANY). resolveBindings() tries to work out what we've really got and turn it into a type pattern that we can use for matching. This will normally be either an ExactTypePattern or a WildTypePattern. Here's how the process pans out for various generic and parameterized patterns: (see GenericsWildTypePatternResolvingTestCase) Foo where Foo exists and is generic Parser creates WildTypePattern namePatterns={Foo} resolveBindings resolves Foo to RT(Foo - raw) return ExactTypePattern(LFoo;) Foo<String> where Foo exists and String meets the bounds Parser creates WildTypePattern namePatterns = {Foo}, typeParameters=WTP{String} resolveBindings resolves typeParameters to ExactTypePattern(String) resolves Foo to RT(Foo) returns ExactTypePattern(PFoo<String>; - parameterized) Foo<Str*> where Foo exists and takes one bound Parser creates WildTypePattern namePatterns = {Foo}, typeParameters=WTP{Str*} resolveBindings resolves typeParameters to WTP{Str*} resolves Foo to RT(Foo) returns WildTypePattern(name = Foo, typeParameters = WTP{Str*} isGeneric=false) Fo*<String> Parser creates WildTypePattern namePatterns = {Fo*}, typeParameters=WTP{String} resolveBindings resolves typeParameters to ETP{String} returns WildTypePattern(name = Fo*, typeParameters = ETP{String} isGeneric=false) Foo<?> Foo<? extends Number> Foo<? extends Number+> Foo<? super Number>