pub(crate) fn set_push_constant<E, F: FnOnce(&[u32])>(
state: &mut BaseState<'_, '_, '_, '_>,
push_constant_data: &[u32],
stages: ShaderStages,
offset: u32,
size_bytes: u32,
values_offset: Option<u32>,
f: F,
) -> Result<(), E>