@Override public void merge(AnnotationMemberDeclaration remote, MergeEngine configuration) { super.merge(remote, configuration); setType((Type) configuration.apply(getType(), remote.getType(), Type.class)); setDefaultValue( (Expression) configuration.apply(getDefaultValue(), remote.getDefaultValue(), Expression.class)); }
@Override public int compare(AnnotationMemberDeclaration an1, AnnotationMemberDeclaration an2) { if (an1.getName() == null || an2.getName() == null) { throw new IllegalArgumentException( "Annotation member must have a name in order to compare them" + an1 + "-" + an2); } return an1.getName().compareTo(an2.getName()); }