code: public static <T extends MethodDescription> ElementMatcher.Junction<T> declaresGenericException(TypeDescription.Generic exceptionType) {
          return !exceptionType.getSort().isWildcard() && exceptionType.asErasure().isAssignableTo(Throwable.class)
                  ? ElementMatchers.<T>declaresGenericException(new CollectionItemMatcher<TypeDescription.Generic>(is(exceptionType)))
                  : new BooleanMatcher<T>(false);
      }
docs: Matches a method that declares the given generic exception type. For non-generic type, this matcher behaves identically to
  {@link ElementMatchers#declaresException(TypeDescription)}. For exceptions that are expressed as type variables, only exceptions
  that are represented as this type variable are matched.
  
  @param exceptionType The generic exception type that is matched exactly.
  @param <T>           The type of the matched object.
  @return A matcher that matches any method that exactly matches the provided generic exception.