title: implicit apply method in scala class
body: <p>I am learning scala implicits.
  In below sample code, implicit apply is not getting invoked automatically :</p>
  
  <pre><code>package learn
  
  object ImplicitApplyInClass {
  
    def main(args: Array[String]): Unit = {
  
  
      implicit val ss = "abc"
  
      //This is working
      val a = A(1).apply.toUpperCase
  
      //This is giving compile time error
      //val b = A(1).toUpperCase
    }
  }
  
  case class A(id: Int) {
    implicit def apply(implicit s: String) = {
      s.toUpperCase    
    }
  }
  </code></pre>
  
  <p>Kindly suggest why apply is not getting invoked implicitly, when the implicit parameter is available in thr scope?</p>