public static boolean isRawType(final TypeReference t) { if (t == null) { return false; } if (t instanceof RawType) { return true; } if (t.isGenericType()) { return false; } final TypeReference r = t.resolve(); return r != null && r.isGenericType(); }
@Override public TypeReference visitType(final TypeReference t, final Boolean recurse) { if (t.isGenericType()) { return new RawType(t); } return t; }
@Override public TypeReference visitType(final TypeReference t, final Boolean recurse) { if (t.isGenericType()) { return new RawType(t); } return t; }
@Override public TypeReference visitType(final TypeReference t, final Boolean recurse) { if (t.isGenericType()) { return new RawType(t); } return t; }
private static List<? extends TypeReference> getTypeArguments(final TypeReference t) { if (t instanceof IGenericInstance) { return ((IGenericInstance) t).getTypeArguments(); } if (t.isGenericType()) { return t.getGenericParameters(); } return Collections.emptyList(); }
private static List<? extends TypeReference> getTypeArguments(final TypeReference t) { if (t instanceof IGenericInstance) { return ((IGenericInstance) t).getTypeArguments(); } if (t.isGenericType()) { return t.getGenericParameters(); } return Collections.emptyList(); }
private static List<? extends TypeReference> getTypeArguments(final TypeReference t) { if (t instanceof IGenericInstance) { return ((IGenericInstance) t).getTypeArguments(); } if (t.isGenericType()) { return t.getGenericParameters(); } return Collections.emptyList(); }
private static TypeReference adjustDeclaringType(final ResolveResult valueResult, final TypeReference declaringType) { if (valueResult.getType().isGenericType() && (declaringType.isGenericType() || MetadataHelper.isRawType(declaringType))) { final TypeReference asSuper = MetadataHelper.asSuper(declaringType, valueResult.getType()); if (asSuper != null) { return asSuper; } } return declaringType; }
protected StringBuilder appendErasedSignature(final StringBuilder sb) { if (isGenericType() && !isGenericDefinition()) { return getUnderlyingType().appendErasedSignature(sb); } return appendErasedClassSignature(sb); }
@Override public Boolean visitRawType(final RawType t, final TypeReference s) { return s.getSimpleType() == JvmType.Object && !s.isGenericType() && StringUtilities.equals(t.getInternalName(), s.getInternalName()); }
@Override public Boolean visitRawType(final RawType t, final TypeReference s) { return s.getSimpleType() == JvmType.Object && !s.isGenericType() && StringUtilities.equals(t.getInternalName(), s.getInternalName()); }
protected StringBuilder appendErasedSignature(final StringBuilder sb) { if (isGenericType() && !isGenericDefinition()) { return getUnderlyingType().appendErasedSignature(sb); } return appendErasedClassSignature(sb); }
public TypeReference getRawType() { if (isGenericType()) { final TypeReference underlyingType = getUnderlyingType(); if (underlyingType != this) { return underlyingType.getRawType(); } return new RawType(this); } throw ContractUtils.unsupported(); }
protected StringBuilder appendErasedSignature(final StringBuilder sb) { if (isGenericType() && !isGenericDefinition()) { return getUnderlyingType().appendErasedSignature(sb); } return appendErasedClassSignature(sb); }
public TypeReference getRawType() { if (isGenericType()) { final TypeReference underlyingType = getUnderlyingType(); if (underlyingType != this) { return underlyingType.getRawType(); } return new RawType(this); } throw ContractUtils.unsupported(); }
@Override public TypeReference visitClassType(final TypeReference t, final Boolean recurse) { if (t.isGenericType()) { return new RawType(t); } else { final TypeDefinition resolved = t.resolve(); if (resolved != null && resolved.isGenericDefinition()) { return new RawType(resolved); } } return t; }
@Override public Boolean visitRawType(final RawType t, final TypeReference s) { return s.getSimpleType() == JvmType.Object && !s.isGenericType() && StringUtilities.equals(t.getInternalName(), s.getInternalName()); }
public TypeReference getRawType() { if (isGenericType()) { final TypeReference underlyingType = getUnderlyingType(); if (underlyingType != this) { return underlyingType.getRawType(); } return new RawType(this); } throw ContractUtils.unsupported(); }
@Override public TypeReference visitClassType(final TypeReference t, final Boolean recurse) { if (t.isGenericType()) { return new RawType(t); } else { final TypeDefinition resolved = t.resolve(); if (resolved != null && resolved.isGenericDefinition()) { return new RawType(resolved); } } return t; }
@Override public TypeReference visitRawType(final RawType t, final Void ignored) { TypeReference genericDefinition = t.getUnderlyingType(); if (!genericDefinition.isGenericDefinition()) { final TypeDefinition resolved = genericDefinition.resolve(); if (resolved == null || !resolved.isGenericDefinition()) { return BuiltinTypes.Object; } genericDefinition = resolved; } final TypeReference baseType = getBaseType(genericDefinition); return baseType != null && baseType.isGenericType() ? eraseRecursive(baseType) : baseType; }