Trait tract_pulse::internal::tract_core::ops::binary::BinMiniOp[]

pub trait BinMiniOp: 'static + Debug + DynClone + Send + Sync + Downcast + DynHash {
    pub fn name(&self) -> &'static str;
pub fn operating_datum_type(
        &self,
        a: DatumType,
        b: DatumType
    ) -> Result<DatumType, Error>;
pub fn result_datum_type(
        &self,
        a: DatumType,
        b: DatumType
    ) -> Result<DatumType, Error>;
pub fn eval_in_place(&self, a: &Tensor, b: &mut Tensor) -> Result<(), Error>;
pub fn eval_out_of_place(
        &self,
        c: &mut Tensor,
        a: &Tensor,
        b: &Tensor
    ) -> Result<(), Error>; pub fn validation(&self) -> Validation { ... }
pub fn eval_broadcast_and_typecast(
        &self,
        inputs: SmallVec<[Arc<Tensor>; 4]>
    ) -> Result<SmallVec<[Arc<Tensor>; 4]>, Error> { ... }
pub fn eval_broadcast(
        &self,
        inputs: SmallVec<[Arc<Tensor>; 4]>
    ) -> Result<SmallVec<[Arc<Tensor>; 4]>, Error> { ... }
pub fn unary_with_b_const(&self, b: &Arc<Tensor>) -> Option<UnaryOp> { ... }
pub fn declutter_bin(
        &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 declutter_unary(
        &self,
        model: &Graph<TypedFact, Box<dyn TypedOp + 'static, Global>>,
        node: &Node<TypedFact, Box<dyn TypedOp + 'static, Global>>,
        a: &Arc<Tensor>
    ) -> Result<Option<ModelPatch<TypedFact, Box<dyn TypedOp + 'static, Global>>>, Error> { ... }
pub fn cost_per_element(
        &self,
        dt: DatumType
    ) -> SmallVec<[(Cost, usize); 4]> { ... } }

Required methods

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

pub fn operating_datum_type(
    &self,
    a: DatumType,
    b: DatumType
) -> Result<DatumType, Error>

pub fn result_datum_type(
    &self,
    a: DatumType,
    b: DatumType
) -> Result<DatumType, Error>

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

pub fn eval_out_of_place(
    &self,
    c: &mut Tensor,
    a: &Tensor,
    b: &Tensor
) -> Result<(), Error>

Loading content...

Provided methods

pub fn validation(&self) -> Validation

pub fn eval_broadcast_and_typecast(
    &self,
    inputs: SmallVec<[Arc<Tensor>; 4]>
) -> Result<SmallVec<[Arc<Tensor>; 4]>, Error>

pub fn eval_broadcast(
    &self,
    inputs: SmallVec<[Arc<Tensor>; 4]>
) -> Result<SmallVec<[Arc<Tensor>; 4]>, Error>

pub fn unary_with_b_const(&self, b: &Arc<Tensor>) -> Option<UnaryOp>

pub fn declutter_bin(
    &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 declutter_unary(
    &self,
    model: &Graph<TypedFact, Box<dyn TypedOp + 'static, Global>>,
    node: &Node<TypedFact, Box<dyn TypedOp + 'static, Global>>,
    a: &Arc<Tensor>
) -> Result<Option<ModelPatch<TypedFact, Box<dyn TypedOp + 'static, Global>>>, Error>

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

Loading content...

Implementations

impl dyn BinMiniOp + 'static

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

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

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

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 BinMiniOp + 'static>
) -> Result<Rc<__T>, Rc<dyn BinMiniOp + 'static>> where
    __T: BinMiniOp

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: BinMiniOp

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: BinMiniOp

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 BinMiniOp for And

impl BinMiniOp for Equals

impl BinMiniOp for Greater

impl BinMiniOp for GreaterEqual

impl BinMiniOp for Lesser

impl BinMiniOp for LesserEqual

impl BinMiniOp for NotEquals

impl BinMiniOp for Or

impl BinMiniOp for Xor

impl BinMiniOp for Add

impl BinMiniOp for Div

impl BinMiniOp for FlippedPow

impl BinMiniOp for FlippedShiftLeft

impl BinMiniOp for FlippedShiftRight

impl BinMiniOp for Max

impl BinMiniOp for Min

impl BinMiniOp for Mul

impl BinMiniOp for Pow

impl BinMiniOp for Rem

impl BinMiniOp for ShiftLeft

impl BinMiniOp for ShiftRight

impl BinMiniOp for Sub

impl BinMiniOp for Scale

Loading content...