title: How to define template function within template class in *.inl file
body: <p>I write template declaration in *.hpp file and their "definition" in *.inl file linked from *.hpp</p>
  
  <p>just like this:</p>
  
  <pre><code>//*.hpp
  template &lt;typename T1, typename T2&gt;
  class SomeClass
  {
  public:
      void someMethod();
  };
  
  //*.inl
  template &lt;typename T1, typename T2&gt;
  void SomeClass&lt;T1, T2&gt;::someMethod()
  {
  }
  </code></pre>
  
  <p>but how to write extra templated method inside template class in *.inl file?</p>
  
  <pre><code>//*.hpp
  template &lt;typename T1, typename T2&gt;
  class SomeClass
  {
  public:
      void someMethod();
  
      template &lt;typename E&gt;
      void extraTypedMethod(E &amp; e);
  };
  
  //*.inl
  template &lt;typename T1, typename T2&gt;
  void SomeClass&lt;T1, T2&gt;::someMethod()
  {
  }
  
  //how can I here define extraTypedmethod?
  </code></pre>