title: What is the purpose of the &() syntax?
body: <p>I've been writing some Vulkan code using the rust library <a href="https://github.com/vulkano-rs/vulkano" rel="nofollow noreferrer">Vulkano</a>, and came across the following snippet:</p>
  <pre><code>let compute_pipeline = Arc::new(ComputePipeline::new(
      device.clone(),
      &amp;shader.main_entry_point(),
      &amp;(),
  ));
  </code></pre>
  <p>I'm specifically asking about the 3rd parameter here - in the implementation of <code>ComputePipeline::new</code> it is listed as :</p>
  <pre><code>/// Builds a new `ComputePipeline`.
  pub fn new&lt;Cs&gt;(
      device: Arc&lt;Device&gt;,
      shader: &amp;Cs,
      specialization: &amp;Cs::SpecializationConstants,
  ) -&gt; Result&lt;ComputePipeline&lt;PipelineLayout&lt;Cs::PipelineLayout&gt;&gt;, ComputePipelineCreationError&gt;
  where
      Cs::PipelineLayout: Clone,
      Cs: EntryPointAbstract,
  {
      ...
  }
  </code></pre>
  <p>What is the <code>&amp;()</code> syntax here? A reference to the unit type?</p>