code: public static Implementation throwing(TypeDescription throwableType, String message) {
          if (!throwableType.isAssignableTo(Throwable.class)) {
              throw new IllegalArgumentException(throwableType + " does not extend throwable");
          }
          return new ExceptionMethod(new ConstructionDelegate.ForStringConstructor(throwableType, message));
      }
docs: Creates an implementation that creates a new instance of the given {@link Throwable} type on each method
  invocation which is then thrown immediately. For this to be possible, the given type must define a
  constructor that takes a single {@link java.lang.String} as its argument.
  
  @param throwableType The type of the {@link Throwable}.
  @param message       The string that is handed to the constructor. Usually an exception message.
  @return An implementation that will throw an instance of the {@link Throwable} on each method invocation
  of the instrumented methods.