@Override public final boolean equals(final Object obj) { if (obj == this) { return true; } if (obj instanceof TypeInfo) { final TypeInfo that = (TypeInfo) obj; return Objects.equal(packageInfo(), that.packageInfo()) && Objects.equal(name(), that.name()); } else { return false; } }
@Override public boolean shouldKeep(ImportInfo importInfo) { return importInfo.shouldKeep(packageInfo()); }
@Override public final int hashCode() { return Objects.hashCode(packageInfo(), name()); }
String toQualifiedName() { return packageInfo() + "." + getSimpleName(); }
public JavaFile toJavaFile(TypeSpec typeSpec) { return JavaFile.builder(packageInfo().toString(), typeSpec) .skipJavaLangImports(true) .build(); }
public CodeCanvasWriter writeQualifiedNameTo(CodeCanvasWriter mustacheWriter, String suffix) { PackageInfo packageInfo = packageInfo(); String simpleName = getSimpleName(); return mustacheWriter.name(packageInfo + "." + simpleName + suffix); }
public CodeCanvasWriter writeQualifiedNameTo(String prefix, CodeCanvasWriter mustacheWriter) { PackageInfo packageInfo = packageInfo(); String simpleName = getSimpleName(); return mustacheWriter.name(packageInfo + "." + prefix + simpleName); }
public ClassName toClassName() { return nameInfo().toClassName(packageInfo()); }
public ClassName toClassNamePrefix(String prefix) { return nameInfo().prefix(prefix).toClassName(packageInfo()); }
public ClassName toClassNameSuffix(String suffix) { return nameInfo().suffix(suffix).toClassName(packageInfo()); }
public SimpleTypeInfo toSimpleTypeInfo() { return SimpleTypeInfo.newType() .packageInfo(Optional.fromNullable(packageInfo())) .nameInfo(nameInfo()) .typeParameterInfoList(typeParameterInfoMap().list()) .build(); }
public ToMustacheHelper toMustacheHelper() { return Mustaches.toMustacheHelper() .add("access", accessInfo()) .add("package", packageInfo()) .add("name", name()) .add("simpleName", getSimpleName()) .add("rawName", getRawName()) .add("unboundName", getUnboundedName()) .add("varName", getVarName()) .add("typeParameters", typeParameterInfoMap()) .add("methods", methodInfoMap().list()); }
@Override public boolean isEqual(TypeInfo that) { return Testables.isEqualHelper() .equal(accessInfo(), that.accessInfo()) .equal(kind(), that.kind()) .equal(packageInfo(), that.packageInfo()) .equal(name(), that.name()) .equal(typeParameterInfoMap(), that.typeParameterInfoMap()) .equal(annotationInfoMap(), that.annotationInfoMap()) .equal(enclosingTypeInfo(), that.enclosingTypeInfo()) .equal(superTypeInfo(), that.superTypeInfo()) .equal(interfaceInfoMap(), that.interfaceInfoMap()) .equal(constructorInfoMap(), that.constructorInfoMap()) .equal(methodInfoMap(), that.methodInfoMap()) .equal(declaredTypeInfoMap(), that.declaredTypeInfoMap()) .result(); }