pub struct CustomOperation<'c> { /* private fields */ }
Expand description

A custom operation. Custom operator wrapper for Tosa.

Hardware implementing TOSA may choose to add additional custom operators that are not expressed in the existing TOSA operations. These operators are not expected to be portable across TOSA implementations. The input and output signatures must be expressed in the corresponding TOSA node.

identifier is a string that tells the backend which custom operator is being called.

config is a string identifier which can help avoid name collisions on the identifier field.

implementation_attrs is a string which is a backend and identifier specific set of attributes to the custom operator.

inputs is the set of tensor inputs to the custom operator.

`outputs is the list of tensors returned by the operator. The number of operators is backend specific.

Implementations§

source§

impl<'c> CustomOperation<'c>

source

pub fn name() -> &'static str

Returns a name.

source

pub fn as_operation(&self) -> &Operation<'c>

Returns a generic operation.

source

pub fn builder( context: &'c Context, location: Location<'c> ) -> CustomOperationBuilder<'c, Unset, Unset, Unset, Unset, Unset>

Creates a builder.

source

pub fn outputs(&self) -> impl Iterator<Item = OperationResult<'c, '_>>

source

pub fn inputs(&self) -> impl Iterator<Item = Value<'c, '_>>

source

pub fn identifier(&self) -> Result<StringAttribute<'c>, Error>

source

pub fn set_identifier(&mut self, value: StringAttribute<'c>)

source

pub fn config(&self) -> Result<StringAttribute<'c>, Error>

source

pub fn set_config(&mut self, value: StringAttribute<'c>)

source

pub fn implementation_attrs(&self) -> Result<StringAttribute<'c>, Error>

source

pub fn set_implementation_attrs(&mut self, value: StringAttribute<'c>)

Trait Implementations§

source§

impl<'c> From<CustomOperation<'c>> for Operation<'c>

source§

fn from(operation: CustomOperation<'c>) -> Self

Converts to this type from the input type.
source§

impl<'c> TryFrom<Operation<'c>> for CustomOperation<'c>

§

type Error = Error

The type returned in the event of a conversion error.
source§

fn try_from(operation: Operation<'c>) -> Result<Self, Self::Error>

Performs the conversion.

Auto Trait Implementations§

§

impl<'c> RefUnwindSafe for CustomOperation<'c>

§

impl<'c> !Send for CustomOperation<'c>

§

impl<'c> !Sync for CustomOperation<'c>

§

impl<'c> Unpin for CustomOperation<'c>

§

impl<'c> UnwindSafe for CustomOperation<'c>

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.