[−]Trait tract_onnx::prelude::Op
A base operation
Required methods
fn op_families(&self) -> &'static [&'static str]
Vector of short strings defining what families the op belongs too. tract-core defines "core", "mir", "lir".
fn name(&self) -> Cow<str>
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
Provided methods
fn nested_models(
&self
) -> Vec<(Cow<str>, &(dyn Model + 'static), Vec<String>, Vec<String>)>
&self
) -> Vec<(Cow<str>, &(dyn Model + 'static), Vec<String>, Vec<String>)>
Nested models, with label (for audit).
fn validation(&self) -> Validation
The kind of accuracy check that should be performed on operation when testing them.
fn same_as(&self, _other: &(dyn Op + 'static)) -> bool
Compare two ops.
fn info(&self) -> Result<Vec<String>, TractError>
Short (one-line) strings giving hints on internal implementation or important configuration details to be displayed in dumps.
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
fn is_canonic(&self) -> bool
Implementations
impl dyn Op + 'static
pub fn is<__T>(&self) -> bool where
__T: Op,
__T: Op,
Returns true if the trait object wraps an object of type __T.
pub fn downcast<__T>(
self: Box<dyn Op + 'static>
) -> Result<Box<__T>, Box<dyn Op + 'static>> where
__T: Op,
self: Box<dyn Op + 'static>
) -> Result<Box<__T>, Box<dyn Op + 'static>> 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.
pub fn downcast_rc<__T>(
self: Rc<dyn Op + 'static>
) -> Result<Rc<__T>, Rc<dyn Op + 'static>> where
__T: Op,
self: Rc<dyn Op + 'static>
) -> Result<Rc<__T>, Rc<dyn Op + 'static>> 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.
pub fn downcast_ref<__T>(&self) -> Option<&__T> where
__T: Op,
__T: Op,
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: Op,
__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
impl AsMut<dyn Op + 'static> for dyn TypedOp + 'static
impl AsRef<dyn Op + 'static> for dyn TypedOp + 'static
Implementations on Foreign Types
impl Op for Squeeze[src]
fn name(&self) -> Cow<str>[src]
fn op_families(&self) -> &'static [&'static str][src]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for ConstantLike[src]
fn name(&self) -> Cow<str>[src]
fn op_families(&self) -> &'static [&'static str][src]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for EyeLike[src]
fn name(&self) -> Cow<str>[src]
fn op_families(&self) -> &'static [&'static str][src]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for Concat[src]
fn name(&self) -> Cow<str>[src]
fn op_families(&self) -> &'static [&'static str][src]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for Reshape[src]
fn name(&self) -> Cow<str>[src]
fn op_families(&self) -> &'static [&'static str][src]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for RmDims[src]
fn name(&self) -> Cow<str>[src]
fn info(&self) -> Result<Vec<String>, TractError>[src]
fn op_families(&self) -> &'static [&'static str][src]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
impl Op for PermuteAxes[src]
fn name(&self) -> Cow<str>[src]
fn info(&self) -> Result<Vec<String>, TractError>[src]
fn op_families(&self) -> &'static [&'static str][src]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for Crop[src]
fn name(&self) -> Cow<str>[src]
fn op_families(&self) -> &'static [&'static str][src]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for Box<dyn Expansion + 'static>[src]
fn name(&self) -> Cow<str>[src]
fn op_families(&self) -> &'static [&'static str][src]
fn info(&self) -> Result<Vec<String>, TractError>[src]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for Nary[src]
fn name(&self) -> Cow<str>[src]
fn validation(&self) -> Validation[src]
fn op_families(&self) -> &'static [&'static str][src]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for Source[src]
fn name(&self) -> Cow<str>[src]
fn op_families(&self) -> &'static [&'static str][src]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for InferenceScan[src]
fn name(&self) -> Cow<str>[src]
fn info(&self) -> Result<Vec<String>, TractError>[src]
fn nested_models(
&self
) -> Vec<(Cow<str>, &(dyn Model + 'static), Vec<String>, Vec<String>)>[src]
&self
) -> Vec<(Cow<str>, &(dyn Model + 'static), Vec<String>, Vec<String>)>
fn op_families(&self) -> &'static [&'static str][src]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for Conv[src]
fn name(&self) -> Cow<str>[src]
fn validation(&self) -> Validation[src]
fn op_families(&self) -> &'static [&'static str][src]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for StridedSlice[src]
fn name(&self) -> Cow<str>[src]
fn op_families(&self) -> &'static [&'static str][src]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
impl Op for LayerHardmax[src]
fn name(&self) -> Cow<str>[src]
fn info(&self) -> Result<Vec<String>, TractError>[src]
fn op_families(&self) -> &'static [&'static str][src]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
impl Op for MultiBroadcastTo[src]
fn name(&self) -> Cow<str>[src]
fn op_families(&self) -> &'static [&'static str][src]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for ConstantOfShape[src]
fn name(&self) -> Cow<str>[src]
fn info(&self) -> Result<Vec<String>, TractError>[src]
fn op_families(&self) -> &'static [&'static str][src]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for Tile[src]
fn name(&self) -> Cow<str>[src]
fn op_families(&self) -> &'static [&'static str][src]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for LayerLogSoftmax[src]
fn name(&self) -> Cow<str>[src]
fn info(&self) -> Result<Vec<String>, TractError>[src]
fn validation(&self) -> Validation[src]
fn op_families(&self) -> &'static [&'static str][src]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
impl Op for Split[src]
fn name(&self) -> Cow<str>[src]
fn op_families(&self) -> &'static [&'static str][src]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for AddDims[src]
fn name(&self) -> Cow<str>[src]
fn info(&self) -> Result<Vec<String>, TractError>[src]
fn op_families(&self) -> &'static [&'static str][src]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
impl Op for LayerSoftmax[src]
fn name(&self) -> Cow<str>[src]
fn info(&self) -> Result<Vec<String>, TractError>[src]
fn validation(&self) -> Validation[src]
fn op_families(&self) -> &'static [&'static str][src]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
impl Op for TypedReshape
fn name(&self) -> Cow<str>
fn info(&self) -> Result<Vec<String>, TractError>
fn op_families(&self) -> &'static [&'static str]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for Gather
fn name(&self) -> Cow<str>
fn op_families(&self) -> &'static [&'static str]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for ElementWiseOp
fn name(&self) -> Cow<str>
fn info(&self) -> Result<Vec<String>, TractError>
fn validation(&self) -> Validation
fn is_canonic(&self) -> bool
fn op_families(&self) -> &'static [&'static str]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for Dummy
fn name(&self) -> Cow<str>
fn op_families(&self) -> &'static [&'static str]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for MergeOp
fn name(&self) -> Cow<str>
fn validation(&self) -> Validation
fn is_canonic(&self) -> bool
fn op_families(&self) -> &'static [&'static str]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for MatMul
fn name(&self) -> Cow<str>
fn op_families(&self) -> &'static [&'static str]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for Iff
fn name(&self) -> Cow<str>
fn op_families(&self) -> &'static [&'static str]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for Delay
fn name(&self) -> Cow<str>
fn info(&self) -> Result<Vec<String>, TractError>
fn is_canonic(&self) -> bool
fn op_families(&self) -> &'static [&'static str]
fn same_as(&self, other: &(dyn Op + 'static)) -> bool
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl<T> Op for MatMatMulPackB<T> where
T: Copy + Datum + Zero,
T: Copy + Datum + Zero,
fn name(&self) -> Cow<str>
fn same_as(&self, other: &(dyn Op + 'static)) -> bool
fn op_families(&self) -> &'static [&'static str]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for UnimplementedOp
fn name(&self) -> Cow<str>
fn op_families(&self) -> &'static [&'static str]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for AvgPool
fn name(&self) -> Cow<str>
fn info(&self) -> Result<Vec<String>, TractError>
fn validation(&self) -> Validation
fn is_canonic(&self) -> bool
fn op_families(&self) -> &'static [&'static str]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for Scan
fn name(&self) -> Cow<str>
fn info(&self) -> Result<Vec<String>, TractError>
fn nested_models(
&self
) -> Vec<(Cow<str>, &(dyn Model + 'static), Vec<String>, Vec<String>)>
&self
) -> Vec<(Cow<str>, &(dyn Model + 'static), Vec<String>, Vec<String>)>
fn validation(&self) -> Validation
fn op_families(&self) -> &'static [&'static str]
fn is_canonic(&self) -> bool
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl<D> Op for Slice<D> where
D: DimLike + ToDim + Hash,
D: DimLike + ToDim + Hash,
fn name(&self) -> Cow<str>
fn info(&self) -> Result<Vec<String>, TractError>
fn is_canonic(&self) -> bool
fn op_families(&self) -> &'static [&'static str]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
fn same_as(&self, other: &(dyn Op + 'static)) -> bool
impl Op for GlobalLpPool
fn name(&self) -> Cow<str>
fn validation(&self) -> Validation
fn op_families(&self) -> &'static [&'static str]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for Reduce
fn name(&self) -> Cow<str>
fn info(&self) -> Result<Vec<String>, TractError>
fn op_families(&self) -> &'static [&'static str]
fn is_canonic(&self) -> bool
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for Shape
fn name(&self) -> Cow<str>
fn op_families(&self) -> &'static [&'static str]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for MatMulUnary
fn name(&self) -> Cow<str>
fn info(&self) -> Result<Vec<String>, TractError>
fn is_canonic(&self) -> bool
fn op_families(&self) -> &'static [&'static str]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for MultiBroadcastTo
fn name(&self) -> Cow<str>
fn is_canonic(&self) -> bool
fn op_families(&self) -> &'static [&'static str]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for TypedSource
fn name(&self) -> Cow<str>
fn is_canonic(&self) -> bool
fn op_families(&self) -> &'static [&'static str]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for FiniteReshape
fn name(&self) -> Cow<str>
fn info(&self) -> Result<Vec<String>, TractError>
fn op_families(&self) -> &'static [&'static str]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for GlobalMaxPool
fn name(&self) -> Cow<str>
fn op_families(&self) -> &'static [&'static str]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for Downsample
fn name(&self) -> Cow<str>
fn info(&self) -> Result<Vec<String>, TractError>
fn op_families(&self) -> &'static [&'static str]
fn same_as(&self, other: &(dyn Op + 'static)) -> bool
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for MergeOpUnicast
fn name(&self) -> Cow<str>
fn op_families(&self) -> &'static [&'static str]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for PulsedSource
fn name(&self) -> Cow<str>
fn is_canonic(&self) -> bool
fn op_families(&self) -> &'static [&'static str]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for Flatten
fn name(&self) -> Cow<str>
fn op_families(&self) -> &'static [&'static str]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for UnaryOp
fn name(&self) -> Cow<str>
fn info(&self) -> Result<Vec<String>, TractError>
fn validation(&self) -> Validation
fn is_canonic(&self) -> bool
fn op_families(&self) -> &'static [&'static str]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl Op for Identity
fn name(&self) -> Cow<str>
fn op_families(&self) -> &'static [&'static str]
fn as_typed(&self) -> Option<&(dyn TypedOp + 'static)>
fn as_pulsed(&self) -> Option<&(dyn PulsedOp + 'static)>
impl<T> Op for Im2Col<T> where
T: Datum + Copy + Zero,
T: Datum + Copy + Zero,