title: Explain this pattern matching code
body: <p>This code is from <em><a href="http://notes.langdale.com.au/Querying_a_Dataset_with_Scala_s_Pattern_Matching.html" rel="nofollow">Querying a Dataset with Scala's Pattern Matching</a></em>:</p>
  
  <pre><code>object &amp; { def unapply[A](a: A) = Some((a, a)) }
  
  "Julie" match {
    case Brothers(_) &amp; Sisters(_) =&gt; "Julie has both brother(s) and sister(s)"
    case Siblings(_) =&gt; "Julie's siblings are all the same sex"
    case _ =&gt; "Julie has no siblings"
  }
  
  // =&gt; "Julie has both brother(s) and sister(s)"
  </code></pre>
  
  <p>How does <code>&amp;</code> actually work? I don't see a Boolean test anywhere for the conjunction. How does this Scala magic work?</p>