#![cfg_attr(not(feature = "std"), no_std)]
#![cfg_attr(docsrs, feature(doc_cfg))]
#[cfg(feature = "alloc")]
extern crate alloc;
pub(crate) mod crate_utils;
use crate::crate_utils::need_std;
pub mod base;
pub mod conversion;
pub mod fields;
pub mod measurement;
pub mod currents;
pub mod magnets;
pub mod sensors;
need_std!(
pub mod collections;
#[cfg(any(test, feature = "test-utils"))]
pub mod testing_util;
);
pub mod prelude {
use super::*;
pub use base::{Float, Observer, SensorOutput, Source, Transform};
pub use currents::{CircularCurrent, Current};
pub use magnets::{
CuboidMagnet, CylinderMagnet, Dipole, Magnet, SphereMagnet, TetrahedronMagnet,
TriangleMagnet,
};
pub use sensors::{Sensor, hall_effect};
need_std!(
pub use collections::{
SourceComponent, SourceAssembly, ObserverComponent, ObserverAssembly, SourceArray,
ObserverArray,
};
);
#[cfg(feature = "mesh")]
pub use magnets::MeshMagnet;
}