/** * @param methodName * The name of a method. * @return true if this class declares a field of the given name. */ public boolean hasDeclaredMethod(final String methodName) { return getDeclaredMethodInfo().containsName(methodName); }
/** * @param methodAnnotationName * The name of a method annotation. * @return true if this class declares a method with the named annotation. */ public boolean hasDeclaredMethodAnnotation(final String methodAnnotationName) { for (final MethodInfo methodInfo : getDeclaredMethodInfo()) { if (methodInfo.hasAnnotation(methodAnnotationName)) { return true; } } return false; }
/** * @param methodParameterAnnotationName * The name of a method annotation. * @return true if this class declares a method with the named annotation. */ public boolean hasDeclaredMethodParameterAnnotation(final String methodParameterAnnotationName) { for (final MethodInfo methodInfo : getDeclaredMethodInfo()) { if (methodInfo.hasParameterAnnotation(methodParameterAnnotationName)) { return true; } } return false; }
.map(classInfo -> classInfo.getDeclaredMethodInfo("handles")) .flatMap(Collection::stream) .map(MethodInfo::getTypeSignature)
final Set<String> typeDescriptorSet = new HashSet<>(); for (final ClassInfo ci : getOverrideOrder()) { for (final MethodInfo mi : ci.getDeclaredMethodInfo(methodName)) {
final Set<Entry<String, String>> nameAndTypeDescriptorSet = new HashSet<>(); for (final ClassInfo ci : getOverrideOrder()) { for (final MethodInfo mi : ci.getDeclaredMethodInfo()) {