class
CodecMatcher
[T]
extends AnyRef
Instance Constructors
-
new
CodecMatcher
()(implicit codec: JsonCodec[T])
Value Members
-
def
!=
(arg0: AnyRef): Boolean
-
def
!=
(arg0: Any): Boolean
-
def
##
(): Int
-
def
==
(arg0: AnyRef): Boolean
-
def
==
(arg0: Any): Boolean
-
def
asInstanceOf
[T0]
: T0
-
def
clone
(): AnyRef
-
def
eq
(arg0: AnyRef): Boolean
-
def
equals
(arg0: Any): Boolean
-
def
finalize
(): Unit
-
def
getClass
(): java.lang.Class[_]
-
def
hashCode
(): Int
-
def
isInstanceOf
[T0]
: Boolean
-
def
ne
(arg0: AnyRef): Boolean
-
def
notify
(): Unit
-
def
notifyAll
(): Unit
-
def
synchronized
[T0]
(arg0: ⇒ T0): T0
-
def
toString
(): String
-
def
unapply
(j: JValue): Option[T]
-
def
wait
(): Unit
-
def
wait
(arg0: Long, arg1: Int): Unit
-
def
wait
(arg0: Long): Unit
Inherited from AnyRef
Inherited from Any
Simple class to turn a JsonCodec into something that can be used for pattern-matching.
val ListOfFoo = CodecMatcher[List[Foo]] val NamedBars = CodecMatcher[Map[String, Bar]] value match { case ListOfFoo(foos) => foos.foreach(_.fooify()) case NamedBars(bars) => bars("hello").doBarring() case _ => // didn't match }