GraphSplit/print.go

24 lines
555 B
Go

package main
import (
"fmt"
"strings"
)
// PrettyPrintGraph prints the entire graph in a readable format
func PrettyPrintGraph(graph *Graph) {
// Print start split
printSplit(graph.Start, 0)
}
// printSplit prints a split and its dependencies recursively with proper indentation
func printSplit(split *Split, indent int) {
// Print split information
fmt.Printf("%s- %s (%s)\n", strings.Repeat(" ", indent), split.Name, split.State)
// Recursively print dependencies
for _, dep := range split.Dependencies {
printSplit(dep, indent+1)
}
}