Ekstrand: Exploring Rust for Vulkan drivers, part 1
Faith Ekstrand beginsan exploration of using the Rust language to write Vulkan graphicsdrivers.
Whenever a Vulkan object is created or destroyed, the parent objectis passed to both the create and destroy functions. This ensuresthat the lifetime of the child object is contained within thelifetime of the parent object. In Rust terms, this means it's safefor the child object to contain a non-mutable reference to theparent object. Vulkan also defines which entrypoint parameters mustbe externally synchronized by the client. Externally synchronizedobjects follow the same rules as mutable references in Rust.