class ParamsReady::Parameter::ArrayParameter

Public Instance Methods

<<(value) click to toggle source
# File lib/params_ready/parameter/array_parameter.rb, line 83
def <<(value)
  init_for_write
  c = element(length, for_write: true)
  c.set_value value
  self
end

Protected Instance Methods

element(index, for_write: false) click to toggle source
# File lib/params_ready/parameter/array_parameter.rb, line 92
def element(index, for_write: false)
  return nil if is_nil?

  value = bare_value
  if value.length > index
    value[index]
  elsif value.length == index && for_write
    value << prototype.create
    value[index]
  else
    nil
  end
end
init_value() click to toggle source
# File lib/params_ready/parameter/array_parameter.rb, line 106
def init_value
  @value = []
end