1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
#[macro_use]
extern crate lazy_static;
#[macro_use]
extern crate pest_derive;

#[macro_use]
pub mod log;
pub mod app;
pub mod assets;
pub mod error;
pub mod fetch;
pub mod prefab;
pub mod state;
#[macro_use]
pub mod localization;
pub mod ecs;
pub mod jobs;
pub mod scripting;
pub mod storage;
pub mod utils;

#[cfg(test)]
mod tests;

pub mod id {
    pub use typid::*;
}

#[allow(ambiguous_glob_reexports)]
pub mod prelude {
    pub use crate::{
        app::*,
        assets::{
            asset::*,
            asset_pack_preloader::*,
            assets_preloader::*,
            database::*,
            protocol::*,
            protocols::{
                binary::*, json::*, localization::*, meta::*, pack::*, prefab::*, text::*, *,
            },
            system::*,
            *,
        },
        ecs::{
            commands::*,
            components::*,
            hierarchy::*,
            life_cycle::*,
            pipeline::{
                engines::{closure::*, default::*, jobs::*, sequence::*, *},
                *,
            },
            *,
        },
        fetch::{
            engines::{map::*, *},
            *,
        },
        id::*,
        jobs::*,
        localization::*,
        log::*,
        prefab::*,
        scripting::*,
        state::*,
        storage::{
            engines::{map::*, *},
            *,
        },
        utils::*,
        Scalar, *,
    };
    #[cfg(not(feature = "web"))]
    pub use crate::{fetch::engines::fs::*, storage::engines::fs::*};
}

#[cfg(feature = "scalar64")]
pub type Scalar = f64;
#[cfg(not(feature = "scalar64"))]
pub type Scalar = f32;

pub use hecs::Bundle;