title: How to get ClassTag form TypeTag, or both at same time?
body: <p>I have some code like this:</p>
  
  <pre><code>class ReflectiveJsonFormat[T:TypeTag] extends JsonFormat[T] {
    def write(x: T) : JsValue = {
     val t = typeOf[T]
     val getters = t.declarations.filter { s =&gt; s.isMethod &amp;&amp; s.asMethod.isGetter }
     val mirror = runtimeMirror(this.getClass.getClassLoader)
     val instanceMiror = mirror.reflect(x)
    }
  }
  </code></pre>
  
  <p>That last line fails with:</p>
  
  <blockquote>
    <p>No ClassTag available for T</p>
  </blockquote>
  
  <p>I thought <code>TypeTag</code> was more info than a <code>ClassTag</code>? Can I get the <code>ClassTag</code> from the <code>TypeTag</code>? If not, is there some syntax for saying that <code>T</code> has two context bounds -- both <code>TypeTag</code> and <code>ClassTag</code>? Or, how would you otherwise fix this code?</p>