diff --git a/docs/destroying.md b/docs/destroying.md index 4d821a2ee..27cb17106 100644 --- a/docs/destroying.md +++ b/docs/destroying.md @@ -114,6 +114,7 @@ digraph replacement { } a -> a_d; + a -> b_d [style=dotted]; b -> a_d [style=dotted]; b -> b_d; } @@ -158,6 +159,28 @@ While the dependency edge from `B update` to `A destroy` isn't necessary in these examples, it is shown here as an implementation detail which will be mentioned later on. +A final example based on the replacement graph; starting with the above +configuration where `B` depends on `A`. The graph is reduced to an update of +`A` while only destroying `B`. The interesting feature here is the remaining +dependency of `A update` on `B destroy`. We can derive this ordering of +operations from the full replacement example above, by replacing `A create` +with `A update` and removing the unused nodes. + +![Replace All](./images/destroy_then_update.png) + ## Create Before Destroy Currently, the only user-controllable method for changing the ordering of diff --git a/docs/images/destroy_then_update.png b/docs/images/destroy_then_update.png new file mode 100644 index 000000000..f4f3d209c Binary files /dev/null and b/docs/images/destroy_then_update.png differ diff --git a/docs/images/replace_all.png b/docs/images/replace_all.png index 7b8f532d4..54d5ad69a 100644 Binary files a/docs/images/replace_all.png and b/docs/images/replace_all.png differ