ensure_unique_fields

in lib/generators/aws_record/base.rb [67:95]


        def ensure_unique_fields
          used_names = Set.new
          duplicate_fields = []

          self.attributes.each do |attr|

            if used_names.include? attr.name
              duplicate_fields << [:attribute, attr.name]
            end
            used_names.add attr.name

            if attr.options.key? :database_attribute_name
              raw_db_attr_name = attr.options[:database_attribute_name].delete('"') 

              if used_names.include? raw_db_attr_name
                duplicate_fields << [:database_attribute_name, raw_db_attr_name]
              end

              used_names.add raw_db_attr_name
            end
          end

          if !duplicate_fields.empty?
            duplicate_fields.each do |invalid_attr|
              @parse_errors << ArgumentError.new("Found duplicated field name: #{invalid_attr[1]}, in attribute#{invalid_attr[0]}")
            end
          end
        end