Skip to content

Instantly share code, notes, and snippets.

@benhoskings
Created November 11, 2008 02:03
Show Gist options
  • Select an option

  • Save benhoskings/23714 to your computer and use it in GitHub Desktop.

Select an option

Save benhoskings/23714 to your computer and use it in GitHub Desktop.
module Enumerable
def sift! &block
ret, keep = partition {|i|
yield i
}
self.replace keep
ret
end
end
lol = [ 1, 7, 3, 6, 9, 2 ]
lol.sift! {|i| i < 5 } # => [1, 3, 2]
lol # => [7, 6, 9]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment