module FeedNormalizer::Singular

Public Instance Methods

method_missing(name, *args) click to toggle source

If the method being called is a singular (in this simple case, does not end with an 's'), then it calls the plural method, and calls the first element. We're assuming that plural methods provide an array.

Example: Object contains an array called 'alphas', which looks like [:a, :b, :c]. Call object.alpha and :a is returned.

# File lib/structures.rb, line 13
def method_missing(name, *args)
  return self.send(:"#{name}s").first rescue super(name, *args)
end
respond_to?(x, y=false) click to toggle source
Calls superclass method
# File lib/structures.rb, line 17
def respond_to?(x, y=false)
  self.class::ELEMENTS.include?(x) || self.class::ELEMENTS.include?(:"#{x}s") || super(x, y)
end