module Classifier
Classify elements in files or gems
Public Class Methods
classify(elements)
click to toggle source
# File lib/require_smasher/classifier.rb, line 7 def classify(elements) elements.uniq! files = elements.select { |element| element_type(element) == :file } directories = (elements - files).select { |element| element_type(element) == :directory } gems = elements - files - directories files << directories.map { |directory| FileSmasher.files_by(directory) } { files: files.flatten, gems: gems } end
Private Class Methods
element_type(element)
click to toggle source
# File lib/require_smasher/classifier.rb, line 18 def element_type(element) return :directory if Dir.exist?(element) return :file if FileSmasher.file?(element) :gem end