summaryrefslogtreecommitdiff
path: root/src/dbc/scala/dbc/value/ExactNumeric.scala
blob: c898220f9c26e0b5556eead8b9b537e7dbdb31f7 (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
25
26
27
28
29
30
31
32
33
34
35
36
/*                     __                                               *\
**     ________ ___   / /  ___     Scala API                            **
**    / __/ __// _ | / /  / _ |    (c) 2003-2010, LAMP/EPFL             **
**  __\ \/ /__/ __ |/ /__/ __ |                                         **
** /____/\___/_/ |_/____/_/ | |                                         **
**                          |/                                          **
\*                                                                      */

// $Id$


package scala.dbc
package value;


import java.math.BigInteger;
import java.math.BigDecimal;

abstract class ExactNumeric [Type] extends Value {

  val dataType: datatype.ExactNumeric[Type];

  def sqlString = nativeValue.toString();

}

object ExactNumeric {

  implicit def exactNumericToByte (obj:value.ExactNumeric[Byte]): Byte = obj.nativeValue;
  implicit def exactNumericToShort (obj:value.ExactNumeric[Short]): Short = obj.nativeValue;
  implicit def exactNumericToInt (obj:value.ExactNumeric[Int]): Int = obj.nativeValue;
  implicit def exactNumericToLong (obj:value.ExactNumeric[Long]): Long = obj.nativeValue;
  implicit def exactNumericToBigInteger (obj:value.ExactNumeric[BigInteger]): BigInteger = obj.nativeValue;
  implicit def exactNumericToBigDecimal (obj:value.ExactNumeric[BigDecimal]): BigDecimal = obj.nativeValue;

}