Sha256: d3b0319a23031d3a366457b94dd854ea54054179edf1d7615056daa9b050e0fc
Contents?: true
Size: 981 Bytes
Versions: 3
Compression:
Stored size: 981 Bytes
Contents
module RevealCK module Templates # # Public: This class is home to a simple algorithm for looking up # files in a series of directories. Directory order matters, and the # first match for the file will be returned. It'll raise if it can't # find the file you've asked for. # class Finder attr_reader :paths def initialize(args = {}) @paths = args[:paths] || default_paths end def default_paths pwd_templates = File.join Dir.pwd, 'templates' reveal_ck_templates = File.join RevealCK::LOCATION, 'templates' [pwd_templates, reveal_ck_templates] end def find(template_name) paths.each do |path| glob_pattern = "#{File.join(path, template_name)}*" Dir.glob(glob_pattern).each do |match| return match unless File.directory? match end end raise "Unable to find #{template_name} in #{paths}" end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
reveal-ck-0.2.0 | lib/reveal-ck/templates/finder.rb |
reveal-ck-0.1.8 | lib/reveal-ck/templates/finder.rb |
reveal-ck-0.1.7 | lib/reveal-ck/templates/finder.rb |