# File lib/creatable/class_methods.rb, line 42 def create(args = {}) object = new fixed_args = {} args.each { |k, v| fixed_args.store(fix_key(k), v) } attributes.each do |a| next unless fixed_args.key? a[:name].to_sym value = fixed_args[a[:name].to_sym] if a[:block] a[:block].call object, value else object.instance_variable_set "@#{a[:name].to_sym}", value end end yield object, fixed_args if block_given? object end