private RawType createRawType(ITypeBinding binding) { IJavaElement javaElement= binding.getJavaElement(); RawType result= (RawType)fRawTypes.get(javaElement); if (result != null) return result; result= new RawType(this); fRawTypes.put(javaElement, result); result.initialize(binding, (IType)javaElement); cacheSubType(result.getSuperclass(), result); cacheSubTypes(result.getInterfaces(), result); return result; }
private boolean canAssignToRawType(RawType target) { return fTypeDeclaration.isSubType(target.getHierarchyType()); }
@Override public boolean doEquals(TType type) { return getJavaElementType().equals(((RawType)type).getJavaElementType()); }
@Override protected boolean doCanAssignTo(TType lhs) { int targetType= lhs.getKind(); switch (targetType) { case NULL_TYPE: return false; case VOID_TYPE: return false; case PRIMITIVE_TYPE: return false; case ARRAY_TYPE: return false; case STANDARD_TYPE: return canAssignToStandardType((StandardType)lhs); case GENERIC_TYPE: return false; case PARAMETERIZED_TYPE: return isSubType((ParameterizedType)lhs); case RAW_TYPE: return isSubType((HierarchyType)lhs); case UNBOUND_WILDCARD_TYPE: case SUPER_WILDCARD_TYPE: case EXTENDS_WILDCARD_TYPE: return ((WildcardType)lhs).checkAssignmentBound(this); case TYPE_VARIABLE: return false; case CAPTURE_TYPE: return ((CaptureType)lhs).checkLowerBound(this); } return false; }
protected void initialize(ITypeBinding binding, IType javaElementType) { Assert.isTrue(binding.isRawType()); super.initialize(binding, javaElementType); TypeEnvironment environment= getEnvironment(); fTypeDeclaration= (HierarchyType)environment.create(binding.getTypeDeclaration()); }
protected boolean isTypeEquivalentTo(TType other) { int otherElementType= other.getKind(); if (otherElementType == PARAMETERIZED_TYPE || otherElementType == GENERIC_TYPE) return getErasure().isTypeEquivalentTo(other.getErasure()); return super.isTypeEquivalentTo(other); }
protected boolean doCanAssignTo(TType lhs) { int targetType= lhs.getKind(); switch (targetType) { case NULL_TYPE: return false; case VOID_TYPE: return false; case PRIMITIVE_TYPE: return false; case ARRAY_TYPE: return false; case STANDARD_TYPE: return canAssignToStandardType((StandardType)lhs); case GENERIC_TYPE: return false; case PARAMETERIZED_TYPE: return isSubType((ParameterizedType)lhs); case RAW_TYPE: return isSubType((HierarchyType)lhs); case UNBOUND_WILDCARD_TYPE: case SUPER_WILDCARD_TYPE: case EXTENDS_WILDCARD_TYPE: return ((WildcardType)lhs).checkAssignmentBound(this); case TYPE_VARIABLE: return false; case CAPTURE_TYPE: return ((CaptureType)lhs).checkLowerBound(this); } return false; }
@Override protected void initialize(ITypeBinding binding, IType javaElementType) { Assert.isTrue(binding.isRawType()); super.initialize(binding, javaElementType); TypeEnvironment environment= getEnvironment(); fTypeDeclaration= (HierarchyType)environment.create(binding.getTypeDeclaration()); }
@Override protected boolean isTypeEquivalentTo(TType other) { int otherElementType= other.getKind(); if (otherElementType == PARAMETERIZED_TYPE || otherElementType == GENERIC_TYPE) return getErasure().isTypeEquivalentTo(other.getErasure()); return super.isTypeEquivalentTo(other); }
private RawType createRawType(ITypeBinding binding) { IJavaElement javaElement= binding.getJavaElement(); RawType result= fRawTypes.get(javaElement); if (result != null) return result; result= new RawType(this); fRawTypes.put(javaElement, result); result.initialize(binding, (IType)javaElement); cacheSubType(result.getSuperclass(), result); cacheSubTypes(result.getInterfaces(), result); return result; }
@Override public boolean doEquals(TType type) { return getJavaElementType().equals(((RawType)type).getJavaElementType()); }
@Override protected boolean doCanAssignTo(TType lhs) { int targetType= lhs.getKind(); switch (targetType) { case NULL_TYPE: return false; case VOID_TYPE: return false; case PRIMITIVE_TYPE: return false; case ARRAY_TYPE: return false; case STANDARD_TYPE: return canAssignToStandardType((StandardType)lhs); case GENERIC_TYPE: return false; case PARAMETERIZED_TYPE: return isSubType((ParameterizedType)lhs); case RAW_TYPE: return isSubType((HierarchyType)lhs); case UNBOUND_WILDCARD_TYPE: case SUPER_WILDCARD_TYPE: case EXTENDS_WILDCARD_TYPE: return ((WildcardType)lhs).checkAssignmentBound(this); case TYPE_VARIABLE: return false; case CAPTURE_TYPE: return ((CaptureType)lhs).checkLowerBound(this); } return false; }
@Override protected void initialize(ITypeBinding binding, IType javaElementType) { Assert.isTrue(binding.isRawType()); super.initialize(binding, javaElementType); TypeEnvironment environment= getEnvironment(); fTypeDeclaration= (HierarchyType)environment.create(binding.getTypeDeclaration()); }
@Override protected boolean isTypeEquivalentTo(TType other) { int otherElementType= other.getKind(); if (otherElementType == PARAMETERIZED_TYPE || otherElementType == GENERIC_TYPE) return getErasure().isTypeEquivalentTo(other.getErasure()); return super.isTypeEquivalentTo(other); }
private boolean canAssignToRawType(RawType target) { return fTypeDeclaration.isSubType(target.getHierarchyType()); }
private RawType createRawType(ITypeBinding binding) { IJavaElement javaElement= binding.getJavaElement(); RawType result= fRawTypes.get(javaElement); if (result != null) return result; result= new RawType(this); fRawTypes.put(javaElement, result); result.initialize(binding, (IType)javaElement); cacheSubType(result.getSuperclass(), result); cacheSubTypes(result.getInterfaces(), result); return result; }
public boolean doEquals(TType type) { return getJavaElementType().equals(((RawType)type).getJavaElementType()); }
private boolean canAssignToRawType(RawType target) { return fTypeDeclaration.isSubType(target.getHierarchyType()); }
@Override public int hashCode() { return getJavaElementType().hashCode(); }
@Override public int hashCode() { return getJavaElementType().hashCode(); }