Skip to content

Commit 3eab45e

Browse files
authored
Update TypeMapper.scala added support for Float data type (#32)
1 parent a48a4aa commit 3eab45e

File tree

3 files changed

+16
-1
lines changed

3 files changed

+16
-1
lines changed

scalasql/core/src/DialectTypeMappers.scala

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ trait DialectTypeMappers extends DialectConfig {
2323
implicit def IntType: TypeMapper[Int]
2424
implicit def LongType: TypeMapper[Long]
2525

26+
implicit def FloatType: TypeMapper[Float]
2627
implicit def DoubleType: TypeMapper[Double]
2728
implicit def BigDecimalType: TypeMapper[scala.math.BigDecimal]
2829
implicit def BooleanType: TypeMapper[Boolean]

scalasql/core/src/TypeMapper.scala

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,8 @@ object TypeMapper {
8787
d.IntType
8888
implicit def longFromDialectTypeMappers(implicit d: DialectTypeMappers): TypeMapper[Long] =
8989
d.LongType
90-
90+
implicit def floatFromDialectTypeMappers(implicit d: DialectTypeMappers): TypeMapper[Float] =
91+
d.FloatType
9192
implicit def doubleFromDialectTypeMappers(implicit d: DialectTypeMappers): TypeMapper[Double] =
9293
d.DoubleType
9394
implicit def bigDecimalFromDialectTypeMappers(

scalasql/src/dialects/Dialect.scala

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,13 @@ trait Dialect extends DialectTypeMappers {
6262
def put(r: PreparedStatement, idx: Int, v: Long) = r.setLong(idx, v)
6363
}
6464

65+
implicit def FloatType: TypeMapper[Float] = new FloatType
66+
class FloatType extends TypeMapper[Float] {
67+
def jdbcType = JDBCType.FLOAT
68+
def get(r: ResultSet, idx: Int) = r.getFloat(idx)
69+
def put(r: PreparedStatement, idx: Int, v: Float) = r.setFloat(idx, v)
70+
}
71+
6572
implicit def DoubleType: TypeMapper[Double] = new DoubleType
6673
class DoubleType extends TypeMapper[Double] {
6774
def jdbcType = JDBCType.DOUBLE
@@ -197,12 +204,18 @@ trait Dialect extends DialectTypeMappers {
197204
def put(r: PreparedStatement, idx: Int, v: T) = r.setObject(idx, v, java.sql.Types.OTHER)
198205
}
199206

207+
implicit def from(x: Byte): Expr[Byte] = Expr(x)
208+
209+
implicit def from(x: Short): Expr[Short] = Expr(x)
210+
200211
implicit def from(x: Int): Expr[Int] = Expr(x)
201212

202213
implicit def from(x: Long): Expr[Long] = Expr(x)
203214

204215
implicit def from(x: Boolean): Expr[Boolean] = Expr.apply0(x, x)
205216

217+
implicit def from(x: Float): Expr[Float] = Expr(x)
218+
206219
implicit def from(x: Double): Expr[Double] = Expr(x)
207220

208221
implicit def from(x: scala.math.BigDecimal): Expr[scala.math.BigDecimal] = Expr(x)

0 commit comments

Comments
 (0)