Trait concrete_core::math::tensor::AsMutTensor[][src]

pub trait AsMutTensor: AsRefTensor<Element = Self::Element> {
    type Element;
    type Container: AsMutSlice<Element = Self::Element>;
    fn as_mut_tensor(&mut self) -> &mut Tensor<Self::Container>;
}

A trait for Tensor-based types, allowing to mutably borrow the enclosed tensor.

This trait implements the same logic as AsRefTensor, but for mutable borrow instead. See the AsRefTensor documentation for more explanations on the logic.

Associated Types

type Element[src]

The element type.

type Container: AsMutSlice<Element = Self::Element>[src]

The container used by the tensor.

Loading content...

Required methods

fn as_mut_tensor(&mut self) -> &mut Tensor<Self::Container>[src]

Returns a mutable reference to the enclosed tensor.

Loading content...

Implementors

impl<'a, Element> AsMutTensor for BootstrapKey<&'a mut [Element]>[src]

type Element = Element

type Container = &'a mut [Element]

impl<'a, Element> AsMutTensor for CleartextList<&'a mut [Element]>[src]

type Element = Element

type Container = &'a mut [Element]

impl<'a, Element> AsMutTensor for PlaintextList<&'a mut [Element]>[src]

type Element = Element

type Container = &'a mut [Element]

impl<'a, Element> AsMutTensor for GgswCiphertext<&'a mut [Element]>[src]

type Element = Element

type Container = &'a mut [Element]

impl<'a, Element> AsMutTensor for GgswLevelMatrix<&'a mut [Element]>[src]

type Element = Element

type Container = &'a mut [Element]

impl<'a, Element> AsMutTensor for GgswLevelRow<&'a mut [Element]>[src]

type Element = Element

type Container = &'a mut [Element]

impl<'a, Element> AsMutTensor for GlweBody<&'a mut [Element]>[src]

type Element = Element

type Container = &'a mut [Element]

impl<'a, Element> AsMutTensor for GlweCiphertext<&'a mut [Element]>[src]

type Element = Element

type Container = &'a mut [Element]

impl<'a, Element> AsMutTensor for GlweList<&'a mut [Element]>[src]

type Element = Element

type Container = &'a mut [Element]

impl<'a, Element> AsMutTensor for GlweMask<&'a mut [Element]>[src]

type Element = Element

type Container = &'a mut [Element]

impl<'a, Element> AsMutTensor for GlweMaskElement<&'a mut [Element]>[src]

type Element = Element

type Container = &'a mut [Element]

impl<'a, Element> AsMutTensor for LweCiphertext<&'a mut [Element]>[src]

type Element = Element

type Container = &'a mut [Element]

impl<'a, Element> AsMutTensor for LweKeyswitchKey<&'a mut [Element]>[src]

type Element = Element

type Container = &'a mut [Element]

impl<'a, Element> AsMutTensor for LweList<&'a mut [Element]>[src]

type Element = Element

type Container = &'a mut [Element]

impl<'a, Element> AsMutTensor for LweMask<&'a mut [Element]>[src]

type Element = Element

type Container = &'a mut [Element]

impl<'a, Element> AsMutTensor for GlweSecretKey<&'a mut [Element]>[src]

type Element = Element

type Container = &'a mut [Element]

impl<'a, Element> AsMutTensor for LweSecretKey<&'a mut [Element]>[src]

type Element = Element

type Container = &'a mut [Element]

impl<'a, Element> AsMutTensor for FourierPolynomial<&'a mut [Element]>[src]

type Element = Element

type Container = &'a mut [Element]

impl<'a, Element> AsMutTensor for Monomial<&'a mut [Element]>[src]

type Element = Element

type Container = &'a mut [Element]

impl<'a, Element> AsMutTensor for Polynomial<&'a mut [Element]>[src]

type Element = Element

type Container = &'a mut [Element]

impl<'a, Element> AsMutTensor for PolynomialList<&'a mut [Element]>[src]

type Element = Element

type Container = &'a mut [Element]

impl<Cont> AsMutTensor for Tensor<Cont> where
    Cont: AsMutSlice
[src]

type Element = <Cont as AsMutSlice>::Element

type Container = Cont

impl<Element> AsMutTensor for BootstrapKey<[Element; 1]>[src]

type Element = Element

type Container = [Element; 1]

impl<Element> AsMutTensor for BootstrapKey<Vec<Element>>[src]

type Element = Element

type Container = Vec<Element>

impl<Element> AsMutTensor for BootstrapKey<AlignedVec<Element>>[src]

type Element = Element

type Container = AlignedVec<Element>

impl<Element> AsMutTensor for CleartextList<[Element; 1]>[src]

type Element = Element

type Container = [Element; 1]

impl<Element> AsMutTensor for CleartextList<Vec<Element>>[src]

type Element = Element

type Container = Vec<Element>

impl<Element> AsMutTensor for CleartextList<AlignedVec<Element>>[src]

type Element = Element

type Container = AlignedVec<Element>

impl<Element> AsMutTensor for PlaintextList<[Element; 1]>[src]

type Element = Element

type Container = [Element; 1]

impl<Element> AsMutTensor for PlaintextList<Vec<Element>>[src]

type Element = Element

type Container = Vec<Element>

impl<Element> AsMutTensor for PlaintextList<AlignedVec<Element>>[src]

type Element = Element

type Container = AlignedVec<Element>

impl<Element> AsMutTensor for GgswCiphertext<[Element; 1]>[src]

type Element = Element

type Container = [Element; 1]

impl<Element> AsMutTensor for GgswCiphertext<Vec<Element>>[src]

type Element = Element

type Container = Vec<Element>

impl<Element> AsMutTensor for GgswCiphertext<AlignedVec<Element>>[src]

type Element = Element

type Container = AlignedVec<Element>

impl<Element> AsMutTensor for GgswLevelMatrix<[Element; 1]>[src]

type Element = Element

type Container = [Element; 1]

impl<Element> AsMutTensor for GgswLevelMatrix<Vec<Element>>[src]

type Element = Element

type Container = Vec<Element>

impl<Element> AsMutTensor for GgswLevelMatrix<AlignedVec<Element>>[src]

type Element = Element

type Container = AlignedVec<Element>

impl<Element> AsMutTensor for GgswLevelRow<[Element; 1]>[src]

type Element = Element

type Container = [Element; 1]

impl<Element> AsMutTensor for GgswLevelRow<Vec<Element>>[src]

type Element = Element

type Container = Vec<Element>

impl<Element> AsMutTensor for GgswLevelRow<AlignedVec<Element>>[src]

type Element = Element

type Container = AlignedVec<Element>

impl<Element> AsMutTensor for GlweBody<[Element; 1]>[src]

type Element = Element

type Container = [Element; 1]

impl<Element> AsMutTensor for GlweBody<Vec<Element>>[src]

type Element = Element

type Container = Vec<Element>

impl<Element> AsMutTensor for GlweBody<AlignedVec<Element>>[src]

type Element = Element

type Container = AlignedVec<Element>

impl<Element> AsMutTensor for GlweCiphertext<[Element; 1]>[src]

type Element = Element

type Container = [Element; 1]

impl<Element> AsMutTensor for GlweCiphertext<Vec<Element>>[src]

type Element = Element

type Container = Vec<Element>

impl<Element> AsMutTensor for GlweCiphertext<AlignedVec<Element>>[src]

type Element = Element

type Container = AlignedVec<Element>

impl<Element> AsMutTensor for GlweList<[Element; 1]>[src]

type Element = Element

type Container = [Element; 1]

impl<Element> AsMutTensor for GlweList<Vec<Element>>[src]

type Element = Element

type Container = Vec<Element>

impl<Element> AsMutTensor for GlweList<AlignedVec<Element>>[src]

type Element = Element

type Container = AlignedVec<Element>

impl<Element> AsMutTensor for GlweMask<[Element; 1]>[src]

type Element = Element

type Container = [Element; 1]

impl<Element> AsMutTensor for GlweMask<Vec<Element>>[src]

type Element = Element

type Container = Vec<Element>

impl<Element> AsMutTensor for GlweMask<AlignedVec<Element>>[src]

type Element = Element

type Container = AlignedVec<Element>

impl<Element> AsMutTensor for GlweMaskElement<[Element; 1]>[src]

type Element = Element

type Container = [Element; 1]

impl<Element> AsMutTensor for GlweMaskElement<Vec<Element>>[src]

type Element = Element

type Container = Vec<Element>

impl<Element> AsMutTensor for GlweMaskElement<AlignedVec<Element>>[src]

type Element = Element

type Container = AlignedVec<Element>

impl<Element> AsMutTensor for LweCiphertext<[Element; 1]>[src]

type Element = Element

type Container = [Element; 1]

impl<Element> AsMutTensor for LweCiphertext<Vec<Element>>[src]

type Element = Element

type Container = Vec<Element>

impl<Element> AsMutTensor for LweCiphertext<AlignedVec<Element>>[src]

type Element = Element

type Container = AlignedVec<Element>

impl<Element> AsMutTensor for LweKeyswitchKey<[Element; 1]>[src]

type Element = Element

type Container = [Element; 1]

impl<Element> AsMutTensor for LweKeyswitchKey<Vec<Element>>[src]

type Element = Element

type Container = Vec<Element>

impl<Element> AsMutTensor for LweKeyswitchKey<AlignedVec<Element>>[src]

type Element = Element

type Container = AlignedVec<Element>

impl<Element> AsMutTensor for LweList<[Element; 1]>[src]

type Element = Element

type Container = [Element; 1]

impl<Element> AsMutTensor for LweList<Vec<Element>>[src]

type Element = Element

type Container = Vec<Element>

impl<Element> AsMutTensor for LweList<AlignedVec<Element>>[src]

type Element = Element

type Container = AlignedVec<Element>

impl<Element> AsMutTensor for LweMask<[Element; 1]>[src]

type Element = Element

type Container = [Element; 1]

impl<Element> AsMutTensor for LweMask<Vec<Element>>[src]

type Element = Element

type Container = Vec<Element>

impl<Element> AsMutTensor for LweMask<AlignedVec<Element>>[src]

type Element = Element

type Container = AlignedVec<Element>

impl<Element> AsMutTensor for GlweSecretKey<[Element; 1]>[src]

type Element = Element

type Container = [Element; 1]

impl<Element> AsMutTensor for GlweSecretKey<Vec<Element>>[src]

type Element = Element

type Container = Vec<Element>

impl<Element> AsMutTensor for GlweSecretKey<AlignedVec<Element>>[src]

type Element = Element

type Container = AlignedVec<Element>

impl<Element> AsMutTensor for LweSecretKey<[Element; 1]>[src]

type Element = Element

type Container = [Element; 1]

impl<Element> AsMutTensor for LweSecretKey<Vec<Element>>[src]

type Element = Element

type Container = Vec<Element>

impl<Element> AsMutTensor for LweSecretKey<AlignedVec<Element>>[src]

type Element = Element

type Container = AlignedVec<Element>

impl<Element> AsMutTensor for FourierPolynomial<[Element; 1]>[src]

type Element = Element

type Container = [Element; 1]

impl<Element> AsMutTensor for FourierPolynomial<Vec<Element>>[src]

type Element = Element

type Container = Vec<Element>

impl<Element> AsMutTensor for FourierPolynomial<AlignedVec<Element>>[src]

type Element = Element

type Container = AlignedVec<Element>

impl<Element> AsMutTensor for Monomial<[Element; 1]>[src]

type Element = Element

type Container = [Element; 1]

impl<Element> AsMutTensor for Monomial<Vec<Element>>[src]

type Element = Element

type Container = Vec<Element>

impl<Element> AsMutTensor for Monomial<AlignedVec<Element>>[src]

type Element = Element

type Container = AlignedVec<Element>

impl<Element> AsMutTensor for Polynomial<[Element; 1]>[src]

type Element = Element

type Container = [Element; 1]

impl<Element> AsMutTensor for Polynomial<Vec<Element>>[src]

type Element = Element

type Container = Vec<Element>

impl<Element> AsMutTensor for Polynomial<AlignedVec<Element>>[src]

type Element = Element

type Container = AlignedVec<Element>

impl<Element> AsMutTensor for PolynomialList<[Element; 1]>[src]

type Element = Element

type Container = [Element; 1]

impl<Element> AsMutTensor for PolynomialList<Vec<Element>>[src]

type Element = Element

type Container = Vec<Element>

impl<Element> AsMutTensor for PolynomialList<AlignedVec<Element>>[src]

type Element = Element

type Container = AlignedVec<Element>

Loading content...