@Override
public Equality isEqualTo(Object that) {
return Tester.of(TypeInfo.class)
.add("accessInfo", o -> o.accessInfo())
.add("kind", o -> o.kind())
.add("packageInfo", o -> o.packageInfo())
.add("name", o -> o.name())
.add("typeParameterInfoMap", o -> o.typeParameterInfoMap())
.add("annotationInfoList", o -> o.annotationInfoList())
.add("enclosingSimpleTypeInfo", o -> o.enclosingSimpleTypeInfo())
.add("superTypeInfo", o -> o.superTypeInfo())
.add("interfaceInfoMap", o -> o.interfaceInfoMap())
.add("fieldInfoList", o -> o.fieldInfoList())
.add("constructorInfoList", o -> o.constructorInfoList())
.add("methodInfoList", o -> o.methodInfoList())
.add("declaredTypeInfoList", o -> o.declaredTypeInfoList())
.test(this, that);
}