bevy_app/
lib.rs

1// `rustdoc_internals` is needed for `#[doc(fake_variadics)]`
2#![allow(internal_features)]
3#![cfg_attr(any(docsrs, docsrs_dep), feature(doc_auto_cfg, rustdoc_internals))]
4#![forbid(unsafe_code)]
5#![doc(
6    html_logo_url = "https://bevyengine.org/assets/icon.png",
7    html_favicon_url = "https://bevyengine.org/assets/icon.png"
8)]
9
10//! This crate is about everything concerning the highest-level, application layer of a Bevy app.
11
12extern crate alloc;
13
14mod app;
15mod main_schedule;
16mod panic_handler;
17mod plugin;
18mod plugin_group;
19mod schedule_runner;
20mod sub_app;
21#[cfg(not(target_arch = "wasm32"))]
22mod terminal_ctrl_c_handler;
23
24pub use app::*;
25pub use main_schedule::*;
26pub use panic_handler::*;
27pub use plugin::*;
28pub use plugin_group::*;
29pub use schedule_runner::*;
30pub use sub_app::*;
31#[cfg(not(target_arch = "wasm32"))]
32pub use terminal_ctrl_c_handler::*;
33
34/// The app prelude.
35///
36/// This includes the most common types in this crate, re-exported for your convenience.
37pub mod prelude {
38    #[doc(hidden)]
39    pub use crate::{
40        app::{App, AppExit},
41        main_schedule::{
42            First, FixedFirst, FixedLast, FixedPostUpdate, FixedPreUpdate, FixedUpdate, Last, Main,
43            PostStartup, PostUpdate, PreStartup, PreUpdate, RunFixedMainLoop,
44            RunFixedMainLoopSystem, SpawnScene, Startup, Update,
45        },
46        sub_app::SubApp,
47        Plugin, PluginGroup,
48    };
49}