Trait tract_pulse::internal::ElementWiseMiniOp[]

pub trait ElementWiseMiniOp: 'static + Debug + DynClone + Send + Sync + Downcast + DynHash {
    pub fn name(&self) -> String;

    pub fn prefix(&self) -> &'static str { ... }
pub fn validation(&self) -> Validation { ... }
pub fn output_type(&self, input_type: DatumType) -> Option<DatumType> { ... }
pub fn eval_in_place(&self, t: &mut Tensor) -> Result<(), Error> { ... }
pub fn eval_out_of_place(&self, t: &Tensor) -> Result<Tensor, Error> { ... }
pub fn cost_per_element(
        &self,
        dt: DatumType
    ) -> SmallVec<[(Cost, usize); 4]> { ... }
pub fn declutter(
        &self,
        model: &Graph<TypedFact, Box<dyn TypedOp + 'static, Global>>,
        node: &Node<TypedFact, Box<dyn TypedOp + 'static, Global>>
    ) -> Result<Option<ModelPatch<TypedFact, Box<dyn TypedOp + 'static, Global>>>, Error> { ... }
pub fn quantize(
        &self,
        dt: DatumType,
        scale: f32,
        zero_point: i32
    ) -> Result<Option<Box<dyn ElementWiseMiniOp + 'static, Global>>, Error> { ... }
pub fn info(&self) -> Result<Vec<String, Global>, Error> { ... } }

Required methods

pub fn name(&self) -> String

Loading content...

Provided methods

pub fn prefix(&self) -> &'static str

pub fn validation(&self) -> Validation

pub fn output_type(&self, input_type: DatumType) -> Option<DatumType>

pub fn eval_in_place(&self, t: &mut Tensor) -> Result<(), Error>

pub fn eval_out_of_place(&self, t: &Tensor) -> Result<Tensor, Error>

pub fn cost_per_element(&self, dt: DatumType) -> SmallVec<[(Cost, usize); 4]>

pub fn declutter(
    &self,
    model: &Graph<TypedFact, Box<dyn TypedOp + 'static, Global>>,
    node: &Node<TypedFact, Box<dyn TypedOp + 'static, Global>>
) -> Result<Option<ModelPatch<TypedFact, Box<dyn TypedOp + 'static, Global>>>, Error>

pub fn quantize(
    &self,
    dt: DatumType,
    scale: f32,
    zero_point: i32
) -> Result<Option<Box<dyn ElementWiseMiniOp + 'static, Global>>, Error>

pub fn info(&self) -> Result<Vec<String, Global>, Error>

Loading content...

Implementations

impl dyn ElementWiseMiniOp + 'static

pub fn is<__T>(&self) -> bool where
    __T: ElementWiseMiniOp

Returns true if the trait object wraps an object of type __T.

pub fn downcast<__T>(
    self: Box<dyn ElementWiseMiniOp + 'static, Global>
) -> Result<Box<__T, Global>, Box<dyn ElementWiseMiniOp + 'static, Global>> where
    __T: ElementWiseMiniOp

Returns a boxed object from a boxed trait object if the underlying object is of type __T. Returns the original boxed trait if it isn’t.

pub fn downcast_rc<__T>(
    self: Rc<dyn ElementWiseMiniOp + 'static>
) -> Result<Rc<__T>, Rc<dyn ElementWiseMiniOp + 'static>> where
    __T: ElementWiseMiniOp

Returns an Rc-ed object from an Rc-ed trait object if the underlying object is of type __T. Returns the original Rc-ed trait if it isn’t.

pub fn downcast_ref<__T>(&self) -> Option<&__T> where
    __T: ElementWiseMiniOp

Returns a reference to the object within the trait object if it is of type __T, or None if it isn’t.

pub fn downcast_mut<__T>(&mut self) -> Option<&mut __T> where
    __T: ElementWiseMiniOp

Returns a mutable reference to the object within the trait object if it is of type __T, or None if it isn’t.

Implementors

impl ElementWiseMiniOp for Cast

impl ElementWiseMiniOp for Not

impl ElementWiseMiniOp for Abs

impl ElementWiseMiniOp for Acos

impl ElementWiseMiniOp for Acosh

impl ElementWiseMiniOp for Asin

impl ElementWiseMiniOp for Asinh

impl ElementWiseMiniOp for Atan

impl ElementWiseMiniOp for Atanh

impl ElementWiseMiniOp for Ceil

impl ElementWiseMiniOp for Cos

impl ElementWiseMiniOp for Cosh

impl ElementWiseMiniOp for Exp

impl ElementWiseMiniOp for Floor

impl ElementWiseMiniOp for Ln

impl ElementWiseMiniOp for Neg

impl ElementWiseMiniOp for Recip

impl ElementWiseMiniOp for Round

impl ElementWiseMiniOp for RoundHalfToEven

impl ElementWiseMiniOp for Rsqrt

impl ElementWiseMiniOp for Sign

impl ElementWiseMiniOp for Sin

impl ElementWiseMiniOp for Sinh

impl ElementWiseMiniOp for Sqrt

impl ElementWiseMiniOp for Square

impl ElementWiseMiniOp for Tan

impl ElementWiseMiniOp for Tanh

impl ElementWiseMiniOp for Sigmoid

impl ElementWiseMiniOp for LookupTable

impl ElementWiseMiniOp for QuantizeLinearI8

impl ElementWiseMiniOp for QuantizeLinearU8

Loading content...