Skip to main content

sim_lib_numbers_tensor/
lib.rs

1#![forbid(unsafe_code)]
2#![allow(deprecated)]
3#![deny(missing_docs)]
4
5//! The n-dimensional tensor number domain: the uniform `Tensor` value, its
6//! domain registration and constructors (`tensor`, `vec`, `mat`, ...), and the
7//! `SpecTensor` interface that specialized element-type backends plug into.
8
9mod implementation;
10mod spec;
11
12pub use implementation::{
13    Tensor, TensorNumbersLib, build_scalar_tensor_value, build_tensor_value,
14    flatten_tensor_scalar_cells, number_domain, tensor_dtype, tensor_value_class_symbol,
15    tensor_value_ref,
16};
17pub use sim_lib_numbers_core::domains;
18pub use spec::{
19    SpecTensor, SpecTensorDescriptor, checked_element_count, element_count,
20    number_literal_for_tensor_cell, parse_complex_literal_cell, parse_f64_literal_cell,
21    parse_i64_literal_cell, parse_rational_literal_cell, spec_tensor_descriptor_value,
22    spec_tensor_symbol,
23};
24
25#[cfg(test)]
26mod tests;