fn eval(&self, inputs: TVec<Arc<Tensor>>) -> TractResult<TVec<Arc<Tensor>>> {
        let super_type: DatumType =
            DatumType::super_type_for(inputs.iter().map(|x| x.datum_type()))
                .ok_or_else(|| format!("No supertype found"))?;
        let shapes = inputs.iter().map(|t| t.shape()).collect::<TVec<_>>();
        let op = dispatch_datum!(Self::to_codegen_op(super_type)(self, &*shapes))?;
        std::mem::drop(shapes);
        op.as_stateless().unwrap().eval(inputs)
    }
/// Evaluates the operation given the input tensors.
Evaluates the operation given the input tensors.
Evaluates the operation given the input tensors .
fn eval(&self, inputs: TVec<Arc<Tensor>>) -> TractResult<TVec<Arc<Tensor>>> {
        let super_type: DatumType =
            DatumType::super_type_for(inputs.iter().map(|x| x.datum_type()))
                .ok_or_else(|| format!("No supertype found"))?;
        let shapes = inputs.iter().map(|t| t.shape()).collect::<TVec<_>>();
        let op = dispatch_datum!(Self::to_codegen_op(super_type)(self, &*shapes))?;
        std::mem::drop(shapes);
        op.as_stateless().unwrap().eval(inputs)
    }
fn eval ( & self , inputs : TVec < Arc < Tensor > > ) -> TractResult < TVec < Arc < Tensor > > > { let super_type : DatumType = DatumType :: super_type_for ( inputs . iter ( ) . map ( | x | x . datum_type ( ) ) ) . ok_or_else ( | | format ! ( " " ) ) ? ; let shapes = inputs . iter ( ) . map ( | t | t . shape ( ) ) . collect :: < TVec < _ > > ( ) ; let op = dispatch_datum ! ( Self to_codegen_op ( super_type ) ( self shapes ) ) ? ; std :: mem :: drop ( shapes ) ; op . as_stateless ( ) . unwrap ( ) . eval ( inputs ) }
Evaluates the operation given the input tensors.
Evaluates the operation given the input tensors .
&self
inputs
TVec<Arc<Tensor>>