in dataenum-processor/src/main/java/com/spotify/dataenum/processor/parser/MethodParser.java [39:57]
public static MethodSpec parse(ExecutableElement el, Trees trees) {
// filter off DEFAULT modifier
Function<Stream<Modifier>, Stream<Modifier>> adjustModifiers =
mods -> mods.filter(x -> x != Modifier.DEFAULT);
// populate STATIC modifier if required
if (el.getAnnotation(Static.class) != null) {
adjustModifiers =
adjustModifiers.andThen(mods -> Stream.concat(Stream.of(Modifier.STATIC), mods));
}
// make sure internal @Static annotation doesn't sneak out
Function<Stream<? extends AnnotationMirror>, Stream<? extends AnnotationMirror>>
adjustAnnotations =
annos -> annos.filter(x -> !"@com.spotify.dataenum.Static".equals(x.toString()));
return MethodMethods.builderFrom(el, adjustModifiers, adjustAnnotations)
.addCode(MethodMethods.codeBlockFrom(el, trees))
.build();
}