Sha256: 584314e22996de9726c42b9035b912b04187fe23b5bf4a1f6db9baefa477b5d7
Contents?: true
Size: 1.69 KB
Versions: 1
Compression:
Stored size: 1.69 KB
Contents
require 'sugar-high/kind_of' require 'sugar-high/enumerable' require 'sugar-high/path' class Array def to_symbols self.flatten.select_labels.map{|a| a.to_s.to_sym } end def to_symbols! self.flatten!.select_labels!.map!{|a| a.to_s.to_sym } end def to_symbols_num self.flatten.map{|a| a.kind_of?(Fixnum) ? "_#{a}" : a}.map{|a| a.to_s.to_sym } end def to_symbols_num! self.flatten!.map!{|a| a.kind_of?(Fixnum) ? "_#{a}" : a}..map!{|a| a.to_s.to_sym } end def to_symbols_uniq to_symbols.uniq end def to_symbols_uniq! to_symbols!.uniq! end def to_strings self.flatten!.select_labels!.map!(&:to_s) end def to_strings! self.flatten.select_labels!.map!(&:to_s) end def to_filenames self.to_strings.map(&:underscore) end def to_filenames! self.to_strings!.map!(&:underscore) end def to_paths self.map(&:path) end def to_paths! self.map!(&:path) end def file_join File.join(*self.flatten) end def to_files self.map{|fp| fp.path.to_file } self.extend FilesArray end def to_files! self.map!{|fp| fp.path.to_file } self.extend FilesArray end def none? self.flatten.compact.empty? end def flat_uniq self.flatten.compact.uniq end def flat_uniq! self.flatten!.compact!.uniq! end def extract(sym) map { |e| e.send(sym) } end def sum inject( 0 ) { |sum,x| sum + x } end def mean (size > 0) ? sum.to_f / size : 0 end end module FilesArray def delete_all! self.each do |f| f.delete! if f.kind_of?(File) end end end class NilClass def flat_uniq [] end def none? true end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
sugar-high-0.4.3 | lib/sugar-high/array.rb |