aboutsummaryrefslogtreecommitdiffstats
path: root/entity/dag/operation.go
diff options
context:
space:
mode:
Diffstat (limited to 'entity/dag/operation.go')
-rw-r--r--entity/dag/operation.go7
1 files changed, 7 insertions, 0 deletions
diff --git a/entity/dag/operation.go b/entity/dag/operation.go
index 1a778878..1b891aeb 100644
--- a/entity/dag/operation.go
+++ b/entity/dag/operation.go
@@ -63,6 +63,13 @@ type Operation interface {
setExtraMetadataImmutable(key string, value string)
}
+type OperationWithApply[SnapT Snapshot] interface {
+ Operation
+
+ // Apply the operation to a Snapshot to create the final state
+ Apply(snapshot SnapT)
+}
+
// OperationWithFiles is an optional extension for an Operation that has files dependency, stored in git.
type OperationWithFiles interface {
// GetFiles return the files needed by this operation