Sha256: 53a2028ea8a9b89ce719957080f66e6ab5da3d3ec267a1527c0690563acb50ac
Contents?: true
Size: 1017 Bytes
Versions: 1
Compression:
Stored size: 1017 Bytes
Contents
class Array def extract_options! last.is_a?(::Hash) ? pop : {} end def to_yes_no(options={}) self.collect {|e| e.to_yes_no(options)} end def add_blank_option(options={}) doit = options.fetch(:doit, true) value = options.fetch(:value, 0) label = options.fetch(:label, "") self.insert(0, [label, value]) if doit self end #This method iterates over the Array as normal #each method. For each iteration #set two variables in the block, |item, flag|. item will be set tot he current item #in the iteration; flag will be set to "false" on all iterations except the last iteration def each_with_end_flag my_size = self.size self.each_with_index do |item, index| index + 1 == my_size ? yield(item, true) : yield(item, false) end end def not_empty? !self.empty? end def add_all(arr, options={}) flatten = options.fetch(:flatten, true) a = flatten ? arr.flatten : arr self.concat(a) end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
corelib-0.0.6 | lib/corelib/array/core.rb |