class Loom::Pattern::ReferenceSet
A collection of Pattern::Reference
objects
Public Class Methods
builder(file_src, file_path)
click to toggle source
# File lib/loom/pattern/reference_set.rb, line 25 def builder(file_src, file_path) Builder.create(file_src, file_path) end
load_from_file(path)
click to toggle source
# File lib/loom/pattern/reference_set.rb, line 20 def load_from_file(path) Loom.log.debug1(self) { "loading patterns from file => #{path}" } builder(File.read(path), path).build end
new()
click to toggle source
# File lib/loom/pattern/reference_set.rb, line 30 def initialize @slug_to_ref_map = {} end
Public Instance Methods
add_pattern_refs(refs)
click to toggle source
# File lib/loom/pattern/reference_set.rb, line 53 def add_pattern_refs(refs) refs.each do |ref| Loom.log.debug2(self) { "adding ref to set => #{ref.slug}" } raise DuplicatePatternRef, ref.slug if @slug_to_ref_map[ref.slug] @slug_to_ref_map[ref.slug] = ref end end
get_pattern_ref(slug)
click to toggle source
# File lib/loom/pattern/reference_set.rb, line 42 def get_pattern_ref(slug) ref = @slug_to_ref_map[slug] raise NoReferenceForSlug, slug unless ref ref end
Also aliased as: []
merge!(ref_set)
click to toggle source
# File lib/loom/pattern/reference_set.rb, line 49 def merge!(ref_set) add_pattern_refs(ref_set.pattern_refs) end
pattern_refs()
click to toggle source
# File lib/loom/pattern/reference_set.rb, line 38 def pattern_refs @slug_to_ref_map.values end
slugs()
click to toggle source
# File lib/loom/pattern/reference_set.rb, line 34 def slugs @slug_to_ref_map.keys end