title: Retrofit with Kotlin traits that include implemented methods
body: <p>Traits work well with Retrofit as long as there is no extra method implemented. Depending on return type <code>RetrofitError: TwitchApi.someMethod: HTTP method annotation is required (e.g., @GET, @POST, etc.).</code> or <code>java.lang.IllegalArgumentException: TwitchApi.someMethod: Must have either a return type or Callback as last argument.</code> is thrown.</p>
  
  <p>Is there a way to make retrofit ignore a method that is not annotated with any of <code>retrofit.http.GET / PUT / ...</code>  ?</p>
  
  <pre><code>public trait SomeApi {
  
      GET("/endpoint")
      public fun getSomething(Query("user") user: String): Observable&lt;SomeResponse&gt;
  
      class object {
          public fun create(): SomeApi {
              val restAdapter = RestAdapter.Builder().setEndpoint("http://localhost").build()
              return restAdapter.create&lt;TwitchApi&gt;(javaClass&lt;SomeApi &gt;())
          }
      }
  
      public fun someMethodThatBreaksRetrofit(user: String) : Int {
          return processResponse(getSomething(user))
      }
  }
  </code></pre>