pub trait Lowerer {
Show 16 methods
// Provided methods
fn elementwise(&mut self, _node: &GraphNode) -> Result<(), ForgeError> { ... }
fn matmul(&mut self, _node: &GraphNode) -> Result<(), ForgeError> { ... }
fn gemv(&mut self, _node: &GraphNode) -> Result<(), ForgeError> { ... }
fn fft(&mut self, _node: &GraphNode) -> Result<(), ForgeError> { ... }
fn reduce(&mut self, _node: &GraphNode) -> Result<(), ForgeError> { ... }
fn gather_dequant(&mut self, _node: &GraphNode) -> Result<(), ForgeError> { ... }
fn broadcast(&mut self, _node: &GraphNode) -> Result<(), ForgeError> { ... }
fn softmax(&mut self, _node: &GraphNode) -> Result<(), ForgeError> { ... }
fn stencil(&mut self, _node: &GraphNode) -> Result<(), ForgeError> { ... }
fn scatter_accum(&mut self, _node: &GraphNode) -> Result<(), ForgeError> { ... }
fn neighbor(&mut self, _node: &GraphNode) -> Result<(), ForgeError> { ... }
fn slice(&mut self, _node: &GraphNode) -> Result<(), ForgeError> { ... }
fn rope(&mut self, _node: &GraphNode) -> Result<(), ForgeError> { ... }
fn pool2d(&mut self, _node: &GraphNode) -> Result<(), ForgeError> { ... }
fn resize2d(&mut self, _node: &GraphNode) -> Result<(), ForgeError> { ... }
fn conv2d(&mut self, _node: &GraphNode) -> Result<(), ForgeError> { ... }
}Expand description
A backend code generator. lower_graph calls exactly one method per node, in
topological order. Op-classes a backend has not implemented yet use the default
methods, which return an explicit Err (never a silent no-op).