package task import ( "slices" "strings" ) // debug only. func (t *Task) listChildren() []string { var children []string allTasks.Range(func(child *Task) bool { if child.parent == t { children = append(children, strings.TrimPrefix(child.name, t.name+".")) } return true }) return children } // debug only. func (t *Task) listCallbacks() []string { var callbacks []string t.mu.Lock() defer t.mu.Unlock() for c := range t.callbacks { callbacks = append(callbacks, c.about) } return callbacks } // DebugTaskList returns list of all tasks. // // The returned string is suitable for printing to the console. func DebugTaskList() []string { l := make([]string, 0, allTasks.Size()) allTasks.RangeAll(func(t *Task) { l = append(l, t.name) }) slices.Sort(l) return l }