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.scala4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/main/scala/xyz/driver/core/core.scala b/src/main/scala/xyz/driver/core/core.scala
index be19f0f..14e1b10 100644
--- a/src/main/scala/xyz/driver/core/core.scala
+++ b/src/main/scala/xyz/driver/core/core.scala
@@ -25,6 +25,10 @@ package object core {
object tagging {
private[core] trait Tagged[+V, +Tag]
+
+ implicit class Taggable[V <: Any](val v: V) extends AnyVal {
+ def tagged[Tag]: V @@ Tag = v.asInstanceOf[V @@ Tag]
+ }
}
type @@[+V, +Tag] = V with tagging.Tagged[V, Tag]