class Psychic::Runner::SampleFinder

Attributes

hints[RW]

Public Class Methods

new(search_dir = Dir.pwd, hints = nil) click to toggle source
# File lib/psychic/runner/sample_finder.rb, line 6
def initialize(search_dir = Dir.pwd, hints = nil)
  @search_dir = search_dir
  @hints = hints || {}
end

Public Instance Methods

find_sample(name) click to toggle source
# File lib/psychic/runner/sample_finder.rb, line 17
def find_sample(name)
  file = find_in_hints(name) || Psychic::Util.find_file_by_alias(name, @search_dir)
  CodeSample.new(name, file, @search_dir)
end
known_samples() click to toggle source
# File lib/psychic/runner/sample_finder.rb, line 11
def known_samples
  hints.map do | name, file |
    CodeSample.new(name, file, @search_dir)
  end
end

Private Instance Methods

find_in_hints(name) click to toggle source

Find multiple samples by a regex or glob pattern def find_samples(pattern) end

# File lib/psychic/runner/sample_finder.rb, line 28
def find_in_hints(name)
  hints.each do |k, v|
    return v if k.downcase == name.downcase
  end
  nil
end