title: Using cats.Contravariant typeclass
body: <p>I'm trying to apply my <code>Contravariant</code> typeclass with syntax and faced the issue that it is not found. Here is what I currently have:</p>
  
  <pre><code>import cats._
  import cats.implicits._
  
  object Test {
    type Foo[A] = A =&gt; Unit
    private val f: Foo[String] = (_: String) =&gt; ()
    implicit val cvar: Contravariant[Foo] = null
  
    private val FF: Foo[Int] = f.contramap((i: Int) =&gt; //error: value contramap is not a member of Foo
      String.valueOf(i)
    )
  }
  </code></pre>
  
  <p>I don't understand it. I provided implicit <code>Contravariant[Foo]</code>, but the syntax is not applied anyway. What's wrong?</p>