What do you call a constructor with an rvalue reference parameter?
<blockquote>
  <p>A move constructor of class T is a non-template constructor whose first parameter is T&amp;&amp;, const T&amp;&amp;, volatile T&amp;&amp;, or const volatile T&amp;&amp;, and either there are no other parameters, or the rest of the parameters all have default values.</p>
</blockquote>

<p>What would you call a constructor that took an rvalue reference to a different type:</p>

<pre><code>#include &lt;string&gt;
#include &lt;vector&gt;

struct Bar
{
    std::string bs;
    std::vector&lt;char&gt; bv;

};

struct Foo {
    std::string fs;
    std::vector&lt;char&gt; fv;

    Foo(Bar &amp;&amp; b)
    : fs(std::move(b.bs))
    , fv(std::move(b.bv))
    {}
};
</code></pre>