# File lib/dm-core/property.rb, line 468
    def field(repository_name = Undefined)
      self_repository_name = self.repository_name
      klass                = self.class

      unless repository_name.equal?(Undefined)
        warn "Passing in +repository_name+ to #{klass}#field is deprecated (#{caller[0]})"

        if repository_name != self_repository_name
          raise ArgumentError, "Mismatching +repository_name+ with #{klass}#repository_name (#{repository_name.inspect} != #{self_repository_name.inspect})"
        end
      end

      # defer setting the field with the adapter specific naming
      # conventions until after the adapter has been setup
      @field ||= model.field_naming_convention(self_repository_name).call(self).freeze
    end