#[non_exhaustive]pub enum ScheduleBuildWarning {
HierarchyRedundancy(Vec<(NodeId, NodeId)>),
Ambiguity(Vec<(SystemKey, SystemKey, Vec<ComponentId>)>),
}
Expand description
Category of warnings encountered during Schedule::initialize
.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
HierarchyRedundancy(Vec<(NodeId, NodeId)>)
The hierarchy of system sets contains redundant edges.
This warning is enabled by default, but can be disabled by setting
ScheduleBuildSettings::hierarchy_detection
to LogLevel::Ignore
or upgraded to a ScheduleBuildError
by setting it to LogLevel::Error
.
Ambiguity(Vec<(SystemKey, SystemKey, Vec<ComponentId>)>)
Systems with conflicting access have indeterminate run order.
This warning is disabled by default, but can be enabled by setting
ScheduleBuildSettings::ambiguity_detection
to LogLevel::Warn
or upgraded to a ScheduleBuildError
by setting it to LogLevel::Error
.
Implementations§
Source§impl ScheduleBuildWarning
impl ScheduleBuildWarning
Sourcepub fn to_string(&self, graph: &ScheduleGraph, world: &World) -> String
pub fn to_string(&self, graph: &ScheduleGraph, world: &World) -> String
Renders the warning as a human-readable string with node identifiers replaced with their names.
Trait Implementations§
Source§impl Debug for ScheduleBuildWarning
impl Debug for ScheduleBuildWarning
Source§impl Display for ScheduleBuildWarning
impl Display for ScheduleBuildWarning
Source§impl Error for ScheduleBuildWarning
impl Error for ScheduleBuildWarning
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()
Source§impl From<ScheduleBuildWarning> for ScheduleBuildError
impl From<ScheduleBuildWarning> for ScheduleBuildError
Source§fn from(source: ScheduleBuildWarning) -> Self
fn from(source: ScheduleBuildWarning) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for ScheduleBuildWarning
impl RefUnwindSafe for ScheduleBuildWarning
impl Send for ScheduleBuildWarning
impl Sync for ScheduleBuildWarning
impl Unpin for ScheduleBuildWarning
impl UnwindSafe for ScheduleBuildWarning
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Converts
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
, which can then be
downcast
into Box<dyn ConcreteType>
where ConcreteType
implements Trait
.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Converts
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
, which can then be further
downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Converts
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Converts
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s.Source§impl<T> DowncastSend for T
impl<T> DowncastSend for T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoResult<T> for T
impl<T> IntoResult<T> for T
Source§fn into_result(self) -> Result<T, RunSystemError>
fn into_result(self) -> Result<T, RunSystemError>
Converts this type into the system output type.