# File lib/dm-core/associations/many_to_one.rb, line 114
        def set(source, target)
          assert_kind_of 'source', source, source_model
          assert_kind_of 'target', target, target_model, Hash, NilClass

          if target.kind_of?(Hash)
            target = target_model.new(target)
          end

          source_key.set(source, target.nil? ? [] : target_key.get(target))
          set!(source, target)
        end