class Loom::Pattern::Loader
Public Class Methods
load(config)
click to toggle source
# File lib/loom/pattern/loader.rb, line 7 def load(config) loader = Loader.new config.files.loom_files loader.load_patterns loader end
new(pattern_files)
click to toggle source
# File lib/loom/pattern/loader.rb, line 14 def initialize(pattern_files) @loom_pattern_files = pattern_files @reference_set = ReferenceSet.new end
Public Instance Methods
get_pattern_ref(slug)
click to toggle source
# File lib/loom/pattern/loader.rb, line 32 def get_pattern_ref(slug) @reference_set[slug] end
Also aliased as: []
load_patterns()
click to toggle source
# File lib/loom/pattern/loader.rb, line 37 def load_patterns @loom_pattern_files.each do |f| raise SiteFileNotFound, f unless File.exists? f load_pattern_file f end end
patterns(slugs=nil)
click to toggle source
# File lib/loom/pattern/loader.rb, line 23 def patterns(slugs=nil) if slugs.nil? @reference_set.pattern_refs else refs = slugs.map { |slug| get_pattern_ref(slug) } expand_refs(refs) end end
slugs()
click to toggle source
# File lib/loom/pattern/loader.rb, line 19 def slugs @reference_set.slugs end
Private Instance Methods
expand_refs(refs)
click to toggle source
# File lib/loom/pattern/loader.rb, line 49 def expand_refs(refs) refs.flat_map { |r| r.expand_slugs }.map { |s| @reference_set[s] } end
load_pattern_file(f)
click to toggle source
# File lib/loom/pattern/loader.rb, line 45 def load_pattern_file(f) @reference_set.merge! ReferenceSet.load_from_file(f) end