{
AnnotationDesc.ElementValuePair[] mvps = src.elementValues();
for(int i=0; i<mvps.length; i++) {
Type jmt = mvps[i].element().returnType();
String name = mvps[i].element().name();
AnnotationValue aval = mvps[i].value();
setAnnotationValue(name,jmt,aval,dest,sp);
}
}
if (!useAnnotationDefaults()) return;
{ // also set values for the type's defaults
AnnotationTypeDoc atd = src.annotationType();
AnnotationTypeElementDoc[] elements = atd.elements();
for(int i=0; i<elements.length; i++) {
AnnotationValue value = elements[i].defaultValue();
if (value != null) {
String name = elements[i].name();
System.out.println("default value named '"+name+"' = "+
" "+value+" "+value.getClass()+" "+dest.getValue(name));
if (dest.getValue(name) == null) {
setAnnotationValue(name,elements[i].returnType(),
value,dest,sp);
}
}