Skip to main content

enki/
lib.rs

1pub mod enki_api;
2
3// Core Execution Context
4pub use enki_api::context::{
5    Enki, EnkiBuilder, Flow, GpuInstant, active_engine, active_enki, set_active_enki,
6};
7
8// Spatial Domain & Topology
9pub use enki_api::space::{IntoTile, Space, TileConfig};
10
11// GPU Resources & Memory Types
12pub use enki_api::resources::{
13    GpuAtomic, GpuAtomicTarget, GpuAtomicVec, GpuParam, GpuTileMem, GpuVec, Slice, SliceMut,
14};
15
16// Safe Nam Execution Traits & Ingress Reflection
17pub use enki_api::type_safety::*;
18
19// Re-export contract types directly at root for macros
20pub use anu::nam_args_api::{ExpectedParamKind, NamParamMeta, NamSignatureContract};
21
22// Procedural Macro for GPU Nam Functions
23pub use enki_macros::nam;
24
25/// Convenient re-exports of common Enki types and traits.
26pub mod prelude {
27    pub use super::enki_api::context::{
28        Enki, EnkiBuilder, Flow, GpuInstant, active_engine, active_enki, set_active_enki,
29    };
30    pub use super::enki_api::resources::{
31        GpuAtomic, GpuAtomicTarget, GpuAtomicVec, GpuParam, GpuTileMem, GpuVec, Slice, SliceMut,
32    };
33    pub use super::enki_api::space::{IntoTile, Space, TileConfig};
34    pub use super::enki_api::type_safety::*;
35    pub use super::gpu_vec;
36    pub use super::nam;
37    pub use super::{ExpectedParamKind, NamParamMeta, NamSignatureContract};
38}