blob: abb46d3aaf9171a9a0d9f7a31a704f750939220f (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
object Test1442 {
final def sumMinimized[B](num: Numeric[B]): Int = {
var cse: scala.math.Numeric.type = null.asInstanceOf[scala.math.Numeric.type]
({cse = scala.math.Numeric; num eq cse.IntIsIntegral} ||
(num eq cse.DoubleAsIfIntegral))
2
}
final def sum[B](implicit num: Numeric[B]): B = {
// arithmetic series formula can be used for regular addition
var cse: scala.math.Numeric.type = null.asInstanceOf[scala.math.Numeric.type]
if ({cse = scala.math.Numeric; num eq cse.IntIsIntegral}||
(num eq cse.BigIntIsIntegral)||
(num eq cse.ShortIsIntegral)||
(num eq cse.ByteIsIntegral)||
(num eq cse.CharIsIntegral)||
(num eq cse.LongIsIntegral)||
(num eq cse.FloatAsIfIntegral)||
(num eq cse.BigDecimalIsFractional)||
(num eq cse.DoubleAsIfIntegral)) {
null.asInstanceOf[B]
} else null.asInstanceOf[B]
}
}
|