class Virtus::Attribute::ExecutionVariables

Public Instance Methods

coerce(values) click to toggle source
# File lib/virtus/attribute/execution_variables.rb, line 5
def coerce(values)
  unless values.blank?
    klass = Class.new(Hive::Messages::ExecutionVariablesBase)

    attributes     = klass.attribute_set.collect(&:name)
    new_attributes = values.keys-attributes
    new_attributes.each do |attribute|
      klass.attribute attribute
    end

    klass.new(values)
  end
end