Trait ModuleVisitor

pub trait ModuleVisitor<B>
where B: Backend,
{ // Provided methods fn visit_float<const D: usize>(&mut self, param: &Param<Tensor<B, D>>) { ... } fn visit_int<const D: usize>(&mut self, param: &Param<Tensor<B, D, Int>>) { ... } fn visit_bool<const D: usize>(&mut self, param: &Param<Tensor<B, D, Bool>>) { ... } fn enter_module(&mut self, name: &str, container_type: &str) { ... } fn exit_module(&mut self, name: &str, container_type: &str) { ... } fn visit_float_with_path<const D: usize>( &mut self, path: &[String], id: ParamId, tensor: &Tensor<B, D>, ) { ... } fn visit_int_with_path<const D: usize>( &mut self, path: &[String], id: ParamId, tensor: &Tensor<B, D, Int>, ) { ... } fn visit_bool_with_path<const D: usize>( &mut self, path: &[String], id: ParamId, tensor: &Tensor<B, D, Bool>, ) { ... } }
Expand description

Module visitor trait for traversing and inspecting module parameters.

Provided Methods§

fn visit_float<const D: usize>(&mut self, param: &Param<Tensor<B, D>>)

Visit a float parameter in the module.

§Parameters
  • param: The float parameter to visit

fn visit_int<const D: usize>(&mut self, param: &Param<Tensor<B, D, Int>>)

Visit an int parameter in the module.

§Parameters
  • param: The integer parameter to visit

fn visit_bool<const D: usize>(&mut self, param: &Param<Tensor<B, D, Bool>>)

Visit a bool parameter in the module.

§Parameters
  • param: The boolean parameter to visit

fn enter_module(&mut self, name: &str, container_type: &str)

Called when entering a submodule.

§Parameters
  • name: The name of the submodule being entered
  • container_type: The type of the container (e.g., “Module”, “Vec”, etc.)

fn exit_module(&mut self, name: &str, container_type: &str)

Called when exiting a submodule.

§Parameters
  • name: The name of the submodule being exited
  • container_type: The type of the container (e.g., “Module”, “Vec”, etc.)

fn visit_float_with_path<const D: usize>( &mut self, path: &[String], id: ParamId, tensor: &Tensor<B, D>, )

Visit a float tensor with its full module path.

§Parameters
  • path: The path components to the tensor as a slice (e.g., &[“encoder”, “layer1”, “weight”]). Each element represents a module name in the hierarchy, with the final element being the parameter name. This allows efficient reuse of the path stack.
  • id: The unique identifier of the parameter
  • tensor: The float tensor to visit

fn visit_int_with_path<const D: usize>( &mut self, path: &[String], id: ParamId, tensor: &Tensor<B, D, Int>, )

Visit an int tensor with its full module path.

§Parameters
  • path: The path components to the tensor as a slice (e.g., &[“encoder”, “layer1”, “weight”]). Each element represents a module name in the hierarchy, with the final element being the parameter name. This allows efficient reuse of the path stack.
  • id: The unique identifier of the parameter
  • tensor: The integer tensor to visit

fn visit_bool_with_path<const D: usize>( &mut self, path: &[String], id: ParamId, tensor: &Tensor<B, D, Bool>, )

Visit a bool tensor with its full module path.

§Parameters
  • path: The path components to the tensor as a slice (e.g., &[“encoder”, “layer1”, “weight”]). Each element represents a module name in the hierarchy, with the final element being the parameter name. This allows efficient reuse of the path stack.
  • id: The unique identifier of the parameter
  • tensor: The boolean tensor to visit

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§