protected boolean checkLowerBound(TType rhs) { if (! getWildcard().isSuperWildcardType()) return false; return rhs.canAssignTo(getWildcard().getBound()); }
public TType[] getSubTypes() { TType[] subTypes= fElementType.getSubTypes(); TType[] result= new TType[subTypes.length]; for (int i= 0; i < subTypes.length; i++) { result[i]= getEnvironment().createArrayType(subTypes[i], fDimensions); } return result; }
protected void initialize(TType elementType, int dimensions) { fElementType= elementType; fDimensions= dimensions; if (fElementType.isStandardType() || fElementType.isGenericType() || fElementType.isPrimitiveType()) { fErasure= this; } else { fErasure= getEnvironment().createArrayType(elementType.getErasure(), dimensions); } }
protected boolean isTypeEquivalentTo(TType other) { int otherElementType= other.getKind(); if (otherElementType == RAW_TYPE || otherElementType == GENERIC_TYPE) return getErasure().isTypeEquivalentTo(other.getErasure()); return super.isTypeEquivalentTo(other); }
@Override protected boolean isTypeEquivalentTo(TType other) { int otherElementType= other.getKind(); if (otherElementType == RAW_TYPE || otherElementType == PARAMETERIZED_TYPE) return getErasure().isTypeEquivalentTo(other.getErasure()); return super.isTypeEquivalentTo(other); }
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); }
@Override public TType getErasure() { if (fBounds.length == 0) return getEnvironment().getJavaLangObject(); return fBounds[0].getErasure(); }
private boolean canAssignToArrayType(ArrayType lhs) { if (fDimensions == lhs.fDimensions) { // primitive type don't have any conversion for arrays. if (fElementType.getKind() == PRIMITIVE_TYPE || lhs.fElementType.getKind() == PRIMITIVE_TYPE) return fElementType.isTypeEquivalentTo(lhs.fElementType); return fElementType.canAssignTo(lhs.fElementType); } if (fDimensions < lhs.fDimensions) return false; return isArrayLhsCompatible(lhs.fElementType); }
protected void initialize(TType elementType, int dimensions) { fElementType= elementType; fDimensions= dimensions; if (fElementType.isStandardType() || fElementType.isGenericType() || fElementType.isPrimitiveType()) { fErasure= this; } else { fErasure= getEnvironment().createArrayType(elementType.getErasure(), dimensions); } }
@Override protected boolean isTypeEquivalentTo(TType other) { int otherElementType= other.getKind(); if (otherElementType == RAW_TYPE || otherElementType == GENERIC_TYPE) return getErasure().isTypeEquivalentTo(other.getErasure()); return super.isTypeEquivalentTo(other); }
protected boolean checkLowerBound(TType rhs) { if (! getWildcard().isSuperWildcardType()) return false; return rhs.canAssignTo(getWildcard().getBound()); }
protected boolean isTypeEquivalentTo(TType other) { int otherElementType= other.getKind(); if (otherElementType == RAW_TYPE || otherElementType == PARAMETERIZED_TYPE) return getErasure().isTypeEquivalentTo(other.getErasure()); return super.isTypeEquivalentTo(other); }
@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); }
@Override public TType[] getSubTypes() { TType[] subTypes= fElementType.getSubTypes(); TType[] result= new TType[subTypes.length]; for (int i= 0; i < subTypes.length; i++) { result[i]= getEnvironment().createArrayType(subTypes[i], fDimensions); } return result; }
@Override public TType getErasure() { if (fBounds.length == 0) return getEnvironment().getJavaLangObject(); return fBounds[0].getErasure(); }
protected void initialize(TType elementType, int dimensions) { fElementType= elementType; fDimensions= dimensions; if (fElementType.isStandardType() || fElementType.isGenericType() || fElementType.isPrimitiveType()) { fErasure= this; } else { fErasure= getEnvironment().createArrayType(elementType.getErasure(), dimensions); } }
@Override protected boolean isTypeEquivalentTo(TType other) { int otherElementType= other.getKind(); if (otherElementType == RAW_TYPE || otherElementType == GENERIC_TYPE) return getErasure().isTypeEquivalentTo(other.getErasure()); return super.isTypeEquivalentTo(other); }
protected boolean checkLowerBound(TType rhs) { if (! getWildcard().isSuperWildcardType()) return false; return rhs.canAssignTo(getWildcard().getBound()); }
@Override public TType[] getSubTypes() { TType[] subTypes= fElementType.getSubTypes(); TType[] result= new TType[subTypes.length]; for (int i= 0; i < subTypes.length; i++) { result[i]= getEnvironment().createArrayType(subTypes[i], fDimensions); } return result; }
public TType getErasure() { if (fBounds.length == 0) return getEnvironment().getJavaLangObject(); return fBounds[0].getErasure(); }