Ownership and lifetime¶
Slang owns language semantics, imports, program composition, reflection, and backend code generation. Workbench owns authored/editor state, document lifetime, dependency identity, parameter presentation, tool bindings, and render consumption. Qt/QRhi owns the graphics abstraction; C++ coordinates native lifetime and submission.
ShaderWorkspace owns ShaderDocument objects and shared time
Tool sessions reference documents and select capabilities
SlangRhiWidget/RenderPass consume compiled products through QRhi
A binding is not document ownership. Python exposure is not render-core ownership.
Implementation¶
Start with ShaderWorkspace.h, ShaderDocument.h, tool *Session.h files,
and rendering/RenderPass.h.