Module: SpitterMethods::InstanceMethods

Defined in:
lib/spitter.rb

Instance Method Summary collapse

Instance Method Details

#initialize(params) ⇒ Object

Initialize the parser with parameters



63
64
65
# File 'lib/spitter.rb', line 63

def initialize(params)
  @params = params
end

#paramsObject



67
68
69
# File 'lib/spitter.rb', line 67

def params
  @params ||= {}
end

#parseObject



71
72
73
74
75
76
77
78
79
80
81
82
83
# File 'lib/spitter.rb', line 71

def parse
  request_params = {}
  self.class.rules.each do |target, (key, delegate, plural)|
    if @params.has_key?(target)
      if plural
        request_params.merge!(delegate.parse(@params[target]))
      else
        request_params[key] = parse_result(@params[target], delegate)
      end
    end
  end
  request_params
end