1#[cfg(feature = "tensor")]
36pub mod traits;
37
38#[cfg(feature = "tensor")]
39pub mod dense;
40
41#[cfg(feature = "tensor")]
42pub mod sparse;
43
44#[cfg(feature = "tensor")]
45pub mod ops;
46
47#[cfg(feature = "tensor")]
48pub mod error;
49
50#[cfg(feature = "tensor")]
51pub mod types;
52
53#[cfg(feature = "tensor")]
54pub mod backend;
55
56#[cfg(feature = "tensor-pool")]
57pub mod pool;
58
59#[cfg(feature = "tensor-gnn")]
60pub mod gnn;
61
62#[cfg(feature = "tensor")]
63pub mod graph_tensor;
64
65#[cfg(feature = "tensor")]
66pub mod differentiable;
67
68#[cfg(feature = "tensor")]
69pub mod decomposition;
70
71#[cfg(feature = "tensor")]
72pub mod unified_graph;
73
74#[cfg(feature = "tensor")]
76pub use traits::{COOView, DType, Device, SparseTensorOps, TensorBase, TensorOps};
77
78#[cfg(feature = "tensor")]
79pub use dense::DenseTensor;
80
81#[cfg(feature = "tensor")]
82pub use sparse::{COOTensor, CSRTensor, SparseTensor};
83
84#[cfg(feature = "tensor")]
85pub use error::TensorError;
86
87#[cfg(feature = "tensor")]
88pub use types::{EdgeFeatures, NodeFeatures, TensorEdge, TensorNode};
89
90#[cfg(feature = "tensor")]
91pub use types::AdjacencyMatrix;
92
93#[cfg(feature = "tensor")]
94pub use types::DegreeMatrix;
95
96#[cfg(feature = "tensor")]
97pub use backend::{NdArrayStorage, TensorStorage, UnifiedStorage};
98
99#[cfg(feature = "tensor-pool")]
100pub use pool::{ArenaStats, ArenaTensor, PoolConfig, PoolStats, PooledTensor, TensorArena, TensorPool};
101
102#[cfg(feature = "tensor-autograd")]
103pub use pool::GradientCheckpoint;
104
105#[cfg(feature = "tensor-gnn")]
106pub use gnn::{
107 Aggregator, GATConv, GCNConv, GraphSAGE, IdentityMessage, LinearMessage, MaxAggregator,
108 MeanAggregator, MessageFunction, MessagePassingLayer, SumAggregator, UpdateFunction,
109};
110
111#[cfg(feature = "tensor")]
112pub use graph_tensor::{
113 GraphFeatureExtractor, GraphReconstructor,
114};
115
116#[cfg(feature = "tensor")]
117pub use graph_tensor::{
118 GraphAdjacencyMatrix, GraphBatch, GraphTensorExt,
119};
120
121#[cfg(feature = "tensor")]
122pub use differentiable::{
123 DifferentiableEdge, DifferentiableGraph, DifferentiableNode, EdgeEditOp, EdgeEditPolicy,
124 EditOperation, GradientConfig, GradientRecorder, GraphTransformer, GumbelSoftmaxSampler,
125 NodeEditOp, StructureEdit, ThresholdEditPolicy,
126};
127
128#[cfg(feature = "tensor")]
129pub use unified_graph::{EdgeData, NodeData, UnifiedConfig, UnifiedGraph};
130
131#[cfg(feature = "tensor")]
132pub use decomposition::{
133 lie_algebra::{lie_exponential, lie_logarithm, skew_symmetric_projection},
134 qr::{orthogonalize, qr_decompose},
135 svd::{low_rank_approx, svd_decompose},
136 tensor_ring::{compress_tensor_ring, tensor_ring_decompose, TensorRing},
137};