public AnnotationMirror createBooleanAnnotation(List<Boolean> values) { values = ValueCheckerUtils.removeDuplicates(values); if (values.isEmpty() || values.size() > MAX_VALUES) { return UNKNOWNVAL; } AnnotationBuilder builder = new AnnotationBuilder(processingEnv, BoolVal.class); builder.setValue("value", values); return builder.build(); }
public AnnotationMirror createDoubleValAnnotation(List<Double> doubleValues) { doubleValues = ValueCheckerUtils.removeDuplicates(doubleValues); if (doubleValues.isEmpty() || doubleValues.size() > MAX_VALUES) { return UNKNOWNVAL; } AnnotationBuilder builder = new AnnotationBuilder(processingEnv, DoubleVal.class); builder.setValue("value", doubleValues); return builder.build(); }
public AnnotationMirror createCharAnnotation(List<Character> values) { values = ValueCheckerUtils.removeDuplicates(values); if (values.isEmpty() || values.size() > MAX_VALUES) { return UNKNOWNVAL; } List<Long> longValues = new ArrayList<>(); for (char value : values) { longValues.add((long) value); } AnnotationBuilder builder = new AnnotationBuilder(processingEnv, IntVal.class); builder.setValue("value", longValues); return builder.build(); }