Trait tract_pulse::internal::tract_core::ops::nn::Op

source ·
pub trait Op: Debug + DynClone + Send + Sync + 'static + Downcast + EvalOp {
    // Required methods
    fn name(&self) -> Cow<'_, str>;
    fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>;

    // Provided methods
    fn validation(&self) -> Validation { ... }
    fn same_as(&self, _other: &(dyn Op + 'static)) -> bool { ... }
    fn info(&self) -> Result<Vec<String>, Error> { ... }
}
Expand description

A base operation

Required Methods§

source

fn name(&self) -> Cow<'_, str>

source

fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>

Provided Methods§

source

fn validation(&self) -> Validation

The kind of accuracy check that should be performed on operation when testing them.

source

fn same_as(&self, _other: &(dyn Op + 'static)) -> bool

Compare two ops.

source

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

Short (one-line) strings giving hints on internal implementation or important configuration details to be displayed in dumps.

Implementations§

source§

impl dyn Op

source

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

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

source

pub fn downcast<__T>(self: Box<dyn Op>) -> Result<Box<__T>, Box<dyn Op>>
where __T: Op,

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.

source

pub fn downcast_rc<__T>(self: Rc<dyn Op>) -> Result<Rc<__T>, Rc<dyn Op>>
where __T: Op,

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.

source

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

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

source

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

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

Trait Implementations§

source§

impl AsMut<dyn Op> for Box<dyn PulsedOp>

source§

fn as_mut(&mut self) -> &mut dyn Op

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl AsMut<dyn Op> for Box<dyn TypedOp>

source§

fn as_mut(&mut self) -> &mut (dyn Op + 'static)

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl AsMut<dyn Op> for dyn PulsedOp

source§

fn as_mut(&mut self) -> &mut dyn Op

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl AsMut<dyn Op> for dyn TypedOp

source§

fn as_mut(&mut self) -> &mut (dyn Op + 'static)

Converts this type into a mutable reference of the (usually inferred) input type.
source§

impl AsRef<dyn Op> for Box<dyn PulsedOp>

source§

fn as_ref(&self) -> &dyn Op

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl AsRef<dyn Op> for Box<dyn TypedOp>

source§

fn as_ref(&self) -> &(dyn Op + 'static)

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl AsRef<dyn Op> for dyn PulsedOp

source§

fn as_ref(&self) -> &dyn Op

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl AsRef<dyn Op> for dyn TypedOp

source§

fn as_ref(&self) -> &(dyn Op + 'static)

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl<'clone> Clone for Box<dyn Op + 'clone>

source§

fn clone(&self) -> Box<dyn Op + 'clone>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<'clone> Clone for Box<dyn Op + Send + 'clone>

source§

fn clone(&self) -> Box<dyn Op + Send + 'clone>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<'clone> Clone for Box<dyn Op + Send + Sync + 'clone>

source§

fn clone(&self) -> Box<dyn Op + Send + Sync + 'clone>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<'clone> Clone for Box<dyn Op + Sync + 'clone>

source§

fn clone(&self) -> Box<dyn Op + Sync + 'clone>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Display for Box<dyn Op>

source§

fn fmt(&self, fmt: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
source§

impl<O> From<O> for Box<dyn Op>
where O: Op,

source§

fn from(it: O) -> Box<dyn Op>

Converts to this type from the input type.

Implementations on Foreign Types§

source§

impl Op for PulsedSameAxisConcat

source§

fn name(&self) -> Cow<'_, str>

source§

fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>

source§

impl Op for DeconvDelay

source§

fn name(&self) -> Cow<'_, str>

source§

fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>

source§

impl Op for Delay

source§

fn name(&self) -> Cow<'_, str>

source§

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

source§

fn same_as(&self, other: &(dyn Op + 'static)) -> bool

source§

fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>

source§

impl Op for PulseMask

source§

fn name(&self) -> Cow<'_, str>

source§

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

source§

fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>

source§

impl Op for PulsePad

source§

fn name(&self) -> Cow<'_, str>

source§

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

source§

fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>

source§

impl Op for PulsedAxisSlice

source§

fn name(&self) -> Cow<'_, str>

source§

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

source§

fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>

Implementors§