devela/lang/
mod.rs

1// devela::lang
2//
3//! Language functionality, <abbr title = "Domain Specific Language">DSL</abbr>s
4//! and <abbr title = "Foreign Function Interface">FFI</abbr>s.
5#![doc = crate::doc_!(modules: crate; lang: c, glsl, js)]
6#![doc = crate::doc_!(newline)]
7//!
8#![doc = crate::doc_!(extends: ffi)]
9//
10// safety
11#![cfg_attr(feature = "safe_lang", forbid(unsafe_code))]
12
13pub mod c;
14
15#[cfg(feature = "glsl")]
16#[cfg_attr(feature = "nightly_doc", doc(cfg(feature = "glsl")))]
17pub mod glsl;
18#[cfg(feature = "js")]
19#[cfg_attr(feature = "nightly_doc", doc(cfg(feature = "js")))]
20pub mod js;
21
22crate::items! { // structural access:: _mods, _all, _always
23    #[allow(unused)] #[doc(hidden, no_inline)]
24    pub use {_always::*, _pub_mods::*};
25
26    mod _pub_mods { #![allow(unused)]
27        pub use super::c::_all::*;
28        #[cfg(feature = "glsl")]
29        pub use super::glsl::_all::*;
30        #[cfg(feature = "js")]
31        pub use super::js::_all::*;
32        // WIPZONE:
33        // pub use super::aos::_all::*;
34        // pub use super::awk::_all::*;
35        // pub use super::py::_all::*;
36        // pub use super::script::_all::*;
37        // pub use super::tg::_all::*;
38        // pub use super::wasm::_all::*;
39    }
40    pub(super) mod _all {
41        #[doc(inline)]
42        pub use super::_pub_mods::*;
43    }
44    pub(super) mod _always { #![allow(unused)]
45    }
46}
47// WIPZONE
48// pub mod aos; // android
49// pub mod awk;
50// pub mod py;
51// pub mod script;
52// pub mod tg;
53// pub mod wasm;