code: public static <S, T> T findResult(S[] self, @ClosureParams(FirstParam.Component.class) Closure<T> condition) {
          return findResult(new ArrayIterator<S>(self), condition);
      }
docs: Iterates through the Array calling the given closure condition for each item but stopping once the first non-null
  result is found and returning that result. If all results are null, null is returned.
  
  @param self      an Array
  @param condition a closure that returns a non-null value to indicate that processing should stop and the value should be returned
  @return the first non-null result from calling the closure, or null
  @since 2.5.0