module LabelDefinitions
Constants
- VERSION
Public Class Methods
add(label)
click to toggle source
Adds a label definition to the in-memory list. Does not persist it.
# File lib/label_definitions.rb, line 21 def self.add(label) find(label.name) || (all << label) end
all()
click to toggle source
# File lib/label_definitions.rb, line 7 def self.all @labels ||= begin load_definitions.reduce([]) do |labels, (name, definition)| symbolize_keys! definition labels << Label.new(definition.merge(name: name)) end end end
find(name)
click to toggle source
# File lib/label_definitions.rb, line 16 def self.find(name) all.detect { |label| label.name == name } end
Private Class Methods
load_definitions()
click to toggle source
# File lib/label_definitions.rb, line 27 def self.load_definitions YAML.load_file File.expand_path('../../labels.yml', __FILE__) end
symbolize_keys!(hash)
click to toggle source
# File lib/label_definitions.rb, line 31 def self.symbolize_keys!(hash) hash.keys.each do |key| hash[key.to_sym] = hash.delete key end hash end