# File lib/dm-validations/auto_validate.rb, line 173
      def infer_type_validation_for(property, options)
        options[:gte] = property.min if property.min
        options[:lte] = property.max if property.max

        if Integer == property.type
          options[:integer_only] = true

          validates_is_number property.name, options_with_message(options, property, :is_number)
        elsif BigDecimal == property.type || Float == property.type
          options[:precision] = property.precision
          options[:scale]     = property.scale

          validates_is_number property.name, options_with_message(options, property, :is_number)
        elsif !property.custom?
          # We only need this in the case we don't already
          # have a numeric validator, because otherwise
          # it will cause duplicate validation errors
          validates_is_primitive property.name, options_with_message(options, property, :is_primitive)
        end
      end