pub trait TensorBoolean<O> {
    type Combine: TensorInstance;
    type LeftCombine: TensorInstance;

    // Required methods
    fn and(self, other: O) -> TCResult<Self::LeftCombine>;
    fn or(self, other: O) -> TCResult<Self::Combine>;
    fn xor(self, other: O) -> TCResult<Self::Combine>;
}
Expand description

Tensor boolean operations.

Required Associated Types§

source

type Combine: TensorInstance

The result type of a boolean operation.

source

type LeftCombine: TensorInstance

The result type of a boolean operation which may ignore right-hand values.

Required Methods§

source

fn and(self, other: O) -> TCResult<Self::LeftCombine>

Logical and

source

fn or(self, other: O) -> TCResult<Self::Combine>

Logical or

source

fn xor(self, other: O) -> TCResult<Self::Combine>

Logical xor

Implementors§

source§

impl<Txn, FE> TensorBoolean<DenseView<Txn, FE>> for DenseView<Txn, FE>
where Txn: Transaction<FE>, FE: DenseCacheFile + AsType<Node> + Clone,

§

type Combine = DenseView<Txn, FE>

§

type LeftCombine = DenseView<Txn, FE>

source§

impl<Txn, FE> TensorBoolean<Tensor<Txn, FE>> for Tensor<Txn, FE>
where Txn: Transaction<FE>, FE: DenseCacheFile + AsType<Node> + Clone,

§

type Combine = Tensor<Txn, FE>

§

type LeftCombine = Tensor<Txn, FE>

source§

impl<Txn, FE> TensorBoolean<SparseView<Txn, FE>> for SparseView<Txn, FE>
where Txn: Transaction<FE>, FE: DenseCacheFile + AsType<Node>,

§

type Combine = SparseView<Txn, FE>

§

type LeftCombine = SparseView<Txn, FE>

source§

impl<Txn, FE, L, R> TensorBoolean<SparseTensor<Txn, FE, R>> for SparseTensor<Txn, FE, L>
where Txn: Transaction<FE>, FE: AsType<Node> + ThreadSafe, L: SparseInstance + Into<SparseAccess<Txn, FE, L::DType>>, R: SparseInstance<DType = L::DType> + Into<SparseAccess<Txn, FE, R::DType>>, Number: From<L::DType> + From<R::DType>, SparseAccessCast<Txn, FE>: From<SparseAccess<Txn, FE, L::DType>>,

§

type Combine = SparseTensor<Txn, FE, SparseCompare<Txn, FE, u8>>

§

type LeftCombine = SparseTensor<Txn, FE, SparseCompareLeft<Txn, FE, u8>>

source§

impl<Txn, FE, L, R, T> TensorBoolean<DenseTensor<Txn, FE, R>> for DenseTensor<Txn, FE, L>
where Txn: Transaction<FE>, FE: DenseCacheFile + AsType<Buffer<T>> + AsType<Node>, L: DenseInstance<DType = T> + Into<DenseAccess<Txn, FE, T>> + Debug, R: DenseInstance<DType = T> + Into<DenseAccess<Txn, FE, T>> + Debug, T: CType + DType + Debug, DenseAccessCast<Txn, FE>: From<DenseAccess<Txn, FE, T>>, DenseTensor<Txn, FE, R>: Debug, Buffer<T>: FromStream<Context = ()>, Number: From<T> + CastInto<T>, Self: Debug,

§

type Combine = DenseTensor<Txn, FE, DenseCompare<Txn, FE, u8>>

§

type LeftCombine = DenseTensor<Txn, FE, DenseCompare<Txn, FE, u8>>