#[non_exhaustive]pub enum Change {
NodeAdded {
node: String,
filter: String,
},
NodeRemoved {
node: String,
filter: String,
},
NodeReplaced {
node: String,
from: String,
to: String,
},
NodeReconfigured {
node: String,
from_hash: String,
to_hash: String,
},
EdgeAdded {
source: String,
target: String,
},
EdgeRemoved {
source: String,
target: String,
},
ParamChanged {
key: String,
from: Value,
to: Value,
},
ParamAdded {
key: String,
value: Value,
},
ParamRemoved {
key: String,
value: Value,
},
SearchSpaceChanged {
added: Vec<String>,
removed: Vec<String>,
},
CodeChanged {
from_sha: Option<String>,
to_sha: Option<String>,
},
Unspecified {
reason: String,
},
}Expand description
One atomic difference between a parent experiment and its child.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
NodeAdded
A node the parent’s graph did not have.
NodeRemoved
A node the child’s graph no longer has.
NodeReplaced
Same node id, different filter behind it.
Fields
NodeReconfigured
Same filter, different configuration (the node’s config hash moved). The values are not recoverable from a fingerprint — only the fact that they differ.
Fields
EdgeAdded
A data edge only the child’s graph has.
EdgeRemoved
A data edge only the parent’s graph had.
ParamChanged
The same parameter key, set to a different value.
ParamAdded
A parameter only the child sets.
ParamRemoved
A parameter only the parent set.
SearchSpaceChanged
A study’s search space moved (different dimensions searched).
Fields
CodeChanged
The code changed underneath: different git commit.
Fields
Unspecified
There was a move, but the evidence to describe it is gone.
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Change
impl<'de> Deserialize<'de> for Change
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
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 UnsafeUnpin 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
Mutably borrows from an owned value. Read more