Trait rai_core::ValueSpec

source ·
pub trait ValueSpec {
    type Kind;
    type Tensors: TensorIter + 'static;
    type Gradient;
}

Required Associated Types§

Implementations on Foreign Types§

source§

impl ValueSpec for Option<bool>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for Option<f32>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for Option<f64>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for Option<i8>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for Option<i16>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for Option<i32>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for Option<i64>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for Option<i128>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for Option<isize>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for Option<u8>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for Option<u16>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for Option<u32>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for Option<u64>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for Option<u128>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for Option<()>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for Option<usize>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for Option<bf16>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for Option<f16>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for bool

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for f32

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for f64

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for i8

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for i16

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for i32

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for i64

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for i128

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for isize

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for u8

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for u16

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for u32

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for u64

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for u128

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for ()

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for usize

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for HashMap<usize, Tensor>

source§

impl ValueSpec for bf16

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl ValueSpec for f16

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl<'a, T> ValueSpec for &'a T
where T: ValueSpec,

§

type Kind = <T as ValueSpec>::Kind

§

type Tensors = <T as ValueSpec>::Tensors

§

type Gradient = <T as ValueSpec>::Gradient

source§

impl<A> ValueSpec for (A,)
where A: Value, A::Tensors: TensorIter,

source§

impl<A, B> ValueSpec for (A, B)
where A: Value, B: Value, (A::Tensors, B::Tensors): TensorIter,

§

type Kind = Tuple<(A, B)>

§

type Tensors = (<A as ValueSpec>::Tensors, <B as ValueSpec>::Tensors)

§

type Gradient = (<A as ValueSpec>::Gradient, <B as ValueSpec>::Gradient)

source§

impl<A, B, C> ValueSpec for (A, B, C)
where A: Value, B: Value, C: Value, (A::Tensors, B::Tensors, C::Tensors): TensorIter,

§

type Kind = Tuple<(A, B, C)>

§

type Tensors = (<A as ValueSpec>::Tensors, <B as ValueSpec>::Tensors, <C as ValueSpec>::Tensors)

§

type Gradient = (<A as ValueSpec>::Gradient, <B as ValueSpec>::Gradient, <C as ValueSpec>::Gradient)

source§

impl<A, B, C, D> ValueSpec for (A, B, C, D)
where A: Value, B: Value, C: Value, D: Value, (A::Tensors, B::Tensors, C::Tensors, D::Tensors): TensorIter,

source§

impl<A, B, C, D, E> ValueSpec for (A, B, C, D, E)
where A: Value, B: Value, C: Value, D: Value, E: Value, (A::Tensors, B::Tensors, C::Tensors, D::Tensors, E::Tensors): TensorIter,

source§

impl<A, B, C, D, E, F> ValueSpec for (A, B, C, D, E, F)
where A: Value, B: Value, C: Value, D: Value, E: Value, F: Value, (A::Tensors, B::Tensors, C::Tensors, D::Tensors, E::Tensors, F::Tensors): TensorIter,

source§

impl<A, B, C, D, E, F, G> ValueSpec for (A, B, C, D, E, F, G)
where A: Value, B: Value, C: Value, D: Value, E: Value, F: Value, G: Value, (A::Tensors, B::Tensors, C::Tensors, D::Tensors, E::Tensors, F::Tensors, G::Tensors): TensorIter,

source§

impl<A, B, C, D, E, F, G, H> ValueSpec for (A, B, C, D, E, F, G, H)
where A: Value, B: Value, C: Value, D: Value, E: Value, F: Value, G: Value, H: Value, (A::Tensors, B::Tensors, C::Tensors, D::Tensors, E::Tensors, F::Tensors, G::Tensors, H::Tensors): TensorIter,

source§

impl<A, B, C, D, E, F, G, H, I> ValueSpec for (A, B, C, D, E, F, G, H, I)
where A: Value, B: Value, C: Value, D: Value, E: Value, F: Value, G: Value, H: Value, I: Value, (A::Tensors, B::Tensors, C::Tensors, D::Tensors, E::Tensors, F::Tensors, G::Tensors, H::Tensors, I::Tensors): TensorIter,

source§

impl<A, B, C, D, E, F, G, H, I, J> ValueSpec for (A, B, C, D, E, F, G, H, I, J)
where A: Value, B: Value, C: Value, D: Value, E: Value, F: Value, G: Value, H: Value, I: Value, J: Value, (A::Tensors, B::Tensors, C::Tensors, D::Tensors, E::Tensors, F::Tensors, G::Tensors, H::Tensors, I::Tensors, J::Tensors): TensorIter,

source§

impl<A, B, C, D, E, F, G, H, I, J, K> ValueSpec for (A, B, C, D, E, F, G, H, I, J, K)
where A: Value, B: Value, C: Value, D: Value, E: Value, F: Value, G: Value, H: Value, I: Value, J: Value, K: Value, (A::Tensors, B::Tensors, C::Tensors, D::Tensors, E::Tensors, F::Tensors, G::Tensors, H::Tensors, I::Tensors, J::Tensors, K::Tensors): TensorIter,

source§

impl<A, B, C, D, E, F, G, H, I, J, K, L> ValueSpec for (A, B, C, D, E, F, G, H, I, J, K, L)
where A: Value, B: Value, C: Value, D: Value, E: Value, F: Value, G: Value, H: Value, I: Value, J: Value, K: Value, L: Value, (A::Tensors, B::Tensors, C::Tensors, D::Tensors, E::Tensors, F::Tensors, G::Tensors, H::Tensors, I::Tensors, J::Tensors, K::Tensors, L::Tensors): TensorIter,

source§

impl<E> ValueSpec for Result<bool, E>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl<E> ValueSpec for Result<f32, E>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl<E> ValueSpec for Result<f64, E>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl<E> ValueSpec for Result<i8, E>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl<E> ValueSpec for Result<i16, E>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl<E> ValueSpec for Result<i32, E>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl<E> ValueSpec for Result<i64, E>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl<E> ValueSpec for Result<i128, E>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl<E> ValueSpec for Result<isize, E>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl<E> ValueSpec for Result<u8, E>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl<E> ValueSpec for Result<u16, E>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl<E> ValueSpec for Result<u32, E>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl<E> ValueSpec for Result<u64, E>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl<E> ValueSpec for Result<u128, E>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl<E> ValueSpec for Result<(), E>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl<E> ValueSpec for Result<usize, E>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl<E> ValueSpec for Result<bf16, E>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl<E> ValueSpec for Result<f16, E>

§

type Kind = Basic

§

type Tensors = ()

§

type Gradient = ()

source§

impl<const N: usize, T> ValueSpec for [T; N]
where T: Value, [T::Tensors; N]: TensorIter,

§

type Kind = Array<[T; N]>

§

type Tensors = [<T as ValueSpec>::Tensors; N]

§

type Gradient = [<T as ValueSpec>::Gradient; N]

Implementors§