Module: ExtendArray

Defined in:
lib/buzztools/extend_array.rb

Class Method Summary collapse

Class Method Details

.filter_exclude(aValues, aArray = nil) ⇒ Object



36
37
38
39
# File 'lib/buzztools/extend_array.rb', line 36

def filter_exclude(aValues,aArray=nil)
  aArray ||= self
  filter_exclude!(aValues,aArray.clone)
end

.filter_exclude!(aValues, aArray = nil) ⇒ Object



24
25
26
27
28
29
30
31
32
33
34
# File 'lib/buzztools/extend_array.rb', line 24

def filter_exclude!(aValues,aArray=nil)
  aArray ||= self
  if aValues.is_a? Array
    return aArray if aValues.empty?
    return aArray.delete_if {|v| aValues.include? v }
  elsif aValues.is_a? Regexp
    return aArray.delete_if {|v| v =~ aValues }
  else
    return filter_exclude!([aValues],aArray)
  end
end

.filter_include(aValues, aArray = nil) ⇒ Object



19
20
21
22
# File 'lib/buzztools/extend_array.rb', line 19

def filter_include(aValues,aArray=nil)
  aArray ||= self
  filter_include!(aValues,aArray.clone)
end

.filter_include!(aValues, aArray = nil) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
# File 'lib/buzztools/extend_array.rb', line 7

def filter_include!(aValues,aArray=nil)
  aArray ||= self
  if aValues.is_a? Array
    return aArray if aValues.empty?
    return aArray.delete_if {|v| not aValues.include? v }
  elsif aValues.is_a? Regexp
    return aArray.delete_if {|v| not v =~ aValues }
  else
    return filter_include!([aValues],aArray)
  end
end

.to_nilObject



41
42
43
# File 'lib/buzztools/extend_array.rb', line 41

def to_nil
  self.empty? ? nil : self
end