Method: Icalendar2::Property::Base#initialize

Defined in:
lib/icalendar2/property/base.rb

#initialize(value, parameters = {}) ⇒ Base

Returns a new instance of Base.



26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/icalendar2/property/base.rb', line 26

def initialize(value, parameters = {})
  @value = if list?
    value_list = value.respond_to?(:gsub) ? split_list(value) : value
    value_list.map { |v| value_object(v) }
  else
    value_object(value)
  end
  if @value.nil?
    raise "Invalid value for #{self.class}: '#{value}'. Must be one of these types: #{self.class.value_types}"
  end
  @parameters = parameters || {}
  validate
end