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

A qcast operation. Convert a quantizable type to a quantized type.

A QuantizeCast qcast represents a potential type shift from a quantizable type to a quantized type.

At runtime, a qcast will apply the transformation expressed by its operand and result type. For flexibility during transformation, it is also possible to have a qcast that performs no transformation (both its operand and result type are quantizable).

A qcast will typically originate from either: a) An expressed or implied constraint in the source dialect which signals that a certain level of quantization is possible or required. b) An inference made by a quantization algorithm indicating that a quantized representation may be acceptable.

Especially early in transformation, it is common to have pairs of qcast and dcast at points where a transition to a quantized type is required. In addition, it is also common to have an identity qcast (where the operand and result type are not quantized) at all points where it is legal to use a quantized representation (but is not known to be acceptable).

Implementations§

source§

impl<'c> QuantizeCastOperation<'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> ) -> QuantizeCastOperationBuilder<'c, Unset, Unset>

Creates a builder.

source

pub fn res(&self) -> Result<OperationResult<'c, '_>, Error>

source

pub fn arg(&self) -> Result<Value<'c, '_>, Error>

Trait Implementations§

source§

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

source§

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

Converts to this type from the input type.
source§

impl<'c> TryFrom<Operation<'c>> for QuantizeCastOperation<'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§

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.