aboutsummaryrefslogtreecommitdiff
path: root/src/main/scala/xyz/driver/core/core.scala
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/scala/xyz/driver/core/core.scala')
-rw-r--r--src/main/scala/xyz/driver/core/core.scala12
1 files changed, 2 insertions, 10 deletions
diff --git a/src/main/scala/xyz/driver/core/core.scala b/src/main/scala/xyz/driver/core/core.scala
index c88c998..d1128b6 100644
--- a/src/main/scala/xyz/driver/core/core.scala
+++ b/src/main/scala/xyz/driver/core/core.scala
@@ -46,17 +46,9 @@ package core {
def convert(id: Id[A]): Id[B] = Id[B](id.value)
}
- object SameId extends LowPrioritySameIdImplicits {
+ object SameId {
def apply[A, B] = new SameId[A, B] {}
-
- implicit def reflexive[A]: A ~ A = SameId[A, A]
- implicit def symmetric[A, B](implicit ab: A ~ B): B ~ A = SameId[B, A]
- }
-
- trait LowPrioritySameIdImplicits {
- protected type ~[A, B] = SameId[A, B]
-
- implicit def transitive[A, B, C](implicit ab: A ~ B, bc: B ~ C): A ~ C = SameId[A, C]
+ implicit def symmetric[A, B](implicit ab: SameId[A, B]): SameId[B, A] = SameId[B, A]
}
implicit class InvariantIdOps[Tag](id: Id[Tag]) {