pub struct ConflictSet { /* private fields */ }Expand description
A single set of package-extra pairs that conflict with one another.
Within each set of conflicts, the resolver should isolate the requirements corresponding to each extra from the requirements of other extras in this set. That is, the resolver should put each set of requirements in a different fork.
A TryFrom<Vec<ConflictItem>> impl may be used to build a set from a
sequence. Note though that at least 2 items are required.
Implementations§
Source§impl ConflictSet
impl ConflictSet
Sourcepub fn pair(item1: ConflictItem, item2: ConflictItem) -> Self
pub fn pair(item1: ConflictItem, item2: ConflictItem) -> Self
Create a pair of items that conflict with one another.
Sourcepub fn iter(&self) -> impl Iterator<Item = &ConflictItem> + Clone + '_
pub fn iter(&self) -> impl Iterator<Item = &ConflictItem> + Clone + '_
Returns an iterator over all conflicting items.
Sourcepub fn contains<'a>(
&self,
package: &PackageName,
kind: impl Into<ConflictKindRef<'a>>,
) -> bool
pub fn contains<'a>( &self, package: &PackageName, kind: impl Into<ConflictKindRef<'a>>, ) -> bool
Returns true if this conflicting item contains the given package and extra name pair.
Sourcepub fn contains_item(&self, conflict_item: &ConflictItem) -> bool
pub fn contains_item(&self, conflict_item: &ConflictItem) -> bool
Returns true if these conflicts contain any set that contains the given
ConflictItem.
Sourcepub fn replaced_item(
&self,
old: &ConflictItem,
new: ConflictItem,
) -> Result<Self, ConflictError>
pub fn replaced_item( &self, old: &ConflictItem, new: ConflictItem, ) -> Result<Self, ConflictError>
Replace an old ConflictItem with a new one.
Trait Implementations§
Source§impl Clone for ConflictSet
impl Clone for ConflictSet
Source§fn clone(&self) -> ConflictSet
fn clone(&self) -> ConflictSet
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ConflictSet
impl Debug for ConflictSet
Source§impl Default for ConflictSet
impl Default for ConflictSet
Source§fn default() -> ConflictSet
fn default() -> ConflictSet
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for ConflictSet
impl<'de> Deserialize<'de> for ConflictSet
Source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl Hash for ConflictSet
impl Hash for ConflictSet
Source§impl PartialEq for ConflictSet
impl PartialEq for ConflictSet
Source§impl TryFrom<Vec<ConflictItem>> for ConflictSet
impl TryFrom<Vec<ConflictItem>> for ConflictSet
Source§type Error = ConflictError
type Error = ConflictError
The type returned in the event of a conversion error.
Source§fn try_from(items: Vec<ConflictItem>) -> Result<Self, ConflictError>
fn try_from(items: Vec<ConflictItem>) -> Result<Self, ConflictError>
Performs the conversion.
impl Eq for ConflictSet
impl StructuralPartialEq for ConflictSet
Auto Trait Implementations§
impl Freeze for ConflictSet
impl RefUnwindSafe for ConflictSet
impl Send for ConflictSet
impl Sync for ConflictSet
impl Unpin for ConflictSet
impl UnwindSafe for ConflictSet
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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 moreSource§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.