pub enum CascadeVerdict {
Safe,
Escapes,
}Expand description
Result of walk_transitive_callers — whether the cascade from a
pub GenericBound caller can be safely rewritten given the in-
workspace call graph.
Variants§
Safe
Every transitive caller in the workspace eventually terminates at a non-pub leaf (or has no callers and is itself non-pub). The GenericBound rewrite can safely commit.
Escapes
At least one transitive caller is a pub fn whose own callers are not visible in the workspace registry — i.e. an external crate may reach it. The GenericBound rewrite must abort for that caller chain to avoid silently breaking the downstream API contract.
Trait Implementations§
Source§impl Clone for CascadeVerdict
impl Clone for CascadeVerdict
Source§fn clone(&self) -> CascadeVerdict
fn clone(&self) -> CascadeVerdict
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreimpl Copy for CascadeVerdict
Source§impl Debug for CascadeVerdict
impl Debug for CascadeVerdict
impl Eq for CascadeVerdict
Source§impl PartialEq for CascadeVerdict
impl PartialEq for CascadeVerdict
impl StructuralPartialEq for CascadeVerdict
Auto Trait Implementations§
impl Freeze for CascadeVerdict
impl RefUnwindSafe for CascadeVerdict
impl Send for CascadeVerdict
impl Sync for CascadeVerdict
impl Unpin for CascadeVerdict
impl UnsafeUnpin for CascadeVerdict
impl UnwindSafe for CascadeVerdict
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more