ecs: simplify imports
This commit is contained in:
parent
f742ce3ef2
commit
9f26a453c6
@ -12,15 +12,19 @@ pub use handle::*;
|
|||||||
pub use load_request::*;
|
pub use load_request::*;
|
||||||
pub use loader::*;
|
pub use loader::*;
|
||||||
|
|
||||||
use bevy_app::{prelude::AppPlugin, AppBuilder};
|
|
||||||
use bevy_ecs::IntoQuerySystem;
|
|
||||||
use bevy_type_registry::RegisterType;
|
|
||||||
|
|
||||||
pub mod stage {
|
pub mod stage {
|
||||||
pub const LOAD_ASSETS: &str = "load_assets";
|
pub const LOAD_ASSETS: &str = "load_assets";
|
||||||
pub const ASSET_EVENTS: &str = "asset_events";
|
pub const ASSET_EVENTS: &str = "asset_events";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub mod prelude {
|
||||||
|
pub use crate::{AddAsset, AssetEvent, AssetServer, Assets, Handle};
|
||||||
|
}
|
||||||
|
|
||||||
|
use bevy_app::{prelude::AppPlugin, AppBuilder};
|
||||||
|
use bevy_ecs::IntoQuerySystem;
|
||||||
|
use bevy_type_registry::RegisterType;
|
||||||
|
|
||||||
#[derive(Default)]
|
#[derive(Default)]
|
||||||
pub struct AssetPlugin;
|
pub struct AssetPlugin;
|
||||||
|
|
||||||
|
@ -4,6 +4,11 @@ mod audio_source;
|
|||||||
pub use audio_output::*;
|
pub use audio_output::*;
|
||||||
pub use audio_source::*;
|
pub use audio_source::*;
|
||||||
|
|
||||||
|
pub mod prelude {
|
||||||
|
pub use crate::{AudioOutput, AudioSource};
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
use bevy_app::prelude::*;
|
use bevy_app::prelude::*;
|
||||||
use bevy_asset::AddAsset;
|
use bevy_asset::AddAsset;
|
||||||
use bevy_ecs::IntoQuerySystem;
|
use bevy_ecs::IntoQuerySystem;
|
||||||
|
@ -6,8 +6,12 @@ pub use bytes::*;
|
|||||||
pub use float_ord::*;
|
pub use float_ord::*;
|
||||||
pub use time::*;
|
pub use time::*;
|
||||||
|
|
||||||
|
pub mod prelude {
|
||||||
|
pub use crate::{Time, Timer};
|
||||||
|
}
|
||||||
|
|
||||||
use bevy_app::prelude::*;
|
use bevy_app::prelude::*;
|
||||||
use bevy_ecs::IntoQuerySystem;
|
use bevy_ecs::prelude::*;
|
||||||
use bevy_math::{Mat3, Mat4, Quat, Vec2, Vec3};
|
use bevy_math::{Mat3, Mat4, Quat, Vec2, Vec3};
|
||||||
use bevy_type_registry::RegisterType;
|
use bevy_type_registry::RegisterType;
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
use crate::time::Time;
|
use crate::time::Time;
|
||||||
use bevy_ecs::{Query, Res};
|
use bevy_ecs::prelude::*;
|
||||||
use bevy_property::Properties;
|
use bevy_property::Properties;
|
||||||
use std::time::Duration;
|
use std::time::Duration;
|
||||||
|
|
||||||
|
@ -1,21 +1,21 @@
|
|||||||
pub use hecs::{Query as HecsQuery, *};
|
pub use hecs::{Query as HecsQuery, *};
|
||||||
|
mod resource;
|
||||||
mod commands;
|
|
||||||
mod into_system;
|
|
||||||
mod parallel_executor;
|
|
||||||
#[cfg(feature = "profiler")]
|
|
||||||
pub mod profiler;
|
|
||||||
mod resource_query;
|
|
||||||
mod resources;
|
|
||||||
mod schedule;
|
mod schedule;
|
||||||
mod system;
|
mod system;
|
||||||
mod world_builder;
|
mod world_builder;
|
||||||
|
|
||||||
pub use commands::{Commands, CommandsInternal};
|
pub use resource::*;
|
||||||
pub use into_system::{IntoForEachSystem, IntoQuerySystem, IntoThreadLocalSystem, Query};
|
pub use schedule::*;
|
||||||
pub use parallel_executor::ParallelExecutor;
|
pub use system::{*, Query};
|
||||||
pub use resource_query::{FetchResource, Local, Res, ResMut, ResourceQuery, UnsafeClone};
|
pub use world_builder::*;
|
||||||
pub use resources::{FromResources, Resource, Resources};
|
|
||||||
pub use schedule::Schedule;
|
pub mod prelude {
|
||||||
pub use system::{ArchetypeAccess, System, SystemId, TypeAccess};
|
pub use crate::{
|
||||||
pub use world_builder::{WorldBuilder, WorldBuilderSource};
|
resource::{FromResources, Local, Res, ResMut, Resource, Resources},
|
||||||
|
system::{
|
||||||
|
Commands, IntoForEachSystem, IntoQuerySystem, IntoThreadLocalSystem, Query, System,
|
||||||
|
},
|
||||||
|
world_builder::WorldBuilderSource,
|
||||||
|
Bundle, Component, Entity, Ref, RefMut, With, Without, World,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
5
crates/bevy_ecs/src/resource/mod.rs
Normal file
5
crates/bevy_ecs/src/resource/mod.rs
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
mod resource_query;
|
||||||
|
mod resources;
|
||||||
|
|
||||||
|
pub use resource_query::*;
|
||||||
|
pub use resources::*;
|
@ -1,15 +1,14 @@
|
|||||||
use crate::{
|
use crate::{
|
||||||
resources::FromResources,
|
|
||||||
system::{SystemId, TypeAccess},
|
system::{SystemId, TypeAccess},
|
||||||
Archetype, Component, Resources,
|
|
||||||
};
|
};
|
||||||
use core::{
|
use core::{
|
||||||
any::TypeId,
|
any::TypeId,
|
||||||
ops::{Deref, DerefMut},
|
ops::{Deref, DerefMut},
|
||||||
ptr::NonNull,
|
ptr::NonNull,
|
||||||
};
|
};
|
||||||
use hecs::{smaller_tuples_too, MissingComponent};
|
use hecs::{smaller_tuples_too, MissingComponent, Component, Archetype};
|
||||||
use std::collections::HashMap;
|
use std::collections::HashMap;
|
||||||
|
use super::{Resources, FromResources};
|
||||||
/// Shared borrow of an entity's component
|
/// Shared borrow of an entity's component
|
||||||
pub struct Res<'a, T: Component> {
|
pub struct Res<'a, T: Component> {
|
||||||
archetype: &'a Archetype,
|
archetype: &'a Archetype,
|
@ -1,10 +1,7 @@
|
|||||||
use crate::{
|
use super::{FetchResource, Res, ResMut, ResourceQuery};
|
||||||
resource_query::{FetchResource, ResourceQuery},
|
use crate::system::SystemId;
|
||||||
system::SystemId,
|
|
||||||
ComponentError, Res, ResMut, TypeInfo,
|
|
||||||
};
|
|
||||||
use core::any::TypeId;
|
use core::any::TypeId;
|
||||||
use hecs::{Archetype, Ref, RefMut};
|
use hecs::{Archetype, ComponentError, Ref, RefMut, TypeInfo};
|
||||||
use std::collections::HashMap;
|
use std::collections::HashMap;
|
||||||
|
|
||||||
pub trait Resource: Send + Sync + 'static {}
|
pub trait Resource: Send + Sync + 'static {}
|
||||||
@ -173,7 +170,8 @@ where
|
|||||||
|
|
||||||
#[cfg(test)]
|
#[cfg(test)]
|
||||||
mod tests {
|
mod tests {
|
||||||
use crate::{system::SystemId, Resources};
|
use super::Resources;
|
||||||
|
use crate::system::SystemId;
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn resource() {
|
fn resource() {
|
5
crates/bevy_ecs/src/schedule/mod.rs
Normal file
5
crates/bevy_ecs/src/schedule/mod.rs
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
mod parallel_executor;
|
||||||
|
mod schedule;
|
||||||
|
|
||||||
|
pub use parallel_executor::*;
|
||||||
|
pub use schedule::*;
|
@ -1,6 +1,7 @@
|
|||||||
|
use super::Schedule;
|
||||||
use crate::{
|
use crate::{
|
||||||
system::{ArchetypeAccess, ThreadLocalExecution},
|
resource::Resources,
|
||||||
Resources, Schedule, System, TypeAccess,
|
system::{ArchetypeAccess, System, ThreadLocalExecution, TypeAccess},
|
||||||
};
|
};
|
||||||
use crossbeam_channel::{Receiver, Sender};
|
use crossbeam_channel::{Receiver, Sender};
|
||||||
use fixedbitset::FixedBitSet;
|
use fixedbitset::FixedBitSet;
|
||||||
@ -328,9 +329,12 @@ impl ExecutorStage {
|
|||||||
mod tests {
|
mod tests {
|
||||||
use super::ParallelExecutor;
|
use super::ParallelExecutor;
|
||||||
use crate::{
|
use crate::{
|
||||||
IntoQuerySystem, IntoThreadLocalSystem, Query, Res, ResMut, Resources, Schedule, World,
|
resource::{Res, ResMut, Resources},
|
||||||
|
schedule::Schedule,
|
||||||
|
system::{IntoQuerySystem, IntoThreadLocalSystem, Query},
|
||||||
};
|
};
|
||||||
use fixedbitset::FixedBitSet;
|
use fixedbitset::FixedBitSet;
|
||||||
|
use hecs::World;
|
||||||
use std::sync::{Arc, Mutex};
|
use std::sync::{Arc, Mutex};
|
||||||
|
|
||||||
#[derive(Default)]
|
#[derive(Default)]
|
@ -1,12 +1,12 @@
|
|||||||
use crate::{
|
use crate::{
|
||||||
system::{System, ThreadLocalExecution},
|
system::{System, ThreadLocalExecution, SystemId}, resource::Resources,
|
||||||
Resources, SystemId, World,
|
|
||||||
};
|
};
|
||||||
use std::{
|
use std::{
|
||||||
borrow::Cow,
|
borrow::Cow,
|
||||||
collections::{HashMap, HashSet},
|
collections::{HashMap, HashSet},
|
||||||
sync::{Arc, Mutex},
|
sync::{Arc, Mutex},
|
||||||
};
|
};
|
||||||
|
use hecs::World;
|
||||||
|
|
||||||
#[derive(Default)]
|
#[derive(Default)]
|
||||||
pub struct Schedule {
|
pub struct Schedule {
|
@ -1,5 +1,6 @@
|
|||||||
use crate::{DynamicBundle, Resource, Resources, SystemId, World};
|
use super::SystemId;
|
||||||
use hecs::{Bundle, Component, Entity};
|
use crate::resource::{Resource, Resources};
|
||||||
|
use hecs::{Bundle, Component, DynamicBundle, Entity, World};
|
||||||
use std::sync::{Arc, Mutex};
|
use std::sync::{Arc, Mutex};
|
||||||
|
|
||||||
pub enum Command {
|
pub enum Command {
|
||||||
@ -311,7 +312,9 @@ impl Commands {
|
|||||||
|
|
||||||
#[cfg(test)]
|
#[cfg(test)]
|
||||||
mod tests {
|
mod tests {
|
||||||
use crate::{Commands, Resources, World};
|
use super::Commands;
|
||||||
|
use crate::resource::Resources;
|
||||||
|
use hecs::World;
|
||||||
|
|
||||||
#[test]
|
#[test]
|
||||||
fn command_buffer() {
|
fn command_buffer() {
|
@ -1,7 +1,7 @@
|
|||||||
|
use super::TypeAccess;
|
||||||
use crate::{
|
use crate::{
|
||||||
resource_query::{FetchResource, ResourceQuery, UnsafeClone},
|
resource::{FetchResource, ResourceQuery, Resources, UnsafeClone},
|
||||||
system::{ArchetypeAccess, System, SystemId, ThreadLocalExecution},
|
system::{ArchetypeAccess, Commands, System, SystemId, ThreadLocalExecution},
|
||||||
Commands, Resources, TypeAccess,
|
|
||||||
};
|
};
|
||||||
use core::marker::PhantomData;
|
use core::marker::PhantomData;
|
||||||
use hecs::{
|
use hecs::{
|
||||||
@ -406,8 +406,11 @@ where
|
|||||||
|
|
||||||
#[cfg(test)]
|
#[cfg(test)]
|
||||||
mod tests {
|
mod tests {
|
||||||
use super::IntoQuerySystem;
|
use super::{IntoQuerySystem, Query};
|
||||||
use crate::{Query, ResMut, Resources, Schedule};
|
use crate::{
|
||||||
|
resource::{ResMut, Resources},
|
||||||
|
schedule::Schedule,
|
||||||
|
};
|
||||||
use hecs::{Entity, With, World};
|
use hecs::{Entity, With, World};
|
||||||
|
|
||||||
struct A;
|
struct A;
|
11
crates/bevy_ecs/src/system/mod.rs
Normal file
11
crates/bevy_ecs/src/system/mod.rs
Normal file
@ -0,0 +1,11 @@
|
|||||||
|
mod commands;
|
||||||
|
mod into_system;
|
||||||
|
#[cfg(feature = "profiler")]
|
||||||
|
mod profiler;
|
||||||
|
mod system;
|
||||||
|
|
||||||
|
pub use commands::*;
|
||||||
|
pub use into_system::*;
|
||||||
|
#[cfg(feature = "profiler")]
|
||||||
|
pub use profiler::*;
|
||||||
|
pub use system::*;
|
@ -1,6 +1,6 @@
|
|||||||
use crate::{Resources, World};
|
use crate::resource::Resources;
|
||||||
use fixedbitset::FixedBitSet;
|
use fixedbitset::FixedBitSet;
|
||||||
use hecs::{Access, Query};
|
use hecs::{Access, Query, World};
|
||||||
use std::{any::TypeId, borrow::Cow, collections::HashSet};
|
use std::{any::TypeId, borrow::Cow, collections::HashSet};
|
||||||
|
|
||||||
#[derive(Copy, Clone)]
|
#[derive(Copy, Clone)]
|
||||||
@ -100,9 +100,9 @@ impl TypeAccess {
|
|||||||
#[cfg(test)]
|
#[cfg(test)]
|
||||||
mod tests {
|
mod tests {
|
||||||
use super::{ArchetypeAccess, TypeAccess};
|
use super::{ArchetypeAccess, TypeAccess};
|
||||||
use crate::{FetchResource, Res, ResMut, ResourceQuery};
|
|
||||||
use hecs::World;
|
use hecs::World;
|
||||||
use std::any::TypeId;
|
use std::any::TypeId;
|
||||||
|
use crate::resource::{Res, ResourceQuery, ResMut, FetchResource};
|
||||||
|
|
||||||
struct A;
|
struct A;
|
||||||
struct B;
|
struct B;
|
@ -1,4 +1,4 @@
|
|||||||
use crate::{Bundle, Component, DynamicBundle, Entity, World};
|
use hecs::{Bundle, Component, DynamicBundle, Entity, World};
|
||||||
|
|
||||||
pub trait WorldBuilderSource {
|
pub trait WorldBuilderSource {
|
||||||
fn build(&mut self) -> WorldBuilder;
|
fn build(&mut self) -> WorldBuilder;
|
||||||
|
@ -9,7 +9,7 @@ pub mod prelude {
|
|||||||
}
|
}
|
||||||
|
|
||||||
use bevy_app::prelude::*;
|
use bevy_app::prelude::*;
|
||||||
use bevy_ecs::{IntoQuerySystem, System};
|
use bevy_ecs::prelude::*;
|
||||||
use bevy_type_registry::RegisterType;
|
use bevy_type_registry::RegisterType;
|
||||||
use prelude::{Children, LocalTransform, NonUniformScale, Rotation, Scale, Transform, Translation};
|
use prelude::{Children, LocalTransform, NonUniformScale, Rotation, Scale, Transform, Translation};
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
#![allow(dead_code)]
|
#![allow(dead_code)]
|
||||||
use crate::components::*;
|
use crate::components::*;
|
||||||
|
|
||||||
use bevy_ecs::{IntoQuerySystem, Query, System, Without};
|
use bevy_ecs::prelude::*;
|
||||||
use bevy_math::{Mat4, Quat, Vec3};
|
use bevy_math::{Mat4, Quat, Vec3};
|
||||||
|
|
||||||
// TODO: "on changed" for all of these systems
|
// TODO: "on changed" for all of these systems
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
#![allow(dead_code)]
|
#![allow(dead_code)]
|
||||||
use crate::components::*;
|
use crate::components::*;
|
||||||
use bevy_ecs::{Commands, Entity, Query, Without};
|
use bevy_ecs::prelude::*;
|
||||||
|
|
||||||
pub fn transform_propagate_system(
|
pub fn transform_propagate_system(
|
||||||
mut commands: Commands,
|
mut commands: Commands,
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
#![allow(dead_code)]
|
#![allow(dead_code)]
|
||||||
use crate::components::*;
|
use crate::components::*;
|
||||||
|
|
||||||
use bevy_ecs::{IntoQuerySystem, Query, System, Without};
|
use bevy_ecs::prelude::*;
|
||||||
use bevy_math::{Mat4, Quat, Vec3};
|
use bevy_math::{Mat4, Quat, Vec3};
|
||||||
|
|
||||||
// TODO: on changed for all of these systems
|
// TODO: on changed for all of these systems
|
||||||
|
@ -5,7 +5,6 @@ fn main() {
|
|||||||
.add_default_plugins()
|
.add_default_plugins()
|
||||||
.add_startup_system(setup.system())
|
.add_startup_system(setup.system())
|
||||||
.add_system(placement_system.system())
|
.add_system(placement_system.system())
|
||||||
.add_plugin(DiagnosticsPlugin::default())
|
|
||||||
.run();
|
.run();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1,14 +1,9 @@
|
|||||||
pub use crate::{
|
pub use crate::{
|
||||||
app::prelude::*,
|
app::prelude::*,
|
||||||
asset::{AddAsset, AssetEvent, AssetServer, Assets, Handle},
|
asset::prelude::*,
|
||||||
audio::{AudioOutput, AudioSource},
|
audio::prelude::*,
|
||||||
core::{Time, Timer},
|
core::prelude::*,
|
||||||
diagnostic::DiagnosticsPlugin,
|
ecs::prelude::*,
|
||||||
ecs::{
|
|
||||||
Bundle, Commands, Component, Entity, FromResources, IntoForEachSystem, IntoQuerySystem,
|
|
||||||
IntoThreadLocalSystem, Local, Query, Ref, RefMut, Res, ResMut, Resource, Resources, System,
|
|
||||||
World, WorldBuilderSource,
|
|
||||||
},
|
|
||||||
input::{keyboard::KeyCode, mouse::MouseButton, Input},
|
input::{keyboard::KeyCode, mouse::MouseButton, Input},
|
||||||
math::{self, FaceToward, Mat3, Mat4, Quat, Vec2, Vec3, Vec4},
|
math::{self, FaceToward, Mat3, Mat4, Quat, Vec2, Vec3, Vec4},
|
||||||
pbr::{entity::*, light::Light, material::StandardMaterial},
|
pbr::{entity::*, light::Light, material::StandardMaterial},
|
||||||
|
Loading…
Reference in New Issue
Block a user