Pass scope to mixin
<p>I have the following mixin for common active / hover states of an element:</p>

<pre><code>@mixin hover-states {
  &amp;:hover, &amp;:active, &amp;:focus {
    @content;
  }
}
</code></pre>

<p>This works when I use it like this</p>

<pre><code>.myClass {
  @include hover-states {
    color: red;
  }
}
</code></pre>

<p>However, when I want to use the parent ampersand notation, this doesn't work:</p>

<pre><code>.myClass {
  .myParent &amp; {
    @include hover-states {
      background-color: red;
    }
  }
}
</code></pre>

<p>The desired behaviour is, <strong>when the parent is hovered, the child element should change it's style.</strong> But this code compiles to the following CSS:</p>

<pre><code>.myParent .myClass:hover, .myParent .myClass:active, .myParent .myClass:focus {
  background-color: red;
}
</code></pre>

<p>But it should look like this</p>

<pre><code>.myParent:hover .myClass, .myParent:active .myClass, .myParent:focus .myClass {
  background-color: red;
}
</code></pre>

<p>Is there any method (or notation?) to pass the desired scope to the mixin, so that the <code>&amp;:hover</code> refers to the parent element and not to the child element?</p>