#![cfg_attr(not(feature = "std"), no_std)]
#![warn(missing_docs)]
#![cfg_attr(docsrs, feature(doc_cfg))]
#[macro_use]
extern crate derive_new;
extern crate alloc;
use ruda_core::tensor::data;
pub use data::*;
pub use ruda_core::tensor::distribution;
pub use distribution::*;
pub use ruda_core::tensor::element;
pub use ruda_core::make_element;
pub use element::*;
pub mod device;
pub mod primitive;
pub mod ops;
#[cfg(feature = "distributed")]
pub mod distributed;
pub mod backend;
pub use backend::*;
pub mod tensor;
#[cfg(feature = "graph")]
pub mod graph;
pub use ruda_core::reader::*; pub use ruda_core::bytes::{AllocationProperty, Bytes};
pub use ruda_core::device_handle::DeviceHandle;
pub use ruda_core::stream_id::StreamId;
pub use ruda_core::tensor::{BoolDType, BoolStore, DType, FloatDType, IntDType};
pub use half::{bf16, f16};
pub mod shape {
pub use ruda_core::tensor::shape::*;
}
pub use shape::*;
pub mod slice {
pub use ruda_core::tensor::{s, slice::*};
}
pub use slice::*;
pub mod indexing {
pub use ruda_core::tensor::indexing::*;
}
pub use indexing::*;
pub mod quantization {
pub use crate::tensor::quantization::*;
pub use ruda_core::tensor::quantization::{
BlockSize, QuantLevel, QuantMode, QuantParam, QuantPropagation, QuantScheme, QuantStore,
QuantValue, QuantizedBytes,
};
}
#[macro_export]
macro_rules! doc_tensor {
() => {
"[`Tensor`](crate::api::Tensor)"
};
($method:literal) => {
concat!(
"[`Tensor::",
$method,
"`](crate::api::Tensor::",
$method,
")"
)
};
}
#[cfg(feature = "api")]
pub mod api;