pub struct Sum<A> { /* private fields */ }Expand description
wrapper to apply an operation
Implementations§
Source§impl<A> Sum<A>
impl<A> Sum<A>
Sourcepub fn get_reduction_mode(&self) -> ReductionMode
pub fn get_reduction_mode(&self) -> ReductionMode
gets the reduction mode
Sourcepub fn into_inner(self) -> A
pub fn into_inner(self) -> A
converts into the inner value
Sourcepub fn set_reduction_mode(&mut self, mode: ReductionMode)
pub fn set_reduction_mode(&mut self, mode: ReductionMode)
sets the reduction mode
Sourcepub fn with_inner<B>(self, inner: B) -> Sum<B>
pub fn with_inner<B>(self, inner: B) -> Sum<B>
sets the inner module
Sourcepub fn with_reduction_mode(self, mode: ReductionMode) -> Self
pub fn with_reduction_mode(self, mode: ReductionMode) -> Self
sets the reduction mode
Trait Implementations§
Source§impl<A: Decompose> Decompose for Sum<A>
impl<A: Decompose> Decompose for Sum<A>
Source§type Decomposition = (<A as Decompose>::Decomposition, <SumLayer as Decompose>::Decomposition)
type Decomposition = (<A as Decompose>::Decomposition, <SumLayer as Decompose>::Decomposition)
the decomposed type
Source§fn compose((inner, layer): Self::Decomposition) -> Self
fn compose((inner, layer): Self::Decomposition) -> Self
recreates from the decomposition
Source§fn decompose(self) -> Self::Decomposition
fn decompose(self) -> Self::Decomposition
owned decomposition
Source§fn decompose_cloned(&self) -> Self::Decomposition
fn decompose_cloned(&self) -> Self::Decomposition
decomposition that copies data
Source§impl<'de, A> Deserialize<'de> for Sum<A>where
A: Deserialize<'de>,
impl<'de, A> Deserialize<'de> for Sum<A>where
A: Deserialize<'de>,
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl<A: IntoSequence<M>, M: AI<M::Output, M::Output> + Op> IntoSequence<M> for Sum<A>
impl<A: IntoSequence<M>, M: AI<M::Output, M::Output> + Op> IntoSequence<M> for Sum<A>
Source§fn into_sequence(self) -> Sequential<Vec<M>>
fn into_sequence(self) -> Sequential<Vec<M>>
converts into a sequential module list
Source§impl<A: Op<Output = Y>, Y> Op for Sum<A>
impl<A: Op<Output = Y>, Y> Op for Sum<A>
Source§type Output = f32
type Output = f32
suggested output type to help with composition coherence. Ideally, Self should implement AI<X,Self::Output> for some X
Source§fn chain<B>(self, b: B) -> Sequential<(Self, B)>
fn chain<B>(self, b: B) -> Sequential<(Self, B)>
sequences with another ai operation
Source§fn forward_fixed<Z>(&self, input: Z) -> Z
fn forward_fixed<Z>(&self, input: Z) -> Z
applies to the input
Source§fn forward_fixed_mut<Z>(&mut self, input: Z) -> Z
fn forward_fixed_mut<Z>(&mut self, input: Z) -> Z
applies to the input
Source§fn forward_typed<W, Z>(&self, input: W) -> Z
fn forward_typed<W, Z>(&self, input: W) -> Z
applies to the input
Source§fn forward_typed_mut<W, Z>(&mut self, input: W) -> Z
fn forward_typed_mut<W, Z>(&mut self, input: W) -> Z
applies to the input, possibly updating internal caches
Source§fn infer_autoregressive<X, Y>(self, input: X) -> Autoregression<Self, Y> ⓘ
fn infer_autoregressive<X, Y>(self, input: X) -> Autoregression<Self, Y> ⓘ
creates an autoregressive inference
Source§fn map<B>(self, b: B) -> Map<Sequential<(Self, B)>>
fn map<B>(self, b: B) -> Map<Sequential<(Self, B)>>
applies the operation to every output
Source§fn wrap_inner(self) -> Inner<Self>where
Self: Sized,
fn wrap_inner(self) -> Inner<Self>where
Self: Sized,
wraps the inner value so it can be unwrapped with unwrap inner
Source§impl<A: UnwrapInner> UnwrapInner for Sum<A>
impl<A: UnwrapInner> UnwrapInner for Sum<A>
Source§type Inner = <A as UnwrapInner>::Inner
type Inner = <A as UnwrapInner>::Inner
the inner type
Source§fn unwrap_inner(self) -> A::Inner
fn unwrap_inner(self) -> A::Inner
unwraps the inner value
impl<A: Copy> Copy for Sum<A>
impl<A: Eq> Eq for Sum<A>
impl<A> StructuralPartialEq for Sum<A>
Auto Trait Implementations§
impl<A> Freeze for Sum<A>where
A: Freeze,
impl<A> RefUnwindSafe for Sum<A>where
A: RefUnwindSafe,
impl<A> Send for Sum<A>where
A: Send,
impl<A> Sync for Sum<A>where
A: Sync,
impl<A> Unpin for Sum<A>where
A: Unpin,
impl<A> UnwindSafe for Sum<A>where
A: UnwindSafe,
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<T> Shortcuts for T
impl<T> Shortcuts for T
Source§fn classification(self) -> Classification<Self>
fn classification(self) -> Classification<Self>
wraps in a classification wrapper
Source§fn regression(self) -> Regression<Self>
fn regression(self) -> Regression<Self>
wraps in a regression wrapper