class Toys::StandardMixins::Bundler::GemfileFinder
@private
Public Class Methods
new(context_directory, source_info, gemfile_names, toys_gemfile_names)
click to toggle source
@private
# File lib/toys/standard_mixins/bundler.rb, line 124 def initialize(context_directory, source_info, gemfile_names, toys_gemfile_names) @context_directory = context_directory @source_info = source_info @gemfile_names = gemfile_names @toys_gemfile_names = toys_gemfile_names || DEFAULT_TOYS_GEMFILE_NAMES end
Public Instance Methods
search(search_dir)
click to toggle source
@private
# File lib/toys/standard_mixins/bundler.rb, line 132 def search(search_dir) case search_dir when ::Array search_array(search_dir) when ::String ::Toys::Utils::Gems.find_gemfile(search_dir, gemfile_names: @gemfile_names) when :context search(@context_directory) when :current search(::Dir.getwd) when :toys search_toys else raise ::ArgumentError, "Unrecognized search_dir: #{dir.inspect}" end end
Private Instance Methods
search_array(search_dirs)
click to toggle source
# File lib/toys/standard_mixins/bundler.rb, line 151 def search_array(search_dirs) search_dirs.each do |search_dir| result = search(search_dir) return result if result end nil end
search_toys()
click to toggle source
# File lib/toys/standard_mixins/bundler.rb, line 159 def search_toys source_info = @source_info while source_info if source_info.source_type == :directory && source_info.source_path != source_info.context_directory result = ::Toys::Utils::Gems.find_gemfile(source_info.source_path, gemfile_names: @toys_gemfile_names) return result if result end source_info = source_info.parent end nil end