public void deprecatedModule(ModuleReference moduleReference, ModuleBinding requiredModule) {
String sinceValue = deprecatedSinceValue(() -> requiredModule.getAnnotations());
boolean isTerminally = (requiredModule.tagBits & TagBits.AnnotationTerminallyDeprecated) != 0;
if (sinceValue != null) {
String[] args = { String.valueOf(requiredModule.name()), sinceValue };
handle( isTerminally ? IProblem.UsingTerminallyDeprecatedSinceVersionModule : IProblem.UsingDeprecatedSinceVersionModule,
args,
args,
moduleReference.sourceStart,
moduleReference.sourceEnd);
} else {
String[] args = { String.valueOf(requiredModule.name()) };
handle( isTerminally ? IProblem.UsingTerminallyDeprecatedModule : IProblem.UsingDeprecatedModule,
args,
args,
moduleReference.sourceStart,
moduleReference.sourceEnd);
}
}
String deprecatedSinceValue(Supplier<AnnotationBinding[]> annotations) {