Clazz { @Override public boolean equals(final Object obj) { if (this == obj) { return true; } if (obj == null) { return false; } if (getClass() != obj.getClass()) { return false; } final Clazz other = (Clazz) obj; return Objects.equal(name, other.name) && Objects.equal(package1, other.package1) && Objects.equal(fields, other.fields) && Objects.equal(constructors, other.constructors) && Objects.equal(methods, other.methods) && Objects.equal(visibility, other.visibility) && Objects.equal(finalModifier, other.finalModifier) && Objects.equal(abstractModifier, other.abstractModifier) && Objects.equal(interfaces, other.interfaces) && Objects.equal(imports, other.imports) && Objects.equal(annotations, other.annotations); } Clazz(@Nonnull final String name, @Nonnull final Package package1, @Nonnull final List<Field> fields,
			@Nonnull final List<Constructor> constructors, @Nonnull final List<Method> methods, @Nonnull final Visibility visibility,
			@Nonnull final Final final1, @Nonnull final Abstract abstract1, @Nonnull final List<Interface> interfaces,
			@Nonnull final List<Import> imports, @Nonnull final List<Annotation> annotations); @Override boolean equals(final Object obj); @Nonnull Abstract getAbstract(); @Nonnull List<Annotation> getAnnotations(); @Nonnull List<Constructor> getConstructors(); @Nonnull List<Field> getFields(); @Nonnull Final getFinal(); @Nonnull List<Import> getImports(); @Nonnull List<Interface> getInterfaces(); @Nonnull List<Method> getMethods(); @Nonnull String getName(); @Nonnull Package getPackage(); @Nonnull Visibility getVisibility(); @Override int hashCode(); @Override String toString();  }
@Test public void equals_null() { final Clazz a = new Blueprint().build(); assertFalse(a.equals(null)); }
@Test public void equals_otherClass() { final Clazz a = new Blueprint().build(); assertFalse(a.equals("")); }