Skip to main content

ReleaseChangeKind

Enum ReleaseChangeKind 

Source
pub enum ReleaseChangeKind {
    Unchanged,
    Added,
    Removed,
    LinkChanged,
    LeapOnly,
    MetadataOnly,
    BehaviorPast,
    BehaviorFuture,
    BehaviorPastAndFuture,
    BehaviourUnassessed,
}
Expand description

How one identifier changed between the two releases. Exactly one kind per identifier (precedence is resolved in build_release_diff: presence → link → byte-identity → leap → behaviour).

Variants§

§

Unchanged

Byte-for-byte identical compiled output (or an unchanged link).

§

Added

Present in NEW but not OLD.

§

Removed

Present in OLD but not NEW.

§

LinkChanged

The identifier’s link status or target changed (zone↔link flip, or retargeted link).

§

LeapOnly

Only the leap-second table (leapcnt) differs.

§

MetadataOnly

Bytes differ but zdump behaviour is identical over the whole horizon (footer / version / encoding-only). Requires the oracle to assert.

§

BehaviorPast

Behaviour differs only in the past window (years [lo, split-1]).

§

BehaviorFuture

Behaviour differs only in the future window (years [split, hi]; the split year is future).

§

BehaviorPastAndFuture

Behaviour differs in both the past and future windows.

§

BehaviourUnassessed

Bytes differ but no zdump oracle was available, so behaviour was not assessed (the structural delta is still recorded). An honest “we did not check,” never “no change.”

Implementations§

Source§

impl ReleaseChangeKind

Source

pub const ALL: [ReleaseChangeKind; 10]

Every variant, in stable order — for totality tests and summary tabulation.

Source

pub fn as_str(self) -> &'static str

Stable snake_case label used in both text and JSON.

Trait Implementations§

Source§

impl Clone for ReleaseChangeKind

Source§

fn clone(&self) -> ReleaseChangeKind

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for ReleaseChangeKind

Source§

impl Debug for ReleaseChangeKind

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Eq for ReleaseChangeKind

Source§

impl PartialEq for ReleaseChangeKind

Source§

fn eq(&self, other: &ReleaseChangeKind) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl StructuralPartialEq for ReleaseChangeKind

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.