@Override Optional<PackageInfo> packageInfo() { return component.packageInfo(); }
@Override Optional<PackageInfo> packageInfo() { return delegate.packageInfo(); }
@Override Optional<PackageInfo> packageInfo() { return component.packageInfo(); }
@Override Optional<PackageInfo> packageInfo() { return delegate.packageInfo(); }
@Override Optional<PackageInfo> packageInfo() { return component.packageInfo(); }
@Override public final boolean equals(final Object obj) { if (obj == this) { return true; } if (obj instanceof TypeParameterInfo) { final TypeParameterInfo that = (TypeParameterInfo) obj; return Objects.equal(typeVariableInfo(), that.typeVariableInfo()) && Objects.equal(packageInfo(), that.packageInfo()) && Objects.equal(type(), that.type()) && Objects.equal(typeParameterInfoList(), that.typeParameterInfoList()); } else { return false; } }
@Override public final int hashCode() { Optional<TypeVariableInfo> typeVariableInfo = typeVariableInfo(); Optional<PackageInfo> packageInfo = packageInfo(); Optional<NameInfo> type = type(); List<TypeParameterInfo> typeParameterInfoList = typeParameterInfoList(); return Objects.hashCode(typeVariableInfo, packageInfo, type, typeParameterInfoList); }
@Override public boolean isEqual(TypeParameterInfo that) { return Testables.isEqualHelper() .equal(typeVariableInfo(), that.typeVariableInfo()) .equal(packageInfo(), that.packageInfo()) .equal(type(), that.type()) .equal(typeParameterInfoList(), that.typeParameterInfoList()) .result(); }
@AutoFunctional public SimpleTypeInfo toSimpleTypeInfo() { return SimpleTypeInfo.newType() .packageInfo(packageInfo()) .nameInfo(type().or(NameInfo.of())) .typeParameterInfoList(typeParameterInfoList()) .build(); }