Enum crates_index_diff::Change
source · pub enum Change {
Added(CrateVersion),
Unyanked(CrateVersion),
AddedAndYanked(CrateVersion),
Yanked(CrateVersion),
CrateDeleted {
name: String,
versions: Vec<CrateVersion>,
},
VersionDeleted(CrateVersion),
}
Expand description
Identify a kind of change that occurred to a crate
Variants§
Added(CrateVersion)
A crate version was added.
Unyanked(CrateVersion)
A crate version was unyanked.
AddedAndYanked(CrateVersion)
A crate version was added in a yanked state.
This can happen if we don’t see the commit that added them, so it appears to pop into existence yanked.
Knowing this should help to trigger the correct action, as simply Yanked
crates would be treated quite differently.
Yanked(CrateVersion)
A crate version was yanked.
CrateDeleted
The name of the crate whose file was deleted, which implies all versions were deleted as well.
Fields
versions: Vec<CrateVersion>
All of its versions that were deleted along with the file.
VersionDeleted(CrateVersion)
A crate version was deleted.
Note that this is equivalent to deleting a line from a crates version file. Should more than one lines be removed per commit, the order of these changes is nondeterministic.
Implementations§
source§impl Change
impl Change
sourcepub fn added(&self) -> Option<&CrateVersion>
pub fn added(&self) -> Option<&CrateVersion>
Return the added crate, if this is this kind of change.
sourcepub fn yanked(&self) -> Option<&CrateVersion>
pub fn yanked(&self) -> Option<&CrateVersion>
Return the yanked crate, if this is this kind of change.
sourcepub fn unyanked(&self) -> Option<&CrateVersion>
pub fn unyanked(&self) -> Option<&CrateVersion>
Return the unyanked crate, if this is this kind of change.
sourcepub fn crate_deleted(&self) -> Option<(&str, &[CrateVersion])>
pub fn crate_deleted(&self) -> Option<(&str, &[CrateVersion])>
Return the deleted crate, if this is this kind of change.
sourcepub fn version_deleted(&self) -> Option<&CrateVersion>
pub fn version_deleted(&self) -> Option<&CrateVersion>
Return the deleted version crate, if this is this kind of change.
sourcepub fn versions(&self) -> &[CrateVersion]
pub fn versions(&self) -> &[CrateVersion]
Returns all versions affected by this change.
The returned slice usually has length 1. However, if a crate was purged from the index by an admin, all versions of the purged crate are returned.
Trait Implementations§
source§impl PartialEq for Change
impl PartialEq for Change
impl Eq for Change
impl StructuralPartialEq for Change
Auto Trait Implementations§
impl Freeze for Change
impl RefUnwindSafe for Change
impl Send for Change
impl Sync for Change
impl Unpin for Change
impl UnwindSafe for Change
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
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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>
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>
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