code: public static Implementation throwing(TypeDescription throwableType) {
          if (!throwableType.isAssignableTo(Throwable.class)) {
              throw new IllegalArgumentException(throwableType + " does not extend throwable");
          }
          return new ExceptionMethod(new ConstructionDelegate.ForDefaultConstructor(throwableType));
      }
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 default constructor
  which is visible from the instrumented type.
  
  @param throwableType The type of the {@link Throwable}.
  @return An implementation that will throw an instance of the {@link Throwable} on each method invocation of the
  instrumented methods.