module LookupBy

TODO: play nicely with belongs_to TODO: has_many association

class Decision

lookup_for :reasons

end

Decision.first.reasons

> [“employment”, “income”]

Decision.new.reasons = %w(employment income)

Constants

UUID_REGEX
UUID_REGEX_V4
VERSION

Public Class Methods

clear() click to toggle source
# File lib/lookup_by.rb, line 39
def clear
  lookups.each { |lookup| lookup.clear }
end
disable() click to toggle source
# File lib/lookup_by.rb, line 43
def disable
  lookups.each { |lookup| lookup.disable! }
end
enable() click to toggle source
# File lib/lookup_by.rb, line 47
def enable
  lookups.each { |lookup| lookup.enable! }
end
lookups() click to toggle source
# File lib/lookup_by.rb, line 35
def lookups
  classes.map { |klass| klass.lookup }
end
register(klass) click to toggle source
# File lib/lookup_by.rb, line 29
def register(klass)
  mutex.synchronize do
    self.classes << klass unless classes.include?(klass)
  end
end
reload() click to toggle source
# File lib/lookup_by.rb, line 51
def reload
  lookups.each { |lookup| lookup.reload }
end