title: How to alias an impl trait?
body: <p>I have many functions of the following type signature:</p>
  <pre class="lang-rust prettyprint-override"><code>fn f() -&gt; impl Fn(u32) -&gt; u32 { 
      |x: u32| x 
  }
  </code></pre>
  <p>How can I give a name to <code>Fn(u32) -&gt; u32</code> so that I don't have to repeat it? Although I can do <code>type X = Fn(u32) -&gt; u32;</code>, Rust will not let me use this because it is a type and not a trait. Must I wait for <a href="https://doc.rust-lang.org/unstable-book/language-features/trait-alias.html" rel="nofollow noreferrer"><code>trait_alias</code></a> or can I do something else?</p>