pub struct ShaderRegistry {
pub all_fns: HashMap<FnPtr, FnDef>,
pub draw_shader_defs: HashMap<DrawShaderPtr, DrawShaderDef>,
pub structs: HashMap<StructPtr, StructDef>,
pub builtins: HashMap<Ident, Builtin>,
pub enums: HashMap<LiveType, ShaderEnum>,
}
Fields§
§all_fns: HashMap<FnPtr, FnDef>
§draw_shader_defs: HashMap<DrawShaderPtr, DrawShaderDef>
§structs: HashMap<StructPtr, StructDef>
§builtins: HashMap<Ident, Builtin>
§enums: HashMap<LiveType, ShaderEnum>
Implementations§
Source§impl ShaderRegistry
impl ShaderRegistry
pub fn flush_registry(&mut self)
pub fn register_enum(&mut self, live_type: LiveType, shader_enum: ShaderEnum)
pub fn compute_const_table( &self, draw_shader_ptr: DrawShaderPtr, ) -> DrawShaderConstTable
pub fn fn_ident_from_ptr( &self, live_registry: &LiveRegistry, fn_node_ptr: FnPtr, ) -> Ident
pub fn draw_shader_method_ptr_from_ident( &self, draw_shader_def: &DrawShaderDef, ident: Ident, ) -> Option<FnPtr>
pub fn struct_method_ptr_from_ident( &self, struct_def: &StructDef, ident: Ident, ) -> Option<FnPtr>
pub fn draw_shader_method_decl_from_ident( &self, draw_shader_def: &DrawShaderDef, ident: Ident, ) -> Option<&FnDef>
pub fn struct_method_decl_from_ident( &self, struct_def: &StructDef, ident: Ident, ) -> Option<&FnDef>
pub fn find_live_node_by_path( &self, live_registry: &LiveRegistry, base_ptr: LivePtr, ids: &[LiveId], ) -> LiveNodeFindResult
pub fn analyse_deps( &mut self, live_registry: &LiveRegistry, deps: &[ShaderParserDep], ) -> Result<(), LiveError>
pub fn analyse_plain_fn( &mut self, live_registry: &LiveRegistry, struct_ptr: Option<StructPtr>, fn_ptr: FnPtr, ) -> Result<(), LiveError>
pub fn analyse_struct( &mut self, live_registry: &LiveRegistry, struct_ptr: StructPtr, ) -> Result<(), LiveError>
pub fn analyse_draw_shader<F>(
&mut self,
live_registry: &LiveRegistry,
draw_shader_ptr: DrawShaderPtr,
ext_self: F,
) -> Result<(), LiveError>where
F: FnMut(&LiveRegistry, &ShaderRegistry, TokenSpan, DrawShaderQuery, LiveType, &mut DrawShaderDef),
Auto Trait Implementations§
impl Freeze for ShaderRegistry
impl !RefUnwindSafe for ShaderRegistry
impl !Send for ShaderRegistry
impl !Sync for ShaderRegistry
impl Unpin for ShaderRegistry
impl UnwindSafe for ShaderRegistry
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more