concision_data/
lib.rs

1/*
2    Appellation: concision-data <library>
3    Contrib: @FL03
4*/
5//! This crate works to augment the training process by providing datasets and loaders for
6//! common data formats.
7#![allow(
8    clippy::missing_safety_doc,
9    clippy::module_inception,
10    clippy::needless_doctest_main,
11    clippy::upper_case_acronyms
12)]
13#![cfg_attr(not(feature = "std"), no_std)]
14#![cfg_attr(all(feature = "nightly", feature = "alloc"), feature(allocator_api))]
15#![cfg_attr(all(feature = "nightly", feature = "autodiff"), feature(autodiff))]
16#![crate_type = "lib"]
17// compile-time checks
18#[cfg(not(any(feature = "std", feature = "alloc")))]
19compiler_error! { "Either the \"std\" feature or the \"alloc\" feature must be enabled." }
20// external crates
21#[cfg(feature = "alloc")]
22extern crate alloc;
23// macros
24#[macro_use]
25pub(crate) mod macros {
26    #[macro_use]
27    pub mod seal;
28}
29// modules
30pub mod dataset;
31pub mod error;
32#[cfg(feature = "loader")]
33pub mod loader;
34pub mod trainer;
35
36pub mod traits {
37    //! Additional traits and interfaces for working with datasets and data loaders.
38    #[doc(inline)]
39    pub use self::{convert::*, records::*};
40
41    mod convert;
42    mod records;
43}
44// re-exports
45#[doc(inline)]
46#[cfg(feature = "loader")]
47pub use self::loader::*;
48#[doc(inline)]
49pub use self::{dataset::DatasetBase, error::*, trainer::*, traits::*};
50// prelude
51pub mod prelude {
52    #[doc(no_inline)]
53    pub use crate::dataset::*;
54    #[cfg(feature = "loader")]
55    #[doc(no_inline)]
56    pub use crate::loader::prelude::*;
57    #[doc(no_inline)]
58    pub use crate::traits::*;
59}