module Figs::DirectoryFlattener
A tool to get filenames from a directory.
Public Instance Methods
unknown()
click to toggle source
Extending self to allow methods to be available as class methods.
# File lib/figs/directory_flattener.rb, line 9 extend self
Private Instance Methods
directory_to_filenames(file_or_directory)
click to toggle source
Expects a directory, returns its files and subdirectories files as an array of filenames/paths. be concave.
# File lib/figs/directory_flattener.rb, line 31 def directory_to_filenames(file_or_directory) directory = Dir.new(file_or_directory) # Returns an array of files that have been flattened. directory.map { |file| flatten_files(directory.path,file) } end
flatten_files(directoryname,filename)
click to toggle source
Expects the directory path and filename, checks to see if its another directory or filename, if directory, calls directory_to_filenames.
# File lib/figs/directory_flattener.rb, line 40 def flatten_files(directoryname,filename) # If the filename turns out to be a directory... if Dir.exist?("#{directoryname}/#{filename}") # do a recursive call to the parent method, unless the directory is . or .. directory_to_filenames("#{directoryname}/#{filename}") unless ['.','..'].include?(filename) else # Otherwise check if its actually a file and return its filepath. "#{directoryname}/#{filename}" if File.exists?("#{directoryname}/#{filename}") end end