Method: Linkage::ResultSet.register
- Defined in:
- lib/linkage/result_set.rb
.register(name, klass) ⇒ Object
Register a new result set. Subclasses must define #score_set and
#match_set. Otherwise, an ArgumentError will be raised when you try
to call register.
27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/linkage/result_set.rb', line 27 def register(name, klass) methods = klass.instance_methods missing = [] unless methods.include?(:score_set) missing.push("#score_set") end unless methods.include?(:match_set) missing.push("#match_set") end unless missing.empty? raise ArgumentError, "class must define #{missing.join(" and ")}" end @result_set ||= {} @result_set[name] = klass end |