Method: Oscal::Value#initialize

Defined in:
lib/oscal/value.rb

#initialize(options = {}) ⇒ Value

Returns a new instance of Value.



21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# File 'lib/oscal/value.rb', line 21

def initialize(options = {})
  unless options.is_a? Hash
    options = { "val" => options }
  end

  options.each_pair.each do |key, val|
    key_name = key.gsub("-", "_")

    unless KEY.include?(key_name.to_sym)
      raise UnknownAttributeError.new("Unknown key `#{key}` in Value")
    end

    self.send("#{key_name}=", val)
  end
end