private void doRun(final CustomMembersGenerator generator, final Closure closure) {
    DefaultGroovyMethods.use(this, cats, new Closure<Object>(this, this) {
      public Object doCall(Object ignoredIt) {
        //noinspection unchecked
        return DefaultGroovyMethods.with(generator, closure);
      }
      @SuppressWarnings("unused")
      public Object doCall() {
        return doCall(null);
      }
    });
  }
private void doRun(final CustomMembersGenerator generator, final Closure closure)