1#![cfg_attr(
2 any(docsrs, docsrs_dep),
3 expect(
4 internal_features,
5 reason = "rustdoc_internals is needed for fake_variadic"
6 )
7)]
8#![cfg_attr(any(docsrs, docsrs_dep), feature(rustdoc_internals))]
9#![cfg_attr(docsrs, feature(doc_cfg))]
10#![forbid(unsafe_code)]
11#![doc(
12 html_logo_url = "https://bevy.org/assets/icon.png",
13 html_favicon_url = "https://bevy.org/assets/icon.png"
14)]
15#![no_std]
16
17#[cfg(feature = "std")]
20extern crate std;
21
22extern crate alloc;
23
24extern crate self as bevy_app;
26
27mod app;
28mod hierarchy;
29mod main_schedule;
30mod panic_handler;
31mod plugin;
32mod plugin_group;
33mod propagate;
34mod schedule_runner;
35mod sub_app;
36mod task_pool_plugin;
37#[cfg(all(any(all(unix, not(target_os = "horizon")), windows), feature = "std"))]
38mod terminal_ctrl_c_handler;
39
40#[cfg(feature = "hotpatching")]
41pub mod hotpatch;
42
43pub use app::*;
44pub use hierarchy::*;
45pub use main_schedule::*;
46pub use panic_handler::*;
47pub use plugin::*;
48pub use plugin_group::*;
49pub use propagate::*;
50pub use schedule_runner::*;
51pub use sub_app::*;
52pub use task_pool_plugin::*;
53#[cfg(all(any(all(unix, not(target_os = "horizon")), windows), feature = "std"))]
54pub use terminal_ctrl_c_handler::*;
55
56pub mod prelude {
60 #[doc(hidden)]
61 pub use crate::{
62 app::{App, AppExit},
63 main_schedule::{
64 First, FixedFirst, FixedLast, FixedPostUpdate, FixedPreUpdate, FixedUpdate, Last, Main,
65 PostStartup, PostUpdate, PreStartup, PreUpdate, RunFixedMainLoop,
66 RunFixedMainLoopSystems, SpawnScene, Startup, Update,
67 },
68 sub_app::SubApp,
69 Plugin, PluginGroup, TaskPoolOptions, TaskPoolPlugin,
70 };
71}