diff --git a/VERSION b/VERSION index 8acdd82..4e379d2 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.0.1 +0.0.2 diff --git a/lib/functional.rb b/lib/functional.rb index c730497..f2230e3 100644 --- a/lib/functional.rb +++ b/lib/functional.rb @@ -1,4 +1,25 @@ +class NotRegexp + def initialize r + @rx = r + end + def match l + ! @rx.match( l) + end + def =~ l + ! @rx =~ l + end + def -@ + @rx + end +end + +class Regexp + def -@ + NotRegexp.new self + end +end + class Functional include Enumerable @@ -33,6 +54,10 @@ class Functional push_method :select, &exe end + def grep r + push_method :select, &r.method( :match) + end + def delete_if &exe push_method :delete_if, &exe end