Skip to main content

UnaryOperation

Enum UnaryOperation 

Source
#[repr(i32)]
pub enum UnaryOperation {
Show 25 variants kEXP = 0, kLOG = 1, kSQRT = 2, kRECIP = 3, kABS = 4, kNEG = 5, kSIN = 6, kCOS = 7, kTAN = 8, kSINH = 9, kCOSH = 10, kASIN = 11, kACOS = 12, kATAN = 13, kASINH = 14, kACOSH = 15, kATANH = 16, kCEIL = 17, kFLOOR = 18, kERF = 19, kNOT = 20, kSIGN = 21, kROUND = 22, kISINF = 23, kISNAN = 24,
}
Expand description

UnaryOperation

Enumerates the unary operations that may be performed by a Unary layer.

Operations kNOT must have inputs of DataType::kBOOL.

Operation kSIGN and kABS must have inputs of floating-point type, DataType::kINT8, DataType::kINT32 or DataType::kINT64.

Operation kISINF must have inputs of floating-point type.

All other operations must have inputs of floating-point type.

See [IUnaryLayer]

Variants§

§

kEXP = 0

< Exponentiation.

§

kLOG = 1

< Log (base e).

§

kSQRT = 2

< Square root.

§

kRECIP = 3

< Reciprocal.

§

kABS = 4

< Absolute value.

§

kNEG = 5

< Negation.

§

kSIN = 6

< Sine.

§

kCOS = 7

< Cosine.

§

kTAN = 8

< Tangent.

§

kSINH = 9

< Hyperbolic sine.

§

kCOSH = 10

< Hyperbolic cosine.

§

kASIN = 11

< Inverse sine.

§

kACOS = 12

< Inverse cosine.

§

kATAN = 13

< Inverse tangent.

§

kASINH = 14

< Inverse hyperbolic sine.

§

kACOSH = 15

< Inverse hyperbolic cosine.

§

kATANH = 16

< Inverse hyperbolic tangent.

§

kCEIL = 17

< Ceiling.

§

kFLOOR = 18

< Floor.

§

kERF = 19

< Gauss error function.

§

kNOT = 20

< Logical NOT.

§

kSIGN = 21

< Sign, If input > 0, output 1; if input < 0, output -1; if input == 0, output 0.

§

kROUND = 22

< Round to nearest even for floating-point data type.

§

kISINF = 23

< Return true if input value equals +/- infinity for floating-point data type.

§

kISNAN = 24

< Return true if input value is a NaN for floating-point data type.

Trait Implementations§

Source§

impl Clone for UnaryOperation

Source§

fn clone(&self) -> UnaryOperation

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

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

Performs copy-assignment from source. Read more
Source§

impl Eq for UnaryOperation

Source§

impl ExternType for UnaryOperation

Source§

type Id = (n, v, i, n, f, e, r, _1, (), U, n, a, r, y, O, p, e, r, a, t, i, o, n)

A type-level representation of the type’s C++ namespace and type name. Read more
Source§

type Kind = Trivial

Source§

impl From<UnaryOperation> for UnaryOperation

Source§

fn from(value: UnaryOperation) -> Self

Converts to this type from the input type.
Source§

impl Hash for UnaryOperation

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl Into<UnaryOperation> for UnaryOperation

Source§

fn into(self) -> UnaryOperation

Converts this type into the (usually inferred) input type.
Source§

impl PartialEq for UnaryOperation

Source§

fn eq(&self, other: &UnaryOperation) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl SharedPtrTarget for UnaryOperation

Source§

impl StructuralPartialEq for UnaryOperation

Source§

impl UniquePtrTarget for UnaryOperation

Source§

impl VectorElement for UnaryOperation

Source§

impl WeakPtrTarget for UnaryOperation

Auto Trait Implementations§

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> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. 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> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

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

Source§

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>,

Source§

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.
Source§

impl<T> WithinBoxTrivial for T
where T: ExternType<Kind = Trivial> + Unpin,

Source§

fn within_box(self) -> Pin<Box<T>>

Source§

impl<T> WithinUniquePtrTrivial for T
where T: UniquePtrTarget + ExternType<Kind = Trivial> + Unpin,