def read()

in core/src/main/scala/org/apache/spark/ml/param/UntypedArrayParam.scala [23:35]


      def read(value: JsValue): Any = value match {
        case v: JsNumber =>
          val num = v.value
          num match {
            case _ if num.isValidInt => num.toInt
            case _ if num.isValidLong => num.toLong
            case _ if num.isExactDouble || num.isBinaryDouble || num.isDecimalDouble => num.toDouble
            case _ => num
          }
        case v: JsString => v.value
        case v: JsBoolean => v.value
        case _ => throw new IllegalArgumentException(s"Cannot deserialize ${value}")
      }