Enum git_ref::transaction::Change [−][src]
pub enum Change {
Update {
log: LogChange,
expected: PreviousValue,
new: Target,
},
Delete {
expected: PreviousValue,
log: RefLog,
},
}
Expand description
A description of an edit to perform.
Variants
If previous is not None
, the ref must exist and its oid
must agree with the previous
, and
we function like update
.
Otherwise it functions as create-or-update
.
Fields of Update
log: LogChange
The desired change to the reference log.
expected: PreviousValue
The expected value already present in the reference.
If a ref was existing previously it will be overwritten at MustExistAndMatch(actual_value)
for use after
the transaction was committed successfully.
new: Target
The new state of the reference, either for updating an existing one or creating a new one.
Delete a reference and optionally check if previous
is its content.
Fields of Delete
expected: PreviousValue
The expected value of the reference, with the MustNotExist
variant being invalid.
If a previous ref existed, this value will be filled in automatically as MustExistAndMatch(actual_value)
and
can be accessed if the transaction was committed successfully.
log: RefLog
How to thread the reference log during deletion.
Implementations
Return references to values that are in common between all variants.
Trait Implementations
This method returns an ordering between self
and other
values if one exists. Read more
This method tests less than (for self
and other
) and is used by the <
operator. Read more
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
This method tests greater than (for self
and other
) and is used by the >
operator. Read more
Auto Trait Implementations
impl RefUnwindSafe for Change
impl UnwindSafe for Change
Blanket Implementations
Mutably borrows from an owned value. Read more