deep_causality_tensor 0.2.2

Tensor data structure for for deep_causality crate.
Documentation
[package]
name = "deep_causality_tensor"
version = "0.2.2"
edition.workspace = true
rust-version.workspace = true
license.workspace = true

repository = "https://github.com/deepcausality/deep_causality.rs"
authors = ["Marvin Hansen <marvin.hansen@gmail.com>"]
description = "Tensor data structure for for deep_causality crate."
documentation = "https://docs.rs/deep_causality"
categories = ["data-structures", "science"]
keywords = ["data-structures", "tensor"]
# Exclude all bazel files as these conflict with Bazel workspace when vendored.
exclude = [
    "*.bazel",
    "*/*.bazel",
    "*.bazel.*",
    "BUILD",
    "BUILD.bazel",
    "MODULE.bazel",
    ".bazelignore",
    ".bazelrc",
    "tests/**/*",
]

[features]
default = []
# future feature; cuda support will be added later.
cuda = []
# MLX acceleration for Apple Silicon (M Series).
# Enables GPU-accelerated tensor operations via mlx-rs.
# Note: Only builds on macOS aarch64. f64 tensors are downcast to f32 for MLX based GPU execution.
mlx = ["dep:mlx-rs"]
# CPU parallelism via rayon for multi-threaded tensor operations.
parallel = ["dep:rayon"]

# MLX dependency - only available on macOS aarch64
[target.'cfg(all(target_os = "macos", target_arch = "aarch64"))'.dependencies]
mlx-rs = { version = "0.25.3", features = ["metal"], optional = true }

[dependencies]
rayon = { version = "1.11", optional = true }

[dependencies.deep_causality_ast]
path = "../deep_causality_ast"
version = "0.1"

[dependencies.deep_causality_haft]
path = "../deep_causality_haft"
version = "0.2"

[dependencies.deep_causality_num]
path = "../deep_causality_num"
version = "0.1.11"

[dev-dependencies]
criterion = { version = "0.8.1" }
deep_causality_rand = { path = "../deep_causality_rand" }

[[example]]
name = "applicative_causal_tensor"
path = "examples/applicative_causal_tensor.rs"

[[example]]
name = "causal_tensor"
path = "examples/basic_causal_tensor.rs"

[[example]]
name = "effect_system_causal_tensor"
path = "examples/effect_system_causal_tensor.rs"

[[example]]
name = "ein_sum_causal_tensor"
path = "examples/ein_sum_causal_tensor.rs"

[[example]]
name = "einstein_field_causal_tensor"
path = "examples/einstein_field_causal_tensor.rs"

[[example]]
name = "functor_causal_tensor"
path = "examples/functor_causal_tensor.rs"

[[bench]]
name = "bench_causal_tensor"
harness = false