From 3c22528e7f99e4b16327d6308c67b4be49d89efe Mon Sep 17 00:00:00 2001 From: Stewart Stewart Date: Wed, 21 Dec 2016 01:11:01 -0500 Subject: more generically named type parameter for Mapper --- src/main/scala/xyz/driver/core/core.scala | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) (limited to 'src/main/scala/xyz') diff --git a/src/main/scala/xyz/driver/core/core.scala b/src/main/scala/xyz/driver/core/core.scala index cbc5ce9..1c92423 100644 --- a/src/main/scala/xyz/driver/core/core.scala +++ b/src/main/scala/xyz/driver/core/core.scala @@ -34,20 +34,17 @@ package core { override def toString: String = value } + @SuppressWarnings(Array("org.wartremover.warts.ImplicitConversion")) object Id { implicit def idEqual[T]: Equal[Id[T]] = Equal.equal[Id[T]](_ == _) implicit def idOrdering[T]: Ordering[Id[T]] = Ordering.by[Id[T], String](_.value) - sealed trait Mapper[Entity, Row] + sealed trait Mapper[E, R] object Mapper { - def apply[Entity, Row] = new Mapper[Entity, Row] {} + def apply[E, R] = new Mapper[E, R] {} } - - implicit def to[Row, Entity](rowId: Id[Row])(implicit ev: Mapper[Entity, Row]): Id[Entity] = - Id[Entity](rowId.value) - - implicit def from[Entity, Row](entityId: Id[Entity])(implicit ev: Mapper[Entity, Row]): Id[Row] = - Id[Row](entityId.value) + implicit def convertRE[R, E](id: Id[R])(implicit ev: Mapper[E, R]): Id[E] = Id[E](id.value) + implicit def convertER[E, R](id: Id[E])(implicit ev: Mapper[E, R]): Id[R] = Id[R](id.value) } final case class Name[+Tag](value: String) extends AnyVal { -- cgit v1.2.3