validate

in lib/elastic_apm/util/precision_validator.rb [28:43]


      def validate(value, precision: 0, minimum: nil)
        float = Float(value)
        return nil unless (0.0..1.0).cover?(float)
        return float if float == 0

        multiplier = Float(10**precision)
        rounded = (float * multiplier + 0.5).floor / multiplier
        if rounded == 0 && minimum
          minimum
        else
          rounded
        end
      rescue ArgumentError
        nil
      end