class NeptuneCoffee::Util
Public Class Methods
deep_length(data)
click to toggle source
returns number of hash and array elements recursively
# File lib/neptune_coffee/util.rb, line 15 def deep_length data case data when Hash then data.length + data.inject(0) {|sum,v| sum + deep_length(v[1])} when Array then data.length + data.inject(0) {|sum,v| sum + deep_length(v)} else 0 end end
subdir_hash(path)
click to toggle source
returns a hash of path’s subdirectories mapped to recursive calls on subdir_hash
on those subdirs
# File lib/neptune_coffee/util.rb, line 6 def subdir_hash path result = {} path.children.each do |c| result[c] = subdir_hash c if c.directory? end result end