55// actionList returns the list of actions in the dag rooted at root
56// as visited in a depth-first post-order traversal.
57▶func actionList(root *Action) []*Action {
58 seen := map[*Action]bool{}
59 all := []*Action{}
· · ·
60▶ var walk func(*Action)
61 walk = func(a *Action) {
62 if seen[a] {
· · ·
61▶ walk = func(a *Action) {
62 if seen[a] {
63 return
· · ·
74
75// Do runs the action graph rooted at root.
76▶func (b *Builder) Do(ctx context.Context, root *Action) {
77 ctx, span := trace.StartSpan(ctx, "exec.Builder.Do ("+root.Mode+" "+root.Target+")")
78 defer span.Done()
· · ·
81 // If we're doing real work, take time at the end to trim the cache.
82 c := cache.Default()
83▶ defer func() {
84 if err := c.Close(); err != nil {
85 base.Fatalf("go: failed to trim cache: %v", err)
+ 141 more matches in this file