title: Template pattern matching
body: <p>Consider this class template:</p>
  
  <pre><code>template &lt;typename T1, typename T2, bool B&gt;
  class SomeClass { };
  </code></pre>
  
  <p>Now, I'd like to provide two implementations based on <code>B==true</code> and <code>B==false</code>. That is, I'd like to say something like:</p>
  
  <pre><code>template &lt;ANYTHING, ANYTHING, true&gt; class SomeClass {
  // First implementation
  };
  
  template &lt;ANYTHING, ANYTHING, false&gt; class SomeClass {
  // Second implementation
  };
  </code></pre>
  
  <p>How can this be done in C++(11)?</p>