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