Module: Libis::Tools::ParameterContainer::ClassMethods

Defined in:
lib/libis/tools/parameter.rb

Instance Method Summary collapse

Instance Method Details

#parameter(options = {}) ⇒ Object



145
146
147
148
149
150
151
152
153
154
155
156
157
158
# File 'lib/libis/tools/parameter.rb', line 145

def parameter(options = {})
  if options.is_a? Hash
    return nil if options.keys.empty?
    param_def = options.shift
    name = param_def.first.to_s.to_sym
    default = param_def.last
    parameters[name] = Parameter.new(name, default) if parameters[name].nil?
    options.each { |key, value| parameters[name][key] = value if value }
  else
    param_def = parameters[options]
    return param_def unless param_def.nil?
    self.superclass.parameter(options) rescue nil
  end
end

#parametersObject



160
161
162
# File 'lib/libis/tools/parameter.rb', line 160

def parameters
  @parameters ||= Hash.new
end