def reject
      return enum_for(__method__) unless block_given?

      select { |v, s, d, i| !yield(v, s, d, i) }
    end
def reject
      return enum_for(__method__) unless block_given?

      select { |v, s, d, i| !yield(v, s, d, i) }
    end
Returns a Pattern containing all events of +self+ for which +block+
 is false.

 If no block is given, an Enumerator is returned.

 @see Pattern#select

 @yield [v, s, d, i] value, start, duration and iteration
 @yieldreturn [Boolean] whether event is rejected
 @return [Pattern]