/*
* @see ITypeBinding#isFromSource()
*/
public boolean isFromSource() {
if (isClass() || isInterface() || isEnum()) {
ReferenceBinding referenceBinding = (ReferenceBinding) this.binding;
if (referenceBinding.isRawType()) {
return !((RawTypeBinding) referenceBinding).genericType().isBinaryBinding();
} else if (referenceBinding.isParameterizedType()) {
ParameterizedTypeBinding parameterizedTypeBinding = (ParameterizedTypeBinding) referenceBinding;
org.aspectj.org.eclipse.jdt.internal.compiler.lookup.TypeBinding erasure = parameterizedTypeBinding.erasure();
if (erasure instanceof ReferenceBinding) {
return !((ReferenceBinding) erasure).isBinaryBinding();
}
return false;
} else {
return !referenceBinding.isBinaryBinding();
}
} else if (isTypeVariable()) {
final TypeVariableBinding typeVariableBinding = (TypeVariableBinding) this.binding;
final Binding declaringElement = typeVariableBinding.declaringElement;
if (declaringElement instanceof MethodBinding) {