redstone_ml/tensor/
mod.rs

1//! # Multidimensional Tensors with Dynamic Automatic Differentiation
2//!
3
4pub mod methods;
5pub mod ops;
6pub mod constructors;
7pub mod equals;
8pub mod autograd;
9pub mod print;
10pub mod matrix_ops;
11pub mod reshape;
12
13use std::marker::PhantomData;
14use std::rc::Rc;
15use crate::gradient_function::GradientFunction;
16use crate::ndarray::flags::NdArrayFlags;
17use crate::{NdArray, TensorDataType};
18
19pub struct Tensor<'a, T: TensorDataType> {
20    array: Rc<NdArray<'static, T>>,
21
22    pub(super) flags: NdArrayFlags,
23    pub(super) grad_fn: GradientFunction<T>,
24
25    _marker: PhantomData<&'a T>,
26}