org.aspectj.ajdt.internal.compiler.lookup
Class InterTypeMemberFinder

java.lang.Object
  extended by org.aspectj.ajdt.internal.compiler.lookup.InterTypeMemberFinder
All Implemented Interfaces:
IMemberFinder

public class InterTypeMemberFinder
extends java.lang.Object
implements IMemberFinder

The member finder looks after intertype declared members on a type, there is one member finder per type that was hit by an ITD.


Field Summary
 SourceTypeBinding sourceTypeBinding
           
 
Constructor Summary
InterTypeMemberFinder()
           
 
Method Summary
 void addInterTypeField(FieldBinding binding)
           
 void addInterTypeMethod(MethodBinding binding)
           
 boolean definesField(java.lang.String name)
           
 MethodBinding getExactMethod(SourceTypeBinding sourceTypeBinding, char[] selector, TypeBinding[] argumentTypes, CompilationUnitScope refScope)
           
 FieldBinding getField(SourceTypeBinding sourceTypeBinding, char[] fieldName, InvocationSite site, Scope scope)
           
 MethodBinding[] getMethods(SourceTypeBinding sourceTypeBinding, char[] selector)
           
static boolean matches(MethodBinding m1, MethodBinding m2)
           
static boolean matches2(MethodBinding newBinding, MethodBinding existingBinding)
           
 MethodBinding[] methods(SourceTypeBinding sourceTypeBinding)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

sourceTypeBinding

public SourceTypeBinding sourceTypeBinding
Constructor Detail

InterTypeMemberFinder

public InterTypeMemberFinder()
Method Detail

getField

public FieldBinding getField(SourceTypeBinding sourceTypeBinding,
                             char[] fieldName,
                             InvocationSite site,
                             Scope scope)
Specified by:
getField in interface IMemberFinder

methods

public MethodBinding[] methods(SourceTypeBinding sourceTypeBinding)
Specified by:
methods in interface IMemberFinder

getMethods

public MethodBinding[] getMethods(SourceTypeBinding sourceTypeBinding,
                                  char[] selector)
Specified by:
getMethods in interface IMemberFinder

getExactMethod

public MethodBinding getExactMethod(SourceTypeBinding sourceTypeBinding,
                                    char[] selector,
                                    TypeBinding[] argumentTypes,
                                    CompilationUnitScope refScope)
Specified by:
getExactMethod in interface IMemberFinder

matches

public static boolean matches(MethodBinding m1,
                              MethodBinding m2)

matches2

public static boolean matches2(MethodBinding newBinding,
                               MethodBinding existingBinding)

addInterTypeField

public void addInterTypeField(FieldBinding binding)

addInterTypeMethod

public void addInterTypeMethod(MethodBinding binding)

definesField

public boolean definesField(java.lang.String name)
Parameters:
name - the name of the field
Returns:
true if already know about an intertype field declaration for that field