Skip to content

Commit

Permalink
Moves intern and label modules into bevy_ecs
Browse files Browse the repository at this point in the history
  • Loading branch information
mnmaita committed Mar 29, 2024
1 parent c223fbb commit 3aea575
Show file tree
Hide file tree
Showing 8 changed files with 24 additions and 19 deletions.
7 changes: 4 additions & 3 deletions crates/bevy_app/src/app.rs
Original file line number Diff line number Diff line change
@@ -1,14 +1,15 @@
use crate::{First, Main, MainSchedulePlugin, Plugin, Plugins, StateTransition};
pub use bevy_derive::AppLabel;
use bevy_ecs::{
intern::Interned,
prelude::*,
schedule::{
common_conditions::run_once as run_once_condition, run_enter_schedule,
InternedScheduleLabel, ScheduleBuildSettings, ScheduleLabel,
},
system::SystemId,
};
use bevy_utils::{intern::Interned, tracing::debug, HashMap, HashSet};
use bevy_utils::{tracing::debug, HashMap, HashSet};
use std::{
fmt::Debug,
panic::{catch_unwind, resume_unwind, AssertUnwindSafe},
Expand All @@ -18,13 +19,13 @@ use thiserror::Error;
#[cfg(feature = "trace")]
use bevy_utils::tracing::info_span;

bevy_utils::define_label!(
bevy_ecs::define_label!(
/// A strongly-typed class of labels used to identify an [`App`].
AppLabel,
APP_LABEL_INTERNER
);

pub use bevy_utils::label::DynEq;
pub use bevy_ecs::label::DynEq;

/// A shorthand for `Interned<dyn AppLabel>`.
pub type InternedAppLabel = Interned<dyn AppLabel>;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ use std::{
sync::{OnceLock, PoisonError, RwLock},
};

use crate::HashSet;
use bevy_utils::HashSet;

/// An interned value. Will stay valid until the end of the program and will not drop.
///
Expand All @@ -26,7 +26,7 @@ use crate::HashSet;
// NOTE: This type must NEVER implement Borrow since it does not obey that trait's invariants.
///
/// ```
/// # use bevy_utils::intern::*;
/// # use bevy_ecs::intern::*;
/// #[derive(PartialEq, Eq, Hash, Debug)]
/// struct Value(i32);
/// impl Internable for Value {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@ where
/// # Example
///
/// ```
/// # use bevy_utils::define_label;
/// # use bevy_ecs::define_label;
/// define_label!(
/// /// Documentation of label trait
/// MyNewLabelTrait,
Expand Down Expand Up @@ -125,7 +125,7 @@ macro_rules! define_label {
/// Feeds this value into the given [`Hasher`].
fn dyn_hash(&self, state: &mut dyn ::std::hash::Hasher);

/// Returns an [`Interned`](bevy_utils::intern::Interned) value corresponding to `self`.
/// Returns an [`Interned`](bevy_ecs::intern::Interned) value corresponding to `self`.
fn intern(&self) -> $crate::intern::Interned<dyn $label_trait_name>
where Self: Sized {
$interner_name.intern(self)
Expand Down
2 changes: 2 additions & 0 deletions crates/bevy_ecs/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@ pub mod component;
pub mod entity;
pub mod event;
pub mod identifier;
pub mod intern;
pub mod label;
pub mod query;
#[cfg(feature = "bevy_reflect")]
pub mod reflect;
Expand Down
14 changes: 8 additions & 6 deletions crates/bevy_ecs/src/schedule/set.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3,14 +3,16 @@ use std::fmt::Debug;
use std::hash::{Hash, Hasher};
use std::marker::PhantomData;

pub use crate::label::DynEq;
pub use bevy_ecs_macros::{ScheduleLabel, SystemSet};
use bevy_utils::define_label;
use bevy_utils::intern::Interned;
pub use bevy_utils::label::DynEq;

use crate::system::{
ExclusiveFunctionSystem, ExclusiveSystemParamFunction, FunctionSystem,
IsExclusiveFunctionSystem, IsFunctionSystem, SystemParamFunction,
use crate::{
define_label,
intern::Interned,
system::{
ExclusiveFunctionSystem, ExclusiveSystemParamFunction, FunctionSystem,
IsExclusiveFunctionSystem, IsFunctionSystem, SystemParamFunction,
},
};

define_label!(
Expand Down
4 changes: 2 additions & 2 deletions crates/bevy_render/src/render_graph/graph.rs
Original file line number Diff line number Diff line change
Expand Up @@ -5,8 +5,8 @@ use crate::{
},
renderer::RenderContext,
};
use bevy_ecs::{prelude::World, system::Resource};
use bevy_utils::{define_label, intern::Interned, HashMap};
use bevy_ecs::{define_label, intern::Interned, prelude::World, system::Resource};
use bevy_utils::HashMap;
use std::fmt::Debug;

use super::{EdgeExistence, InternedRenderLabel, IntoRenderNodeArray};
Expand Down
6 changes: 4 additions & 2 deletions crates/bevy_render/src/render_graph/node.rs
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,14 @@ use crate::{
},
renderer::RenderContext,
};
pub use bevy_ecs::label::DynEq;
use bevy_ecs::{
define_label,
intern::Interned,
query::{QueryItem, QueryState, ReadOnlyQueryData},
world::{FromWorld, World},
};
pub use bevy_utils::label::DynEq;
use bevy_utils::{all_tuples_with_size, define_label, intern::Interned};
use bevy_utils::all_tuples_with_size;
use downcast_rs::{impl_downcast, Downcast};
use std::fmt::Debug;
use thiserror::Error;
Expand Down
2 changes: 0 additions & 2 deletions crates/bevy_utils/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -16,15 +16,13 @@ pub mod prelude {
}

pub mod futures;
pub mod label;
mod short_names;
pub use short_names::get_short_name;
pub mod synccell;
pub mod syncunsafecell;

mod cow_arc;
mod default;
pub mod intern;
mod once;
mod parallel_queue;

Expand Down

0 comments on commit 3aea575

Please sign in to comment.