pub struct ChangeSet {
pub changes: Vec<SemanticChange>,
pub summary: ChangeSummary,
pub metadata: IndexMap<String, String>,
pub timestamp: DateTime<Utc>,
}
Expand description
Complete set of changes between two DDEX documents
Fields§
§changes: Vec<SemanticChange>
Individual semantic changes
summary: ChangeSummary
Summary statistics
metadata: IndexMap<String, String>
Additional metadata about the diff
timestamp: DateTime<Utc>
Timestamp when diff was performed
Implementations§
Source§impl ChangeSet
impl ChangeSet
Sourcepub fn add_change(&mut self, change: SemanticChange)
pub fn add_change(&mut self, change: SemanticChange)
Add a semantic change to the changeset
Sourcepub fn has_changes(&self) -> bool
pub fn has_changes(&self) -> bool
Check if there are any changes
Sourcepub fn critical_changes(&self) -> Vec<&SemanticChange>
pub fn critical_changes(&self) -> Vec<&SemanticChange>
Get changes by criticality
Sourcepub fn changes_by_type(&self, change_type: ChangeType) -> Vec<&SemanticChange>
pub fn changes_by_type(&self, change_type: ChangeType) -> Vec<&SemanticChange>
Get changes by type
Sourcepub fn impact_level(&self) -> ImpactLevel
pub fn impact_level(&self) -> ImpactLevel
Get overall impact level
Trait Implementations§
Source§impl<'de> Deserialize<'de> for ChangeSet
impl<'de> Deserialize<'de> for ChangeSet
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
Auto Trait Implementations§
impl Freeze for ChangeSet
impl RefUnwindSafe for ChangeSet
impl Send for ChangeSet
impl Sync for ChangeSet
impl Unpin for ChangeSet
impl UnwindSafe for ChangeSet
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