module RailsPackager::Util

Constants

TERMINAL_FILES

Public Instance Methods

deep_freeze(object) click to toggle source
# File lib/rails_packager/util.rb, line 5
def deep_freeze(object)
  case object
  when Hash
    object.freeze
    object.each { |k, v| deep_freeze(k); deep_freeze(v) }
  when Array
    object.freeze
    object.each { |y| deep_freeze(y) }
  when Symbol
  # Unneeded
  else
    object.freeze
  end
end
glob_match?(glob, file) click to toggle source
# File lib/rails_packager/util.rb, line 22
def glob_match?(glob, file)
  if File.fnmatch(glob, file, File::FNM_PATHNAME | File::FNM_DOTMATCH)
    true
  elsif !TERMINAL_FILES.include?(file)
    glob_match?(glob, File.dirname(file))
  end
end